#include #include #include "GWt_abstractElement.h" #include "GWt_rfgun.h" #include "GWt_drift.h" #include "GWt_cell.h" #include "GWt_bend.h" #include "GWt_soleno.h" #include "GWt_beam.h" #include "mixedTools.h" #include "nomdElements.h" #include GWt_abstractElement::GWt_abstractElement(PspaApplication* ps,abstractElement* elem) { pspa_ = ps; element_ = elem; dropped_ = new WPushButton(); dropped_->setObjectName("aPushButton"); dropped_->setIcon(element_->getName().getElementImage()); dropped_->setMaximumSize(50,37); dropped_->clicked().connect(this,&GWt_abstractElement::clicked); wc_ = new WContainerWidget(); wc_->setObjectName("aContainer"); wc_->addWidget(dropped_); WBreak *bk= new WBreak(); bk->setObjectName("aBreak"); wc_->addWidget(bk); //wc_->addWidget(new WBreak()); } void GWt_abstractElement::updateLabelWidget() { string str = element_->getLabel(); WText *item = new WText(str); item->setObjectName("aText"); wc_->addWidget(item); } void GWt_abstractElement::clicked() { cout << "mouse key was clicked on this widget" << endl; dialog_->show(); } WPushButton* GWt_abstractElement::getButton() { return dropped_; } WContainerWidget* GWt_abstractElement::getWidget() { return wc_; } abstractElement* GWt_abstractElement::getElement() { return element_; } GWt_abstractElement* GWt_abstractElement::ajoute(PspaApplication* ps,abstractElement* ptr) { typedElement eType = ptr->getName().getElementType(); switch ( eType ) { case RFgun : return new GWt_rfgun(ps,ptr); case drift : return new GWt_drift(ps,ptr); case cell : return new GWt_cell(ps,ptr); case bend : return new GWt_bend(ps,ptr); case soleno : return new GWt_soleno(ps,ptr); case beam : return new GWt_beam(ps,ptr); case inconnu : return NULL; default : return NULL; } }