Salome HOME
This commit was generated by cvs2git to create branch 'IMPORT'.
[modules/superv.git] / src / SUPERVGUI / SUPERVGUI_CtrlLink.cxx
1 using namespace std;
2 //  File      : SUPERVGUI_CtrlLink.cxx
3 //  Created   : 14 / 05 / 2003
4 //  Author    : Vitaly SMETANNIKOV
5 //  Project   : SALOME 
6 //  Module    : SUPERVGUI
7 //  Copyright : Open CASCADE 
8
9
10 #include "SUPERVGUI_CtrlLink.h"
11 #include "SUPERVGUI_Graph.h"
12 #include "SUPERVGUI_GraphNode.h"
13
14 #define LINE_WIDTH 2
15 #define DRAW_CLR Qt::black
16
17 SUPERVGUI_CtrlLink::SUPERVGUI_CtrlLink(SUPERVGUI_Graph* theGraph,
18                                       SUPERVGUI_GraphNode* theFromNode,
19                                       SUPERVGUI_GraphNode* theToNode) 
20 {
21   myOutNode = theFromNode;
22   myInNode = theToNode;
23   myGraph = theGraph;
24 }
25
26
27
28 void SUPERVGUI_CtrlLink::paint(QPainter* thePainter, bool toErase) {
29   if ((myGraph == NULL) || (myInNode == NULL) || (myOutNode == NULL))
30     return;
31   thePainter->save();
32
33   QPen aDataPen;
34   aDataPen.setWidth(LINE_WIDTH);
35   if (toErase) {
36     aDataPen.setColor(myGraph->viewport()->paletteBackgroundColor());
37   } else {
38     aDataPen.setColor(DRAW_CLR);
39   }
40   thePainter->setPen(aDataPen);
41   thePainter->moveTo(myOutNode->getOutConnectPnt());
42   thePainter->lineTo(myInNode->getInConnectPnt());
43
44   thePainter->restore();
45 }