Go to the documentation of this file.
28 #include "../model/SignalType.h"
32 #include <QGraphicsWidget>
45 using StatePtr = std::shared_ptr<State>;
112 void setup(QGraphicsItem* parent);
130 using TransitionMap = QMap<statechartmodel::TransitionCPtr, QPointer<TransitionItem>>;
138 bool itemResizing(
const QRectF& oldSize, QRectF& proposedSize)
override;
139 void itemResized(
const QRectF& oldSize,
const QRectF& newSize)
override;
140 void itemMoved(
const QPointF& oldPos,
const QPointF& newPos)
override;
143 void paint(QPainter* painter,
const QStyleOptionGraphicsItem*
option, QWidget* widget)
override;
151 QVariant
itemChange(GraphicsItemChange change,
const QVariant&
value)
override;
156 void dragMoveEvent(QGraphicsSceneDragDropEvent* event)
override;
157 void dropEvent(QGraphicsSceneDragDropEvent* event)
override;
void dragEnterEvent(QGraphicsSceneDragDropEvent *event) override
StateItem(statechartmodel::StateInstancePtr state, QGraphicsItem *parent=0)
QString getInstanceName() const
statechartmodel::StateInstancePtr state
void setActiveSubstate(const QString &substateName)
LevelOfDetail getLevelOfDetail(float levelOfDetail) const override
statechartmodel::StateInstancePtr getStateInstance() const
void itemBoundingBoxChanged(float oldSize, float size) override
std::shared_ptr< Transition > TransitionPtr
void setActiveState(bool active)
void notifyTransitionsChanged(statechartmodel::StateInstancePtr transition, statechartmodel::SignalType signalType)
int getInstanceLevel() const
int maxShownSubstateLevel
bool hasAncestor(statechartmodel::StatePtr state) const
std::shared_ptr< StateInstance > StateInstancePtr
void clearActiveSubstate()
void transitionContextMenuRequested(statechartmodel::TransitionCPtr transition, statechartmodel::StatePtr state, QPoint mouseScreenPos, QPointF mouseItemPos)
void setMaxShownSubstateLevel(int value)
QString getFullStatePath() const
int getMaxShownSubstateLevel() const
QVariant itemChange(GraphicsItemChange change, const QVariant &value) override
void dropEvent(QGraphicsSceneDragDropEvent *event) override
void stateItemMoved(QPointF newPosition)
std::shared_ptr< Value > value()
void stateItemBoundingBoxChanged(float newSquareBoundingBoxSize)
QMap< statechartmodel::TransitionCPtr, QPointer< TransitionItem > > TransitionMap
StateInstanceItemMap subStates
TransitionMap transitions
QPointF adjustPosition(QPointF &newPos) override
void forwardTransitionContextMenuRequested(statechartmodel::TransitionCPtr transition, QPoint mouseScreenPos, QPointF mouseItemPos)
QVector< TransitionItem * > getTransitionItems() const
void setup(QGraphicsItem *parent)
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
void notifyStateChanged(statechartmodel::SignalType signalType)
bool itemResizing(const QRectF &oldSize, QRectF &proposedSize) override
void notifyTransitionChanged(statechartmodel::TransitionCPtr transition, statechartmodel::SignalType signalType)
void stateContextMenuRequested(statechartmodel::StateInstancePtr stateInstace, QPoint mouseScreenPos, QPointF mouseItemPos)
SignalType
The SignalType enum.
void itemMoved(const QPointF &oldPos, const QPointF &newPos) override
void transitionMoved(statechartmodel::TransitionCPtr transition, QPointF dropPoint)
std::shared_ptr< const Transition > TransitionCPtr
void dragMoveEvent(QGraphicsSceneDragDropEvent *event) override
std::shared_ptr< State > StatePtr
bool hasDescendant(statechartmodel::StatePtr state) const
void setInstanceName(const QString &value)
QMap< statechartmodel::StateInstancePtr, QPointer< StateItem > > StateInstanceItemMap
This file offers overloads of toIce() and fromIce() functions for STL container types.
StateItem * getParentStateItem() const
void notifySubstateChanged(statechartmodel::StateInstancePtr substate, statechartmodel::SignalType signalType)
void contextMenuEvent(QGraphicsSceneContextMenuEvent *event) override
QVector< StateItem * > getSubstateItems() const
void itemResized(const QRectF &oldSize, const QRectF &newSize) override
void stateItemResized(QSizeF newSize)