#include <objlist.h>


Public Member Functions | |
| a2dCorridor (const a2dIterC &context) | |
| a2dCorridor (const a2dCanvasView &view) | |
| initiate corridor from the current corridor path in a document. | |
| void | Push (a2dCanvasObject *object) |
| push object onto existing corridor | |
| const a2dAffineMatrix & | GetTransform () const |
| Get the accumulated transform up to and including m_lworld of the current object. | |
| const a2dAffineMatrix & | GetInverseTransform () const |
| Inverse of GetTransform(). | |
| a2dCanvasObject * | GetCaptured () const |
| are events redirected to a captured corridor? if so return the captured object in it, else NULL | |
This class is used to store the state of a corridor path set inside a a2dCanvasDocument. All a2dCanvasObject's on the path do have the a2dCanvasOFlags::IsOnCorridorPath flag set. A corridor path is normally initiated from inside a a2dCanvasDocument, somewhere in one of its nested a2dCanvasObject's. This is done via a2dIterC::SetCorridorPath(), this function also stores the matrixes that the iterative context did calculate sofar. This object can therefore be initiated with a a2dIterC.
The a2dCorridor is used in drawings and editing tools to restore a corridor to a specific object in a document, e.g when pushing and popping a tool from the toolstack. See a2dBaseTool::GetCorridor()
When one tries to construct a corridor based on a2dCanvasView, the matrixes are calculated based on the matrix of the objects in the list.
Definition at line 331 of file objlist.h.
| a2dCorridor::a2dCorridor | ( | const a2dCanvasView & | view | ) |
initiate corridor from the current corridor path in a document.
The a2dCanvasObject in the document with the m_flags.m_isOnCorridorPath set, are searched starting from the view its ShowObject(), and pushed into the corridor list.
The matrix (and its inverse) at the end of the corridor is calculated from the multiplied a2dCanvasObject matrixes in the corridor.
Definition at line 864 of file objlist.cpp.
| const a2dAffineMatrix& a2dCorridor::GetTransform | ( | ) | const [inline] |
Get the accumulated transform up to and including m_lworld of the current object.
This converts from relative local coordinates of the current object to world coordinates. This matrix transforms all drawing primitives used to draw a a2dCanvasObject from relative world coordinates to absolute world coordinates.