umbrello 2.34.70-5524f40e1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ToolBarStateArrow Class Reference

#include <toolbarstatearrow.h>

Inheritance diagram for ToolBarStateArrow:
Collaboration diagram for ToolBarStateArrow:

Public Member Functions

 ToolBarStateArrow (UMLScene *umlScene)
 
virtual ~ToolBarStateArrow ()
 
virtual void init ()
 
void cleanup ()
 
- Public Member Functions inherited from ToolBarState
virtual ~ToolBarState ()
 
virtual void cleanBeforeChange ()
 
virtual void mousePress (QGraphicsSceneMouseEvent *ome)
 
virtual void mouseRelease (QGraphicsSceneMouseEvent *ome)
 
virtual void mouseDoubleClick (QGraphicsSceneMouseEvent *ome)
 
virtual void mouseMove (QGraphicsSceneMouseEvent *ome)
 

Protected Member Functions

virtual void mousePressAssociation ()
 
virtual void mousePressWidget ()
 
virtual void mousePressEmpty ()
 
virtual void mouseReleaseAssociation ()
 
virtual void mouseReleaseWidget ()
 
virtual void mouseReleaseEmpty ()
 
virtual void mouseDoubleClickAssociation ()
 
virtual void mouseDoubleClickWidget ()
 
virtual void mouseMoveAssociation ()
 
virtual void mouseMoveWidget ()
 
virtual void mouseMoveEmpty ()
 
virtual void setCurrentWidget (UMLWidget *currentWidget)
 
virtual void changeTool ()
 
- Protected Member Functions inherited from ToolBarState
 ToolBarState (UMLScene *umlScene)
 
virtual void setCurrentElement ()
 
virtual void mouseDoubleClickEmpty ()
 
virtual UMLWidgetcurrentWidget () const
 
virtual AssociationWidgetcurrentAssociation () const
 
virtual void setCurrentAssociation (AssociationWidget *association)
 
void setMouseEvent (QGraphicsSceneMouseEvent *ome, const QEvent::Type &type)
 
AssociationWidgetassociationAt (const QPointF &pos)
 
MessageWidgetmessageAt (const QPointF &pos)
 
FloatingDashLineWidgetfloatingLineAt (const QPointF &pos)
 

Protected Attributes

QList< QGraphicsLineItem * > m_selectionRect
 
QPointF m_startPosition
 
- Protected Attributes inherited from ToolBarState
UMLScenem_pUMLScene
 The UMLScene. More...
 
QGraphicsSceneMouseEvent * m_pMouseEvent
 The mouse event currently in use. More...
 

Additional Inherited Members

- Public Slots inherited from ToolBarState
virtual void slotAssociationRemoved (AssociationWidget *association)
 
virtual void slotWidgetRemoved (UMLWidget *widget)
 
- Signals inherited from ToolBarState
void finished ()
 

Detailed Description

Arrow tool for select, move and resize widgets and associations. Arrow tool delegates the event handling in the widgets and associations. When no widget nor association is being used, the arrow tool acts as a selecting tool that selects all the elements in the rectangle created when dragging the mouse.

This is the default tool.

Constructor & Destructor Documentation

◆ ToolBarStateArrow()

ToolBarStateArrow::ToolBarStateArrow ( UMLScene umlScene)
explicit

Creates a new ToolBarStateArrow.

Parameters
umlSceneThe UMLScene to use.
Here is the call graph for this function:

◆ ~ToolBarStateArrow()

ToolBarStateArrow::~ToolBarStateArrow ( )
virtual

Destroys this ToolBarStateArrow.

Here is the call graph for this function:

Member Function Documentation

◆ changeTool()

void ToolBarStateArrow::changeTool ( )
protectedvirtual

Overridden from base class to do nothing, as arrow is the default tool.

Reimplemented from ToolBarState.

◆ cleanup()

void ToolBarStateArrow::cleanup ( )

Clean up anything before deletion.

◆ init()

void ToolBarStateArrow::init ( )
virtual

Goes back to the initial state.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseDoubleClickAssociation()

void ToolBarStateArrow::mouseDoubleClickAssociation ( )
protectedvirtual

Called when the double click event happened on an association. Delivers the event to the association.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseDoubleClickWidget()

void ToolBarStateArrow::mouseDoubleClickWidget ( )
protectedvirtual

Called when the double click event happened on a widget. Delivers the event to the widget.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseMoveAssociation()

void ToolBarStateArrow::mouseMoveAssociation ( )
protectedvirtual

Called when the move event happened when an association is currently available. Delivers the event to the association.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseMoveEmpty()

void ToolBarStateArrow::mouseMoveEmpty ( )
protectedvirtual

Called when the move event happened when no association nor widget are currently available. Updates the selection rectangle to the new position and selectes all the widgets in the rectangle.

Todo:
Fix selection

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseMoveWidget()

void ToolBarStateArrow::mouseMoveWidget ( )
protectedvirtual

Called when the move event happened when a widget is currently available. Delivers the event to the widget.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mousePressAssociation()

void ToolBarStateArrow::mousePressAssociation ( )
protectedvirtual

Called when the press event happened on an association. Delivers the event to the association.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mousePressEmpty()

void ToolBarStateArrow::mousePressEmpty ( )
protectedvirtual

Called when the press event happened on an empty space. Calls base method and, if left button was pressed, prepares the selection rectangle.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mousePressWidget()

void ToolBarStateArrow::mousePressWidget ( )
protectedvirtual

Called when the press event happened on a widget. Delivers the event to the widget.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseReleaseAssociation()

void ToolBarStateArrow::mouseReleaseAssociation ( )
protectedvirtual

Called when the release event happened on an association. Delivers the event to the association.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseReleaseEmpty()

void ToolBarStateArrow::mouseReleaseEmpty ( )
protectedvirtual

Called when the release event happened on an empty space. If selection rectangle is active, it is cleared. Else, if the right button was released, it shows the pop up menu for the diagram.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ mouseReleaseWidget()

void ToolBarStateArrow::mouseReleaseWidget ( )
protectedvirtual

Called when the release event happened on a widget. Delivers the event to the widget.

Reimplemented from ToolBarState.

Here is the call graph for this function:

◆ setCurrentWidget()

void ToolBarStateArrow::setCurrentWidget ( UMLWidget widget)
protectedvirtual

Sets the widget currently in use. It ensures that the widget is only set if there is no other widget set already. It avoids things like moving a big widget over a little one, clicking right button to cancel the movement and the little widget getting the event, thus not canceling the movement in the big widget.

Reimplemented from ToolBarState.

Here is the call graph for this function:

Member Data Documentation

◆ m_selectionRect

QList<QGraphicsLineItem*> ToolBarStateArrow::m_selectionRect
protected

The selection rectangle that contains the four lines of its borders.

◆ m_startPosition

QPointF ToolBarStateArrow::m_startPosition
protected

The start position of the selection rectangle.


The documentation for this class was generated from the following files: