source: PSPA/Interface_Web/trunk/pspaWT/sources/userInterface/include/GWt_elementLigneFaisceau.h @ 455

Last change on this file since 455 was 455, checked in by garnier, 11 years ago

grosse modification pour intégrer les sections

File size: 2.5 KB
Line 
1#ifndef GWt_elementLigneFaisceau_SEEN
2#define GWt_elementLigneFaisceau_SEEN
3
4#include "GWt_abstractElement.h"
5#include "GWt_dropZoneLigneFaisceau.h"
6#include "dataManager.h"
7
8#include <Wt/WContainerWidget>
9
10using namespace Wt;
11
12
13class GWt_elementLigneFaisceau : public WContainerWidget
14{
15    public :
16    /**
17     dropZone element
18     a drop zone is the basic element for a widget in the ligne faisceau drop zone area
19     it should be like this :
20     
21     +----------+--------+---------+
22     |   (--->) |  ELEM  | (-----) |
23     +----------+--------+---------+
24     |             NAME            |
25     +----------+--------+---------+
26     ELEM : Element representation, draggable object
27     (----) and (---->) : Droppable zone, contain arrows or line if this element is connected to another
28     NAME : editable element name
29     
30     At first time, the ELEM element is replace by a message.
31     */
32   
33    GWt_elementLigneFaisceau(dataManager*,GWt_ligneFaisceau*, abstractElement* abstractElem);
34   
35    ~GWt_elementLigneFaisceau();
36    void addElement(GWt_abstractElement* elem);
37   
38    inline WText* getElementName() {
39        return elementLabel_;
40    }
41   
42    inline WText* getElementIcon() {
43        return elementLabel_;
44    }
45   
46    void setElementLabel(std::string label);
47
48 
49    inline GWt_dropZoneLigneFaisceau* getDropZoneLeft() {
50        return dropZoneLeft_;
51    }
52
53    inline GWt_dropZoneLigneFaisceau* getDropZoneRight() {
54        return dropZoneRight_;
55    }
56
57    inline GWt_abstractElement* getGWt_AbstractElement() {
58        return GWt_abstractElement_deprecated_;
59    }
60    inline void setSoftwareName(std::string name) {
61        softwareName_ =new WText(name);
62    }
63
64private:
65   
66    void removeDone(GWt_abstractElement*);
67    std::string getElementNumberInBeamLine(nomdElements el);
68    void initialize_ligneFaisceau(GWt_ligneFaisceau* ligne, abstractElement* abstractElem);
69    void mouseWentOut();
70    void mouseWentOver();
71  /**
72   Update the software of this element according to the sectionToExecute software. Will change the color of this object
73   */
74  void updateSoftware();
75    void setBGColor(const WColor);
76    GWt_dialog* messageDropZone_;
77    WText* firstTimeInsertMessage_;
78   
79    GWt_dropZoneLigneFaisceau* dropZoneLeft_;
80    GWt_dropZoneLigneFaisceau* dropZoneRight_;
81    WText* elementLabel_;
82    dataManager* dataManager_;
83    GWt_abstractElement* GWt_abstractElement_deprecated_;
84    WContainerWidget* elementContainer_;
85    WText* actionParameters_;
86    WText* actionTrash_;
87    WText* softwareName_;
88};
89#endif
Note: See TracBrowser for help on using the repository browser.