Changeset 359 in PSPA for Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_elementLigneFaisceau.cc
- Timestamp:
- Mar 4, 2013, 6:08:02 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_elementLigneFaisceau.cc
r347 r359 28 28 29 29 GWt_elementLigneFaisceau::GWt_elementLigneFaisceau(PspaApplication* pspa) 30 31 32 33 34 35 36 37 { 38 initialize_ligneFaisceau(inconnu);30 : WContainerWidget(), 31 firstTimeInsertMessage_(NULL), 32 dropZoneLeft_(NULL), 33 dropZoneRight_(NULL), 34 GWt_abstractElement_(NULL), 35 elementLabel_(NULL), 36 pspa_(pspa) 37 { 38 initialize_ligneFaisceau(inconnu); 39 39 } 40 40 41 41 42 42 GWt_elementLigneFaisceau::GWt_elementLigneFaisceau(typedElement type, PspaApplication* pspa) 43 44 45 46 47 48 49 50 { 51 // set the css name52 setObjectName("elementLigneFaisceau");53 initialize_ligneFaisceau(type);43 : WContainerWidget(), 44 firstTimeInsertMessage_(NULL), 45 dropZoneLeft_(NULL), 46 dropZoneRight_(NULL), 47 GWt_abstractElement_(NULL), 48 elementLabel_(NULL), 49 pspa_(pspa) 50 { 51 // set the css name 52 setObjectName("elementLigneFaisceau"); 53 initialize_ligneFaisceau(type); 54 54 } 55 55 … … 57 57 { 58 58 59 cout<<"new GWt_elementLigneFaisceau : "<< this << endl; 60 61 // set layout 62 // +----------+--------+---------+ 63 // | (--->) | ELEM | (-----) | 64 // +----------+--------+---------+ 65 // | NAME | 66 // +----------+--------+---------+ 67 68 69 WGridLayout *gridLayout = new WGridLayout(); 70 71 gridLayout->setContentsMargins(0,0,0,0); 72 gridLayout->setHorizontalSpacing(0); 73 gridLayout->setVerticalSpacing(0); 74 75 // add first line : initialize arrow and link images 76 dropZoneLeft_ = new GWt_dropZoneLigneFaisceau(pspa_); 77 dropZoneRight_ = new GWt_dropZoneLigneFaisceau(pspa_); 78 79 // change object name in order to manage css : 80 dropZoneLeft_->resize(10,30); 81 dropZoneRight_->resize(10,30); 82 83 gridLayout->addWidget (dropZoneLeft_,0,0); 84 gridLayout->addWidget (dropZoneRight_,0,2); 59 cout<<"new GWt_elementLigneFaisceau : "<< this << endl; 60 61 // set layout 62 // +----------+--------+---------+ 63 // | (--->) | ELEM | (-----) | 64 // +----------+--------+---------+ 65 66 67 WGridLayout *gridLayout = new WGridLayout(); 68 69 gridLayout->setContentsMargins(0,0,0,0); 70 gridLayout->setHorizontalSpacing(0); 71 gridLayout->setVerticalSpacing(0); 85 72 86 73 // add first line : initialize arrow and link images … … 95 82 gridLayout->addWidget (dropZoneRight_,0,2); 96 83 84 // add first line : initialize arrow and link images 85 dropZoneLeft_ = new GWt_dropZoneLigneFaisceau(pspa_); 86 dropZoneRight_ = new GWt_dropZoneLigneFaisceau(pspa_); 87 88 // change object name in order to manage css : 89 dropZoneLeft_->resize(10,30); 90 dropZoneRight_->resize(10,30); 91 92 gridLayout->addWidget (dropZoneLeft_,0,0); 93 gridLayout->addWidget (dropZoneRight_,0,2); 94 97 95 // add the image if present 98 96 … … 122 120 GWt_abstractElement_ = NULL; 123 121 } 122 123 elementContainer_ = new WContainerWidget(); 124 WVBoxLayout* vLayoutElementContainer = new WVBoxLayout(); 125 126 elementContainer_->setStyleClass("beamLineIcon"); 127 elementContainer_->setLayout(vLayoutElementContainer); 128 129 130 124 131 if (GWt_abstractElement_ != NULL) { 125 gridLayout->addWidget (GWt_abstractElement_,0,1);132 vLayoutElementContainer->addWidget(GWt_abstractElement_); 126 133 GWt_abstractElement_->setMaximumSize(80,80); 127 134 GWt_abstractElement_->setMinimumSize(80,80); 128 135 } 129 136 130 // add second line131 132 137 if (GWt_abstractElement_ == NULL) { 133 elementLabel_ = new WText();138 elementLabel_ = new WText(); 134 139 } else { 135 elementLabel_ = new WText(GWt_abstractElement_->getAbstractElement()->getLabel()); 136 } 137 138 gridLayout->addWidget(elementLabel_,1,0,1,3,Wt::AlignCenter |Wt::AlignMiddle); 140 elementLabel_ = new WText(GWt_abstractElement_->getAbstractElement()->getLabel()); 141 } 142 143 vLayoutElementContainer->addWidget(elementLabel_,Wt::AlignCenter |Wt::AlignMiddle); 144 // gridLayout->addWidget(elementLabel_,1,0,1,3,Wt::AlignCenter |Wt::AlignMiddle); 145 146 // Add Actions 147 WContainerWidget* actions = new WContainerWidget(); 148 WVBoxLayout* vLayoutActions = new WVBoxLayout(); 149 actions->setLayout(vLayoutActions); 150 151 WText* actionParameters = new WText(" "); 152 WText* actionSoftware = new WText("Software"); 153 154 // Set class for actions elements 155 actionParameters->setStyleClass("Button WhiteButton ContrastButton parameters"); 156 actionParameters->setMaximumSize(32,32); 157 actionParameters->setMinimumSize(32,32); 158 159 actionSoftware->setStyleClass("Button WhiteButton ContrastButton software"); 160 actionParameters->setPositionScheme(Wt::Static); 161 162 // Set the global action class 163 actions->setStyleClass("beamLineElementActions"); 164 actions->setPositionScheme(Wt::Static); 165 actions->setOffsets(0); 166 167 vLayoutActions->addWidget(actionParameters); 168 vLayoutActions->addWidget(actionSoftware); 169 vLayoutElementContainer->addWidget(actions); 170 171 gridLayout->addWidget (elementContainer_,0,1); 139 172 140 173 gridLayout->setColumnStretch (0,1); … … 143 176 // set layout 144 177 setLayout(gridLayout); 178 145 179 } 146 180 … … 151 185 152 186 void GWt_elementLigneFaisceau::setBGColor(const WColor c) { 153 decorationStyle().setBackgroundColor (c);187 elementContainer_->decorationStyle().setBackgroundColor (c); 154 188 } 155 189 … … 157 191 void GWt_elementLigneFaisceau::removeDone(GWt_abstractElement* gw) 158 192 { 159 if (messageDropZone_->result() == WDialog::Accepted) {160 // FIXME161 // removeDropZone();162 }193 if (messageDropZone_->result() == WDialog::Accepted) { 194 // FIXME 195 // removeDropZone(); 196 } 163 197 } 164 198 165 199 166 200 void GWt_elementLigneFaisceau::addElement(GWt_abstractElement* elem) 167 { 168 clear();169 GWt_abstractElement_ = elem;170 addWidget(GWt_abstractElement_);171 if (static_cast <WContainerWidget*> (parent())) {172 WContainerWidget* wc = static_cast <WContainerWidget*> (parent());173 WBoxLayout* layout = ((WBoxLayout*)(wc->layout()));174 layout->setStretchFactor(this,0);175 }176 177 178 firstTimeInsertMessage_ = NULL;201 { 202 clear(); 203 GWt_abstractElement_ = elem; 204 addWidget(GWt_abstractElement_); 205 if (static_cast <WContainerWidget*> (parent())) { 206 WContainerWidget* wc = static_cast <WContainerWidget*> (parent()); 207 WBoxLayout* layout = ((WBoxLayout*)(wc->layout())); 208 layout->setStretchFactor(this,0); 209 } 210 211 212 firstTimeInsertMessage_ = NULL; 179 213 dropZoneLeft_ = NULL; 180 214 } … … 182 216 183 217 std::string GWt_elementLigneFaisceau::getElementNumberInBeamLine(nomdElements elem){ 184 string str = "";218 string str = ""; 185 219 186 220 if (static_cast <WContainerWidget*> (parent())) { … … 223 257 224 258 void GWt_elementLigneFaisceau::setElementLabel(std::string label) { 225 if (elementLabel_) { 226 elementLabel_->setText(label); 227 } 228 } 259 if (elementLabel_) { 260 elementLabel_->setText(label.substr(0,10)); 261 elementLabel_->setToolTip(label); 262 } 263 }
Note: See TracChangeset
for help on using the changeset viewer.