NCL Composer
0.1
|
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