Salome HOME
952ca9f1d208849fb6b87c2b9c8d6b6fbf464f55
[modules/superv.git] / src / SUPERVGUI / SUPERVGUI_CanvasControlNodePrs.h
1 //  SUPERV SUPERVGUI : GUI for Supervisor component
2 //
3 //  Copyright (C) 2003  OPEN CASCADE
4 //
5 //  File   : SUPERVGUI_CanvasControlNodePrs.h
6 //  Author : Natalia KOPNOVA
7 //  Module : SUPERV
8
9 #ifndef SUPERVGUI_CanvasControlNodePrs_H
10 #define SUPERVGUI_CanvasControlNodePrs_H
11
12 using namespace std;
13 #include "SUPERVGUI_Def.h"
14 #include "SUPERVGUI_CanvasNodePrs.h"
15
16
17 class SUPERVGUI_CanvasControlNodePrs : public SUPERVGUI_CanvasNodePrs 
18 {
19   public:
20     SUPERVGUI_CanvasControlNodePrs(QCanvas* theCanvas, SUPERVGUI_CanvasNode* theNode);
21     virtual ~SUPERVGUI_CanvasControlNodePrs() {}
22
23     virtual void hideAll();
24     virtual void showAll();
25
26     virtual QRect getStatusRect() const;
27     virtual QRect getBodyRect() const;
28     virtual QRect getGateRect() const;
29 };
30
31 class SUPERVGUI_CanvasStartNode;
32 class SUPERVGUI_CanvasStartNodePrs : public SUPERVGUI_CanvasControlNodePrs 
33 {
34   public:
35     SUPERVGUI_CanvasStartNodePrs(QCanvas* theCanvas, SUPERVGUI_CanvasStartNode* theNode);
36     virtual ~SUPERVGUI_CanvasStartNodePrs() {}
37     
38     QPointArray areaPoints() const;
39
40     virtual void setState(SUPERV::GraphState theState);
41
42   protected:
43     virtual void drawFrame(QPainter& thePainter);
44     virtual void drawTitleShape(QPainter& thePainter);
45     virtual void drawStatusShape(QPainter& thePainter);
46 };
47
48 class SUPERVGUI_CanvasEndNode;
49 class SUPERVGUI_CanvasEndNodePrs : public SUPERVGUI_CanvasControlNodePrs 
50 {
51   public:
52     SUPERVGUI_CanvasEndNodePrs(QCanvas* theCanvas, SUPERVGUI_CanvasEndNode* theNode);
53     virtual ~SUPERVGUI_CanvasEndNodePrs() {}
54     
55     QPointArray areaPoints() const;
56
57     virtual void setState(SUPERV::GraphState theState);
58
59   protected:
60     virtual void drawFrame(QPainter& thePainter);
61     virtual void drawTitleShape(QPainter& thePainter);
62     virtual void drawStatusShape(QPainter& thePainter);
63 };
64
65 class SUPERVGUI_CanvasGotoNode;
66 class SUPERVGUI_CanvasGotoNodePrs : public SUPERVGUI_CanvasControlNodePrs 
67 {
68   public:
69     SUPERVGUI_CanvasGotoNodePrs(QCanvas* theCanvas, SUPERVGUI_CanvasGotoNode* theNode);
70     virtual ~SUPERVGUI_CanvasGotoNodePrs() {}
71     
72     QPointArray areaPoints() const;
73
74   protected:
75     virtual void drawFrame(QPainter& thePainter);
76     virtual void drawTitleShape(QPainter& thePainter);
77     virtual void drawStatusShape(QPainter& thePainter);
78 };
79
80
81 class SUPERVGUI_CanvasMacroNode;
82 class SUPERVGUI_CanvasMacroNodePrs : public SUPERVGUI_CanvasNodePrs 
83 {
84   public:
85     SUPERVGUI_CanvasMacroNodePrs(QCanvas* theCanvas, SUPERVGUI_CanvasMacroNode* theNode);
86     virtual ~SUPERVGUI_CanvasMacroNodePrs() {}
87     
88     QPointArray areaPoints() const;
89
90   protected:
91     void drawFrame(QPainter& thePainter);
92
93 };
94
95 #endif