1 // SUPERV SUPERVGUI : GUI for Supervisor component
3 // Copyright (C) 2003 OPEN CASCADE
5 // File : SUPERVGUI_CanvasControlNode.h
6 // Author : Natalia KOPNOVA
9 #ifndef SUPERVGUI_CanvasControlNode_H
10 #define SUPERVGUI_CanvasControlNode_H
13 #include "SUPERVGUI_Def.h"
14 #include "SUPERVGUI_CanvasNode.h"
16 #include <qcombobox.h>
18 class SUPERVGUI_CanvasComputeNode : public SUPERVGUI_CanvasNode {
22 SUPERVGUI_CanvasComputeNode( SUIT_ResourceMgr*, QObject* theParent, SUPERVGUI_Main* theMain, SUPERV_CNode theNode);
23 virtual ~SUPERVGUI_CanvasComputeNode() {}
25 virtual QPopupMenu* getPopupMenu(QWidget* theParent);
28 class SUPERVGUI_CanvasMacroNode : public SUPERVGUI_CanvasComputeNode {
32 SUPERVGUI_CanvasMacroNode( SUIT_ResourceMgr*, QObject* theParent, SUPERVGUI_Main* theMain, SUPERV_CNode theNode);
33 virtual ~SUPERVGUI_CanvasMacroNode() {}
35 virtual QPopupMenu* getPopupMenu(QWidget* theParent);
39 void exportDataflow();
42 virtual SUPERVGUI_CanvasNodePrs* createPrs() const;
46 class SUPERVGUI_CanvasEndNode;
47 class SUPERVGUI_CanvasStartNode : public SUPERVGUI_CanvasNode {
51 SUPERVGUI_CanvasStartNode( SUIT_ResourceMgr*, QObject* theParent, SUPERVGUI_Main* theMain, SUPERV_CNode theNode);
52 virtual ~SUPERVGUI_CanvasStartNode() {}
54 virtual bool setNodeName(QString aName);
56 SUPERVGUI_CanvasEndNode* getCoupled() const { return myCoupled; }
58 virtual QPopupMenu* getPopupMenu(QWidget* theParent);
61 virtual void remove();
63 // mkr : IPAL9815 : commented the following code
64 /*virtual void addInputPort();
65 virtual void addOutputPort();*/
66 virtual void pastePort();
69 virtual SUPERVGUI_CanvasNodePrs* createPrs() const;
72 virtual void onDestroyed(QObject*);
75 friend class SUPERVGUI_CanvasEndNode;
76 void setCoupled(SUPERVGUI_CanvasEndNode* theEnd) { myCoupled = theEnd; }
78 SUPERVGUI_CanvasEndNode* myCoupled;
83 class SUPERVGUI_CanvasEndNode : public SUPERVGUI_CanvasNode {
87 SUPERVGUI_CanvasEndNode( SUIT_ResourceMgr*, QObject* theParent, SUPERVGUI_Main* theMain, SUPERV_CNode theNode,
88 SUPERVGUI_CanvasStartNode* theStart);
89 virtual ~SUPERVGUI_CanvasEndNode() {}
91 SUPERVGUI_CanvasStartNode* getCoupled() const { return myCoupled; }
93 virtual QPopupMenu* getPopupMenu(QWidget* theParent);
95 // mkr : IPAL9815 : commented the following code
97 virtual void addInputPort();*/
100 virtual SUPERVGUI_CanvasNodePrs* createPrs() const;
103 SUPERVGUI_CanvasStartNode* myCoupled;
108 class SUPERVGUI_CanvasGotoNode : public SUPERVGUI_CanvasNode {
112 SUPERVGUI_CanvasGotoNode( SUIT_ResourceMgr*, QObject* theParent, SUPERVGUI_Main* theMain, SUPERV_CNode theNode);
113 virtual ~SUPERVGUI_CanvasGotoNode() {}
115 virtual QPopupMenu* getPopupMenu(QWidget* theParent);
121 virtual SUPERVGUI_CanvasNodePrs* createPrs() const;
124 class SUPERVGUI_CanvasCellNode : public SUPERVGUI_CanvasNode {
128 SUPERVGUI_CanvasCellNode( SUIT_ResourceMgr*, QObject* theParent,
129 SUPERVGUI_Main* theMain,
130 SUPERV_CNode theNode);
131 virtual ~SUPERVGUI_CanvasCellNode();
133 // asv : 26.01.05 : everything moved to CanvasNode::getPopupMenu()
134 //virtual QPopupMenu* getPopupMenu(QWidget* theParent);
136 void setPairCell(SUPERVGUI_CanvasCellNode* thePairCell);
137 SUPERVGUI_CanvasCellNode* getPairCell();
141 // asv : 26.01.05 : decided to remove all "edition" operations on nodes in Table view
142 //virtual bool setNodeName(QString aName);
145 virtual SUPERVGUI_CanvasNodePrs* createPrs() const;
148 SUPERVGUI_CanvasCellNode* myPairCell; //for ControlNodes
156 class SUPERVGUI_CanvasCellEndNode: public SUPERVGUI_CanvasCellNode {
159 SUPERVGUI_CanvasCellEndNode( SUIT_ResourceMgr*, QObject* theParent,
160 SUPERVGUI_Main* theMain,
161 SUPERV_CNode theNode,
162 SUPERVGUI_CanvasCellNode* theStart);
163 virtual ~SUPERVGUI_CanvasCellEndNode() {}
165 // asv : 26.01.05 : decided to remove all "edition" operations on nodes in Table view
166 //virtual bool setNodeName(QString theName);
170 * Taken from SUPERVGUI_ControlNode.h without change
172 class SUPERVGUI_SelectInlineDlg: public QDialog {
176 SUPERVGUI_SelectInlineDlg(SUPERVGUI_Main* theMain);
177 virtual ~SUPERVGUI_SelectInlineDlg() {};
179 QString getName() { return myCombo->currentText(); }