28#include <QGraphicsWidget>
45 using StatePtr = std::shared_ptr<State>;
89 QPoint mouseScreenPos,
90 QPointF mouseItemPos);
93 QPoint mouseScreenPos,
94 QPointF mouseItemPos);
105 QPoint mouseScreenPos,
106 QPointF mouseItemPos);
116 void setup(QGraphicsItem* parent);
134 using TransitionMap = QMap<statechartmodel::TransitionCPtr, QPointer<TransitionItem>>;
142 bool itemResizing(
const QRectF& oldSize, QRectF& proposedSize)
override;
143 void itemResized(
const QRectF& oldSize,
const QRectF& newSize)
override;
144 void itemMoved(
const QPointF& oldPos,
const QPointF& newPos)
override;
148 paint(QPainter* painter,
const QStyleOptionGraphicsItem*
option, QWidget* widget)
override;
156 QVariant
itemChange(GraphicsItemChange change,
const QVariant& value)
override;
161 void dragMoveEvent(QGraphicsSceneDragDropEvent* event)
override;
162 void dropEvent(QGraphicsSceneDragDropEvent* event)
override;
RoundRectItem(const QRectF &bounds, const QColor &color, QGraphicsItem *parent=0)
MorphingItem(QGraphicsItem *derivedItem)
void stateItemBoundingBoxChanged(float newSquareBoundingBoxSize)
void transitionMoved(statechartmodel::TransitionCPtr transition, QPointF dropPoint)
void notifyStateChanged(statechartmodel::SignalType signalType)
void itemResized(const QRectF &oldSize, const QRectF &newSize) override
void dragMoveEvent(QGraphicsSceneDragDropEvent *event) override
QPointF adjustPosition(QPointF &newPos) override
QString getInstanceName() const
bool hasDescendant(statechartmodel::StatePtr state) const
void setActiveState(bool active)
QString getFullStatePath() const
void contextMenuEvent(QGraphicsSceneContextMenuEvent *event) override
LevelOfDetail getLevelOfDetail(float levelOfDetail) const override
void notifyTransitionChanged(statechartmodel::TransitionCPtr transition, statechartmodel::SignalType signalType)
void transitionContextMenuRequested(statechartmodel::TransitionCPtr transition, statechartmodel::StatePtr state, QPoint mouseScreenPos, QPointF mouseItemPos)
TransitionMap transitions
bool hasAncestor(statechartmodel::StatePtr state) const
QMap< statechartmodel::StateInstancePtr, QPointer< StateItem > > StateInstanceItemMap
int getMaxShownSubstateLevel() const
void forwardTransitionContextMenuRequested(statechartmodel::TransitionCPtr transition, QPoint mouseScreenPos, QPointF mouseItemPos)
QVector< StateItem * > getSubstateItems() const
statechartmodel::StateInstancePtr getStateInstance() const
QVector< TransitionItem * > getTransitionItems() const
void notifySubstateChanged(statechartmodel::StateInstancePtr substate, statechartmodel::SignalType signalType)
void dragEnterEvent(QGraphicsSceneDragDropEvent *event) override
int maxShownSubstateLevel
void stateItemResized(QSizeF newSize)
void setInstanceName(const QString &value)
void itemBoundingBoxChanged(float oldSize, float size) override
void itemMoved(const QPointF &oldPos, const QPointF &newPos) override
StateItem * getParentStateItem() const
void setup(QGraphicsItem *parent)
void stateItemMoved(QPointF newPosition)
void clearActiveSubstate()
int getInstanceLevel() const
void stateContextMenuRequested(statechartmodel::StateInstancePtr stateInstace, QPoint mouseScreenPos, QPointF mouseItemPos)
statechartmodel::StateInstancePtr state
void dropEvent(QGraphicsSceneDragDropEvent *event) override
void setMaxShownSubstateLevel(int value)
QVariant itemChange(GraphicsItemChange change, const QVariant &value) override
QMap< statechartmodel::TransitionCPtr, QPointer< TransitionItem > > TransitionMap
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
StateItem(statechartmodel::StateInstancePtr state, QGraphicsItem *parent=0)
bool itemResizing(const QRectF &oldSize, QRectF &proposedSize) override
StateInstanceItemMap subStates
void notifyTransitionsChanged(statechartmodel::StateInstancePtr transition, statechartmodel::SignalType signalType)
void setActiveSubstate(const QString &substateName)
std::shared_ptr< State > StatePtr
std::shared_ptr< StateInstance > StateInstancePtr
std::shared_ptr< const Transition > TransitionCPtr
SignalType
The SignalType enum.
std::shared_ptr< Transition > TransitionPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.