Ipelib

- Main Page
- Related Pages
- Modules
- Classes

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ipe::Tool Class Reference
Ipe canvas

`#include <ipetool.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 (int code, int modifiers, String text)

## Protected Member Functions

| Tool (CanvasBase *canvas)

## Protected Attributes

CanvasBase * | iCanvas

## 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 | ( |  | ) |

virtual

Virtual destructor.

Tool::Tool | ( | CanvasBase * | canvas | ) |

protected

Constructor.

## Member Function Documentation

virtual void ipe::Tool::draw | ( | Painter & | painter | ) | const

pure virtual

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

void Tool::mouseButton | ( | int | button,
|  | bool | press
| ) |  |

virtual

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.

void Tool::mouseMove | ( |  | ) |

virtual

Called when the mouse is moved on the canvas.

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

bool Tool::key | ( | int | code,
|  | int | modifiers,
|  | String | text
| ) |  |

virtual

Called when a key is pressed.

modifiers are as defined in CanvasBase::TModifiers.

Reimplemented in ipe::SelectTool.

## Member Data Documentation

CanvasBase* ipe::Tool::iCanvas

protected

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

- ipetool.h
- ipetool.cpp