Walls And Holes  1
AbstractShapeBrushTool Class Referenceabstract

#include <abstractshapebrushtool.h>

Inheritance diagram for AbstractShapeBrushTool:
Collaboration diagram for AbstractShapeBrushTool:

Public Member Functions

 AbstractShapeBrushTool (TileMapPreviewGraphicsItem *previewItem, QUndoStack *undoStack)
 
void cellClicked (int x, int y, QMouseEvent *) override
 Called the first time the left mouse button is pressed over a cell. More...
 
void cellActivated (int x, int y, QMouseEvent *) override
 Called when the left mouse button is down over a new cell. More...
 
void cellReleased (int x, int y, QMouseEvent *) override
 Called when the left mouse button is released over a cell. More...
 
void deactivate () override
 Deactivates the tool. This is called before the tool stops being used. More...
 
virtual QRegion getShape (QPoint start, QPoint end) const =0
 This function should output a QVector of points that should be filled in. More...
 
- Public Member Functions inherited from AbstractTileMapTool
 AbstractTileMapTool (TileMapPreviewGraphicsItem *previewItem)
 
void setTileMap (TileMap *tileMap)
 
void setTileTemplate (TileTemplate *tileTemplate)
 
virtual void toolTileMapChanged (TileMap *previous=nullptr)
 Called whenever mTileMap changes. Called in constructor. More...
 
virtual void cellHovered (int, int, QMouseEvent *)
 Called when the mouse hovers over a new cell. More...
 
virtual void mouseExitedMap (QMouseEvent *)
 Called when the mouse is no longer hovering over a cell. More...
 
- Public Member Functions inherited from AbstractTool
virtual ~AbstractTool ()
 
virtual void activate ()
 Activates the tool. This is called before the tool is used. More...
 
virtual QList< QAction * > contextActions ()
 Returns a vector of qactions which can be used to modify the behaviour of the tool. Will be used by the tool manager to add the actions to a context tool bar. More...
 
virtual void mousePressEvent (QMouseEvent *)
 
virtual void mouseReleaseEvent (QMouseEvent *)
 
virtual void mouseMoveEvent (QMouseEvent *)
 
virtual void wheelEvent (QWheelEvent *)
 

Additional Inherited Members

- Protected Member Functions inherited from AbstractTileMapTool
TileMapgetTileMap () const
 
TileTemplategetTileTemplate () const
 
- Protected Attributes inherited from AbstractTileMapTool
TileMapPreviewGraphicsItem *const mPreviewItem
 

Constructor & Destructor Documentation

◆ AbstractShapeBrushTool()

AbstractShapeBrushTool::AbstractShapeBrushTool ( TileMapPreviewGraphicsItem previewItem,
QUndoStack *  undoStack 
)

Member Function Documentation

◆ cellActivated()

void AbstractShapeBrushTool::cellActivated ( int  ,
int  ,
QMouseEvent *   
)
overridevirtual

Called when the left mouse button is down over a new cell.

This function is invoked when the mouse button is pressed down or when the mouse moves over a new cell while pressed down.

Parameters
xThe cell's x position.
yThe cell's y position.

Reimplemented from AbstractTileMapTool.

◆ cellClicked()

void AbstractShapeBrushTool::cellClicked ( int  ,
int  ,
QMouseEvent *   
)
overridevirtual

Called the first time the left mouse button is pressed over a cell.

Unlike cellActivated(), this function is called when the mouse button is first pressed and not called for other cells if the mouse is dragged afterward.

Parameters
xThe cell's x position.
yThe cell's y position.

Reimplemented from AbstractTileMapTool.

◆ cellReleased()

void AbstractShapeBrushTool::cellReleased ( int  ,
int  ,
QMouseEvent *   
)
overridevirtual

Called when the left mouse button is released over a cell.

Parameters
xThe cell's x position.
yThe cell's y position.

Reimplemented from AbstractTileMapTool.

◆ deactivate()

void AbstractShapeBrushTool::deactivate ( )
overridevirtual

Deactivates the tool. This is called before the tool stops being used.

Reimplemented from AbstractTool.

◆ getShape()

virtual QRegion AbstractShapeBrushTool::getShape ( QPoint  start,
QPoint  end 
) const
pure virtual

This function should output a QVector of points that should be filled in.

All points are specified as offsets from (0, 0), which is assumed to be the place where the mouse drag started. The point (dx, dy) is the place where the mouse drag ended.

There is no assumption on whether the points lie in the rectangle between (0, 0) and (dx, dy).

Parameters
dxThe X offset from the start of drawing.
dyThe Y offset from the start of drawing.

Implemented in LineBrushTool, RectBrushTool, and EllipseBrushTool.


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