]> Creatis software - cpPlugins.git/blob - lib/cpPipelineEditor/Connection.h
Now it's broken :-(
[cpPlugins.git] / lib / cpPipelineEditor / Connection.h
1 #ifndef __CPPIPELINEEDITOR__CONNECTION__H__\r
2 #define __CPPIPELINEEDITOR__CONNECTION__H__\r
3 \r
4 #include <cpPipelineEditor/cpPipelineEditor_Export.h>\r
5 #include <QGraphicsPathItem>\r
6 \r
7 namespace cpPipelineEditor\r
8 {\r
9   class InputPort;\r
10   class OutputPort;\r
11 \r
12   /**\r
13    */\r
14   class cpPipelineEditor_EXPORT Connection\r
15     : public QGraphicsPathItem\r
16   {\r
17   public:\r
18     typedef Connection     Self;\r
19     typedef QGraphicsPathItem Superclass;\r
20 \r
21   public:\r
22     enum { Type = QGraphicsItem::UserType + 5 };\r
23 \r
24     Connection( QGraphicsItem* parent = 0, QGraphicsScene* scene = 0 );\r
25     virtual ~Connection( );\r
26 \r
27     void setPos1( const QPointF& p );\r
28     void setPos2( const QPointF& p );\r
29     void setPort1( OutputPort* p );\r
30     void setPort2( InputPort* p );\r
31     void updatePosFromPorts( );\r
32     void updatePath( );\r
33     OutputPort* port1( ) const;\r
34     InputPort* port2( ) const;\r
35 \r
36     inline int type( ) const\r
37       { return( this->Type ); }\r
38 \r
39   private:\r
40     QPointF m_Pos1;\r
41     QPointF m_Pos2;\r
42     OutputPort* m_Port1;\r
43     InputPort*  m_Port2;\r
44   };\r
45 \r
46 } // ecapseman\r
47 \r
48 #endif // __CPPIPELINEEDITOR__CONNECTION__H__\r
49 \r
50 // eof - $RCSfile$\r