NCL Composer  0.1
qnstgraphicsaction.h
00001 #ifndef QNSTGRAPHICSACTION_H
00002 #define QNSTGRAPHICSACTION_H
00003 
00004 #include "qnstgraphicsedge.h"
00005 
00006 #include "qnstgraphicsbinddialog.h"
00007 
00008 typedef QString QnstActionIcon;
00009 typedef Qnst::ActionType QnstAction;
00010 
00011 class QnstGraphicsAction : public QnstGraphicsEdge
00012 {
00013     Q_OBJECT
00014 
00015 public:
00016     QnstGraphicsAction(QnstGraphicsEntity* parent = 0);
00017 
00018     ~QnstGraphicsAction();
00019 
00020     QnstAction getAction();
00021 
00022     void setAction(QnstAction action);
00023 
00024     QnstActionIcon getActionIcon();
00025 
00026     void setActionIcon(QnstActionIcon actionIcon);
00027 
00028     void adjust();
00029 
00030     void aux_adjust(QPointF pointa, QPointF pointb);
00031 
00032     void setConn(QnstConncetor* conn);
00033 
00034     void setNameUids(QMap<QString, QString> nameUids);
00035 
00036     void setParams(QMap<QString, QString> params);
00037 
00038     void addParam(QString uid, QString name, QString value);
00039 
00040     void setParam(QString name, QString value);
00041 
00042     void removeParam(QString name);
00043 
00044     void removeUId(QString uid);
00045 
00046 signals:
00047     void bindParamAdded(QString uid, QString parent, QMap<QString, QString> properties);
00048 
00049     void bindParamUpdated(QString bindUid, QMap<QString, QString> params,  QMap<QString, QString> name_uids);
00050 
00051 protected:
00052     virtual void draw(QPainter* painter);
00053 
00054     virtual void delineate(QPainterPath* painter) const;
00055 
00056     virtual void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event);
00057 
00058 private:
00059 
00060     QnstAction action;
00061 
00062     QnstActionIcon actionIcon;
00063 
00064     QnstConncetor* conn;
00065 
00066     QMap<QString, QString> name_uid;
00067 
00068     QMap<QString, QString> params;
00069 
00070     QnstGraphicsBindDialog* dialog;
00071 };
00072 
00073 #endif // QNSTGRAPHICSACTION_H
 All Classes Functions Variables