File indexing completed on 2024-12-01 11:20:31

0001 //
0002 // C++ Interface: outputflownode
0003 //
0004 // Description:
0005 //
0006 //
0007 // Copyright: See COPYING file that comes with this distribution
0008 //
0009 //
0010 #ifndef OUTPUTFLOWNODE_H
0011 #define OUTPUTFLOWNODE_H
0012 
0013 #include <fpnode.h>
0014 
0015 /**
0016     a FlowNode which serves as Output for flowparts
0017 */
0018 class OutputFlowNode : public FPNode
0019 {
0020 public:
0021     OutputFlowNode(ICNDocument *_icnView, int dir, const QPoint &pos, QString *id = nullptr);
0022 
0023     ~OutputFlowNode() override;
0024 
0025     /**
0026      * Returns true if the node can accept input connections. This will depend
0027      * on the node type and number of input / output connections.
0028      */
0029     bool acceptInput() const override;
0030     /**
0031      * Returns true if the node can accept output connections. This will depend
0032      * on the node type and number of input / output connections.
0033      */
0034     bool acceptOutput() const override;
0035 
0036     /**
0037      * Registers an input connector (i.e. this is the end node) as connected
0038      * to this node.
0039      */
0040     void addInputConnector(Connector *const connector) override;
0041 
0042 public slots:
0043 
0044     /**
0045      * Draw shape. Note that this has to remain public.
0046      */
0047     void drawShape(QPainter &p) override;
0048 };
0049 
0050 #endif