Changeset 125 in PSPA for Interface_Web/trunk/pspaWT
- Timestamp:
- Dec 3, 2012, 5:53:45 PM (12 years ago)
- Location:
- Interface_Web/trunk/pspaWT/src
- Files:
-
- 1 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
Interface_Web/trunk/pspaWT/src/GWt_LigneFaisceau.cc
r118 r125 19 19 setLayout(beamLayout_); 20 20 21 int k; 22 for(k = 0; k < nElements; k++) nObjets_[k]= new Compteur(); 21 nomdElements e; 22 int nElements= e.getNumberOfElements(); 23 nObjets_= new Compteur[nElements]; 24 //int k; 25 //for(k = 0; k < nElements; k++) nObjets_[k]= new Compteur(); 23 26 24 27 acceptDrops("icons/beam.jpg"); … … 30 33 } 31 34 32 33 string GWt_LigneFaisceau::createLabel(abstractElement* elem, int n) 35 // string GWt_LigneFaisceau::createLabel(abstractElement* elem, int n) 36 // { 37 // string str; 38 // if(n < 10) { 39 // str= elem->getNameOfElement()+"0"+mixedTools::intToString(n); 40 // } else { 41 // str= elem->getNameOfElement()+mixedTools::intToString(n); 42 // } 43 // return str; 44 // } 45 46 string GWt_LigneFaisceau::createLabel(nomdElements el,int n) 34 47 { 35 48 string str; 36 49 if(n < 10) { 37 str= el em->getNameOfElement()+"0"+mixedTools::intToString(n);50 str= el.getElementLabel()+"0"+mixedTools::intToString(n); 38 51 } else { 39 str= el em->getNameOfElement()+mixedTools::intToString(n);52 str= el.getElementLabel()+mixedTools::intToString(n); 40 53 } 41 54 return str; … … 44 57 void GWt_LigneFaisceau::dropEvent(WDropEvent evt) 45 58 { 46 WContainerWidget* wc = NULL; 47 if ( strstr(evt.mimeType().c_str() , "drift") ) 48 { 49 pspa_->addConsoleMessage("DRIFT"); 50 abstractElement* newDrift = pspa_->getDataManager()->addElement(drift); 51 GWt_drift* gdrift = new GWt_drift(pspa_,newDrift, evt.mimeType()); 52 newDrift->setLabel( createLabel( newDrift, nObjets_[drift]->incr() )); 53 gdrift->updateLabelWidget(); 54 wc= gdrift->getWidget(); 55 // pspa_->updateSelections(); 56 } 57 else if ( strstr(evt.mimeType().c_str() , "beam") ) 58 { 59 pspa_->addConsoleMessage("INITIAL_BEAM"); 60 abstractElement* newInitialBeam = pspa_->getDataManager()->addElement(initialBeam); 61 GWt_initialBeam* gwInitialBeam = new GWt_initialBeam(pspa_,newInitialBeam, evt.mimeType()); 62 newInitialBeam->setLabel( createLabel( newInitialBeam, nObjets_[initialBeam]->incr() ) ); 63 gwInitialBeam->updateLabelWidget(); 64 wc= gwInitialBeam->getWidget(); 65 // pspa_->updateSelections(); 66 } 67 else if ( strstr(evt.mimeType().c_str() , "cell") ) 68 { 69 pspa_->addConsoleMessage("CELL"); 70 abstractElement* newCell = pspa_->getDataManager()->addElement(cell); 71 GWt_cell* gwCell = new GWt_cell(pspa_,newCell, evt.mimeType()); 72 newCell->setLabel( createLabel( newCell, nObjets_[cell]->incr() ) ); 73 gwCell->updateLabelWidget(); 74 wc= gwCell->getWidget(); 75 // pspa_->updateSelections(); 76 } 77 else if ( strstr(evt.mimeType().c_str() , "lens") ) 78 { 79 pspa_->addConsoleMessage("SOLENOID"); 80 abstractElement* newSoleno = pspa_->getDataManager()->addElement(soleno); 81 GWt_soleno* gwSoleno = new GWt_soleno(pspa_,newSoleno, evt.mimeType()); 82 newSoleno->setLabel( createLabel( newSoleno, nObjets_[soleno]->incr() ) ); 83 gwSoleno->updateLabelWidget(); 84 wc= gwSoleno->getWidget(); 85 // pspa_->updateSelections(); 86 } 87 else if ( strstr(evt.mimeType().c_str() , "bend") ) 88 { 89 pspa_->addConsoleMessage("BENDING MAGNET"); 90 abstractElement* newBend = pspa_->getDataManager()->addElement(bend); 91 GWt_bend* gwBend = new GWt_bend(pspa_,newBend, evt.mimeType()); 92 newBend->setLabel( createLabel( newBend, nObjets_[bend]->incr() ) ); 93 gwBend->updateLabelWidget(); 94 wc= gwBend->getWidget(); 95 // pspa_->updateSelections(); 96 } 97 else 98 { 99 pspa_->addConsoleMessage(" unable to guess the element to create "); 100 return; 101 } 102 59 nomdElements e(evt.mimeType()); 60 typedElement eType = e.getElementType(); 61 cout << "GWt_LigneFaisceau::dropEvent " << evt.mimeType() << " " << eType << endl; 62 if(eType == inconnu) { 63 cout << "GWt_LigneFaisceau::element type " << eType << " inconnu " << endl; 64 return; 65 } 66 67 pspa_->addConsoleMessage(e.getElementName()); 68 abstractElement* ptr = pspa_->getDataManager()->addElement(eType); 69 ptr->setLabel(createLabel(e,nObjets_[eType].incr())); 70 GWt_abstractElement* gw = GWt_abstractElement::ajoute(pspa_,ptr,evt.mimeType()); 71 if(gw == NULL) return; 72 73 WContainerWidget* wc = NULL; 74 gw->updateLabelWidget(); 75 wc= gw->getWidget(); 103 76 beamLayout_->addWidget(wc); 104 pspa_->updateSelections(); 77 pspa_->updateSelections(); 78 79 ////////////////////////////////////////////////////////////////// 105 80 106 81 // pourVoir … … 113 88 cout << "GWt_LigneFaisceau:: " << label << " dans la liste" << endl; 114 89 } 115 116 } 117 90 91 } 92 93 /* 94 void GWt_LigneFaisceau::dropEvent(WDropEvent evt) 95 { 96 WContainerWidget* wc = NULL; 97 nomdElements e(evt.mimeType()); 98 cout << "GWt_LigneFaisceau::dropEvent " << evt.mimeType() << " " << e.getElementName() << endl; 99 100 if ( strstr(evt.mimeType().c_str() , "drift") ) 101 { 102 pspa_->addConsoleMessage("DRIFT"); 103 abstractElement* newDrift = pspa_->getDataManager()->addElement(drift); 104 GWt_drift* gdrift = new GWt_drift(pspa_,newDrift, evt.mimeType()); 105 newDrift->setLabel( createLabel( newDrift, nObjets_[drift].incr() )); 106 gdrift->updateLabelWidget(); 107 wc= gdrift->getWidget(); 108 // pspa_->updateSelections(); 109 } 110 else if ( strstr(evt.mimeType().c_str() , "beam") ) 111 { 112 pspa_->addConsoleMessage("INITIAL_BEAM"); 113 abstractElement* newInitialBeam = pspa_->getDataManager()->addElement(initialBeam); 114 GWt_initialBeam* gwInitialBeam = new GWt_initialBeam(pspa_,newInitialBeam, evt.mimeType()); 115 newInitialBeam->setLabel( createLabel( newInitialBeam, nObjets_[initialBeam].incr() ) ); 116 gwInitialBeam->updateLabelWidget(); 117 wc= gwInitialBeam->getWidget(); 118 // pspa_->updateSelections(); 119 } 120 else if ( strstr(evt.mimeType().c_str() , "cell") ) 121 { 122 pspa_->addConsoleMessage("CELL"); 123 abstractElement* newCell = pspa_->getDataManager()->addElement(cell); 124 GWt_cell* gwCell = new GWt_cell(pspa_,newCell, evt.mimeType()); 125 newCell->setLabel( createLabel( newCell, nObjets_[cell].incr() ) ); 126 gwCell->updateLabelWidget(); 127 wc= gwCell->getWidget(); 128 // pspa_->updateSelections(); 129 } 130 else if ( strstr(evt.mimeType().c_str() , "lens") ) 131 { 132 pspa_->addConsoleMessage("SOLENOID"); 133 abstractElement* newSoleno = pspa_->getDataManager()->addElement(soleno); 134 GWt_soleno* gwSoleno = new GWt_soleno(pspa_,newSoleno, evt.mimeType()); 135 newSoleno->setLabel( createLabel( newSoleno, nObjets_[soleno].incr() ) ); 136 gwSoleno->updateLabelWidget(); 137 wc= gwSoleno->getWidget(); 138 // pspa_->updateSelections(); 139 } 140 else if ( strstr(evt.mimeType().c_str() , "bend") ) 141 { 142 pspa_->addConsoleMessage("BENDING MAGNET"); 143 abstractElement* newBend = pspa_->getDataManager()->addElement(bend); 144 GWt_bend* gwBend = new GWt_bend(pspa_,newBend, evt.mimeType()); 145 newBend->setLabel( createLabel( newBend, nObjets_[bend].incr() ) ); 146 gwBend->updateLabelWidget(); 147 wc= gwBend->getWidget(); 148 // pspa_->updateSelections(); 149 } 150 else 151 { 152 pspa_->addConsoleMessage(" unable to guess the element to create "); 153 return; 154 } 155 156 beamLayout_->addWidget(wc); 157 pspa_->updateSelections(); 158 159 // pourVoir 160 int nElts= pspa_->getDataManager()->beamLineSize(); 161 cout << "GWt_LigneFaisceau:: nElts= " << nElts << endl; 162 unsigned int k; 163 for(k = 0; k < (unsigned)nElts; k++) { 164 abstractElement* ptr= pspa_->getDataManager()->getCollection()->getElementPointer(k); 165 string label= ptr->getLabel(); 166 cout << "GWt_LigneFaisceau:: " << label << " dans la liste" << endl; 167 } 168 169 } 170 ****** */ 171 118 172 void GWt_LigneFaisceau::restoreElementCollection() 119 173 { 120 174 beamLayout_->clear(); 175 176 //for(k = 0; k < nElements; k++) delete nObjets_[k]; 177 //for(k = 0; k < nElements; k++) nObjets_[k]= new Compteur(); 178 179 delete[] nObjets_; 180 nomdElements ee; 181 int nElements= ee.getNumberOfElements(); 182 nObjets_= new Compteur[nElements]; 183 184 int nbElem = pspa_->getDataManager()->beamLineSize(); 121 185 unsigned int k; 122 for(k = 0; k < nElements; k++) delete nObjets_[k]; 123 for(k = 0; k < nElements; k++) nObjets_[k]= new Compteur(); 124 int nbElem = pspa_->getDataManager()->beamLineSize(); 125 126 for(k = 0; k < (unsigned)nbElem; k++) { 127 abstractElement* ptr = pspa_->getDataManager()->getCollection()->getElementPointer(k); 128 nomdElement nom = ptr->getName(); 129 switch (nom) { 130 case initialBeam : 131 { 132 GWt_initialBeam* gw = new GWt_initialBeam(pspa_,ptr,string("icons/beam.jpg")); 133 // gw->setLabel(nObjets_[initialBeam]->incr()); 134 gw->updateLabelWidget(); 135 nObjets_[initialBeam]->incr(); 136 beamLayout_->addWidget(gw->getWidget()); 137 break; 186 for(k = 0; k < (unsigned)nbElem; k++) 187 { 188 abstractElement* ptr = pspa_->getDataManager()->getCollection()->getElementPointer(k); 189 typedElement eType= ptr->getName(); 190 nomdElements e(eType); 191 192 GWt_abstractElement* gw = GWt_abstractElement::ajoute(pspa_,ptr,e.getElementImage()); 193 if(gw == NULL) { 194 cerr << "GWt_LigneFaisceau::restaure element type " << eType << " inconnu " << endl; 138 195 } 139 case drift : 140 { 141 GWt_drift* gw = new GWt_drift(pspa_,ptr,string("icons/drift.jpg")); 142 // gw->setLabel( nObjets_[drift]->incr()); 143 gw->updateLabelWidget(); 144 nObjets_[drift]->incr(); 145 beamLayout_->addWidget(gw->getWidget()); 146 break; 147 } 148 case cell : 149 { 150 GWt_cell* gw = new GWt_cell(pspa_,ptr,string("icons/cell.jpg")); 151 // gw->setLabel(nObjets_[cell]->incr()); 152 gw->updateLabelWidget(); 153 nObjets_[cell]->incr(); 154 beamLayout_->addWidget(gw->getWidget()); 155 break; 156 } 157 case soleno : 158 { 159 GWt_soleno* gw = new GWt_soleno(pspa_,ptr,string("icons/lens.jpg")); 160 // gw->setLabel(nObjets_[soleno]->incr()); 161 gw->updateLabelWidget(); 162 nObjets_[soleno]->incr(); 163 beamLayout_->addWidget(gw->getWidget()); 164 break; 165 } 166 case bend : 167 { 168 GWt_bend* gw = new GWt_bend(pspa_,ptr,string("icons/bend.jpg")); 169 // gw->setLabel(nObjets_[bend]->incr()); 170 gw->updateLabelWidget(); 171 nObjets_[bend]->incr(); 172 beamLayout_->addWidget(gw->getWidget()); 173 break; 174 } 175 default : 176 { 177 cerr << "GWt_LigneFaisceau::restaure element type " << nom << " inconnu " << endl; 178 break; 179 } 180 } 181 } 196 197 gw->updateLabelWidget(); 198 nObjets_[eType].incr(); 199 beamLayout_->addWidget(gw->getWidget()); 200 } 201 182 202 pspa_->updateSelections(); 183 184 } 203 } -
Interface_Web/trunk/pspaWT/src/GWt_abstractElement.cc
r118 r125 1 1 2 2 #include "GWt_abstractElement.h" 3 #include "GWt_initialBeam.h" 4 #include "GWt_drift.h" 5 #include "GWt_cell.h" 6 #include "GWt_bend.h" 7 #include "GWt_soleno.h" 8 9 #include "mixedTools.h" 10 #include "nomdElements.h" 11 3 12 #include <Wt/WText> 4 13 5 14 GWt_abstractElement::GWt_abstractElement(PspaApplication* ps,abstractElement* elem,string image) 6 15 { 16 cout << "GWt_abstractElement::GWt_abstractElement()" << endl; 7 17 8 18 pspa_ = ps; 9 // pspa_->updateSelections();10 19 11 20 element_ = elem; … … 68 77 return wc_; 69 78 } 79 80 GWt_abstractElement* GWt_abstractElement::ajoute(PspaApplication* ps,abstractElement* ptr,const string& type) 81 { 82 nomdElements e(type); 83 typedElement eType = e.getElementType(); 84 if(eType == inconnu) return NULL; 85 86 if(eType == initialBeam) return new GWt_initialBeam(ps,ptr,type); 87 if(eType == drift) return new GWt_drift(ps,ptr,type); 88 if(eType == cell) return new GWt_cell(ps,ptr,type); 89 if(eType == bend) return new GWt_bend(ps,ptr,type); 90 if(eType == soleno) return new GWt_soleno(ps,ptr,type); 91 } 92 -
Interface_Web/trunk/pspaWT/src/abstractElement.cc
r114 r125 63 63 } 64 64 65 nomdElement abstractElement::getName() const65 typedElement abstractElement::getName() const 66 66 { 67 67 return elementName_; -
Interface_Web/trunk/pspaWT/src/dataManager.cc
r118 r125 5 5 #include <fstream> 6 6 7 abstractElement* dataManager::addElement( nomdElement elemType)7 abstractElement* dataManager::addElement(typedElement elemType) 8 8 { 9 9 return elementsGallery_.addElement(elemType); … … 442 442 443 443 elementsGallery_.raz(); 444 nomdElement elem;444 typedElement elem; 445 445 while (infile >> ielem) { 446 elem = ( nomdElement)ielem;446 elem = (typedElement)ielem; 447 447 abstractElement* nouveau = addElement(elem); 448 448 nouveau->FileInput(infile); -
Interface_Web/trunk/pspaWT/src/elementsCollection.cc
r118 r125 30 30 } 31 31 32 abstractElement* elementsCollection::addElement( nomdElement elemType)32 abstractElement* elementsCollection::addElement(typedElement elemType) 33 33 { 34 34 switch ( elemType )
Note: See TracChangeset
for help on using the changeset viewer.