Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ipe::Tool Class Referenceabstract

#include <ipetoolbase.h>

Inherited by ipe::PanTool, ipe::SelectTool, and ipe::TransformTool.

Public Member Functions

virtual ~Tool ()
virtual void draw (Painter &painter) const =0
virtual void mouseButton (int button, bool press)
virtual void mouseMove ()
virtual bool key (String text, int modifiers)
virtual void snapVtx (const Vector &mouse, Vector &pos, double &bound, bool cp) const

Protected Member Functions

 Tool (CanvasBase *canvas)

Protected Attributes


Detailed Description

Abstract base class for various canvas tools.

The Canvas doesn't know about the various modes for object creation, editing, and moving, but delegates the handling to a subclass of Tool.

Constructor & Destructor Documentation

◆ ~Tool()

Tool::~Tool ( )

Virtual destructor.

◆ Tool()

Tool::Tool ( CanvasBase canvas)


Member Function Documentation

◆ draw()

virtual void ipe::Tool::draw ( Painter painter) const
pure virtual

◆ mouseButton()

void Tool::mouseButton ( int  button,
bool  press 

Called when a mouse button is pressed or released on the canvas.

button is 1, 2, or 3, with Shift/Ctrl/Alt/Meta modifiers added in (as defined in CanvasBase::TModifiers. press is true for button-down, and false for button-up.

Reimplemented in ipe::TransformTool, ipe::SelectTool, and ipe::PanTool.

Referenced by ipe::Canvas::mouseButton(), and ipe::Canvas::tabletEvent().

◆ mouseMove()

void Tool::mouseMove ( )

Called when the mouse is moved on the canvas.

Reimplemented in ipe::TransformTool, ipe::SelectTool, and ipe::PanTool.

Referenced by Canvas::mouseMove(), ipe::Canvas::mouseMoveEvent(), and ipe::Canvas::tabletEvent().

◆ key()

bool Tool::key ( String  text,
int  modifiers 

Called when a key is pressed.

modifiers are as defined in CanvasBase::TModifiers.

Reimplemented in ipe::SelectTool.

Referenced by Canvas::key(), and ipe::Canvas::keyPressEvent().

◆ snapVtx()

void Tool::snapVtx ( const Vector mouse,
Vector pos,
double &  bound,
bool  cp 
) const

Snapping to vertices on object currently being drawn.

Member Data Documentation

◆ iCanvas

CanvasBase* ipe::Tool::iCanvas

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