00001 #ifndef _TRANSITIONLOOP_H_877372374243_ 00002 #define _TRANSITIONLOOP_H_877372374243_ 00003 00004 #include "oneStateTransition.h" 00005 00006 class TransitionLoop : public OneStateTransition 00007 { 00008 public : 00009 enum ELoopType {eLoop, eCLoop, eLoopVar}; 00010 public: 00011 TransitionLoop(Editor *parent, State *state, const QString &label, int type = eLoop, 00012 bool dimmed = false, int direction = 0); 00013 ~TransitionLoop(); 00014 00015 virtual void adjust(); 00016 00017 virtual QString getTypeName() const; 00018 00019 virtual void setDirection(int d); 00020 virtual int getDirection() const; 00021 00022 virtual void setLabelPosition(); 00023 00024 virtual QString getVCCommand() const; 00025 //virtual QString getEPS() const; 00026 00027 virtual State* getEndState() const { return startState; } 00028 00029 virtual QPainterPath path() const 00030 { 00031 return p.translated(pos()); 00032 } 00033 00034 void paint(QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0); 00035 00036 protected: 00037 int loopType; 00038 int direction; 00039 }; 00040 00041 #endif //_TRANSITIONLOOP_H_877372374243_