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

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

Renommage de GWt_LigneFaisceau en GWt_ligneFaisceau dans tout les fichiers pour plus de cohérence

File size: 2.4 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 "GWt_pspaApplication.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(PspaApplication*,GWt_ligneFaisceau*);
34    GWt_elementLigneFaisceau(nomdElements::typedElement,PspaApplication*,GWt_ligneFaisceau*);
35   
36    ~GWt_elementLigneFaisceau();
37    void addElement(GWt_abstractElement* elem);
38   
39    inline WText* getElementName() {
40        return elementLabel_;
41    }
42   
43    inline WText* getElementIcon() {
44        return elementLabel_;
45    }
46   
47    void setElementLabel(std::string label);
48    void update();
49   
50    inline GWt_dropZoneLigneFaisceau* getDropZoneLeft() {
51        return dropZoneLeft_;
52    }
53
54    inline GWt_dropZoneLigneFaisceau* getDropZoneRight() {
55        return dropZoneRight_;
56    }
57
58    inline GWt_abstractElement* getGWt_AbstractElement() {
59        return GWt_abstractElement_;
60    }
61    inline void setSoftwareName(std::string name) {
62        softwareName_ =new WText(name);
63    }
64
65private:
66   
67    void removeDone(GWt_abstractElement*);
68    std::string getElementNumberInBeamLine(nomdElements el);
69    void initialize_ligneFaisceau(nomdElements::typedElement eType,GWt_ligneFaisceau* ligne);
70    void mouseWentOut();
71    void mouseWentOver();
72    void setBGColor(const WColor);
73    GWt_dialog* messageDropZone_;
74    WText* firstTimeInsertMessage_;
75   
76    GWt_dropZoneLigneFaisceau* dropZoneLeft_;
77    GWt_dropZoneLigneFaisceau* dropZoneRight_;
78    WText* elementLabel_;
79    PspaApplication* pspa_;
80    GWt_abstractElement* GWt_abstractElement_;
81    WContainerWidget* elementContainer_;
82    WText* actionParameters_;
83    WText* actionTrash_;
84    WText* softwareName_;
85};
86#endif
Note: See TracBrowser for help on using the repository browser.