#ifndef GWt_elementLigneFaisceau_SEEN #define GWt_elementLigneFaisceau_SEEN #include "GWt_abstractElement.h" #include "GWt_dropZoneLigneFaisceau.h" #include "dataManager.h" #include using namespace Wt; class GWt_elementLigneFaisceau : public WContainerWidget { public : /** dropZone element a drop zone is the basic element for a widget in the ligne faisceau drop zone area it should be like this : +----------+--------+---------+ | (--->) | ELEM | (-----) | +----------+--------+---------+ | NAME | +----------+--------+---------+ ELEM : Element representation, draggable object (----) and (---->) : Droppable zone, contain arrows or line if this element is connected to another NAME : editable element name At first time, the ELEM element is replace by a message. */ GWt_elementLigneFaisceau(dataManager*,GWt_ligneFaisceau*, abstractElement* abstractElem, std::string); ~GWt_elementLigneFaisceau(); inline WText* getElementName() { return elementLabel_; } inline WText* getElementIcon() { return elementLabel_; } void setElementLabel(std::string label); inline GWt_dropZoneLigneFaisceau* getDropZoneLeft() { return dropZoneLeft_; } inline GWt_dropZoneLigneFaisceau* getDropZoneRight() { return dropZoneRight_; } inline GWt_abstractElement* getGWt_AbstractElement() { return GWt_abstractElement_deprecated_; } inline void setSoftwareName(std::string name) { softwareName_ =new WText(name); } /** Set the background color for this element */ void setBGColor(const WColor); private: void removeDone(GWt_abstractElement*); std::string getElementNumberInBeamLine(nomdElements el); void initialize_ligneFaisceau(GWt_ligneFaisceau* ligne, abstractElement* abstractElem, std::string); void mouseWentOut(); void mouseWentOver(); GWt_dialog* messageDropZone_; WText* firstTimeInsertMessage_; GWt_dropZoneLigneFaisceau* dropZoneLeft_; GWt_dropZoneLigneFaisceau* dropZoneRight_; WText* elementLabel_; dataManager* dataManager_; GWt_abstractElement* GWt_abstractElement_deprecated_; WContainerWidget* elementContainer_; WText* actionParameters_; WText* actionTrash_; WText* softwareName_; }; #endif