a2dCanvasObject::a2dDoUpdateImmediateData Class Reference

A data structure for DoUpdateImmediate. More...

#include <canobj.h>

Inheritance diagram for a2dCanvasObject::a2dDoUpdateImmediateData:

Inheritance graph
[legend]
Collaboration diagram for a2dCanvasObject::a2dDoUpdateImmediateData:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 a2dDoUpdateImmediateData (bool final, a2dBaseTool *tool, a2dCanvasObject *parent)
 constructor
void RequestPhase (int i)
 Set a bit in m_phaserequest.
void RequestSortPriorityBeforeNextPhase ()
 Request that on the next phase change, the objects in the update list are sorted by PROPID_UpdateImmediatePriority.

Public Attributes

int m_phase
 Current phase of the update process.
int m_phaserequest
 Set a bit in here to request execution of an update phase.
int m_phasedone
 This has a bit set for every phase, that was already done.
bool m_phase_first
 If true, the current phase is executed for the first time.
bool m_final
 If true this is a final update of the original data, not an intermediate update of the editcopy.
bool m_original
 If true, DoImmediateUpdate was called on an original object.
bool m_allowreconnectbegin
 If true, allow reconnecting the begin pin.
bool m_allowreconnectend
 If true, allow reconnecting the end pin.
bool m_sortbeforenextphase
 If true, before the next phase change the update object list is sorted by PROPID_UpdateImmediatePriority.
class a2dBaseToolm_tool
 The tool, that issued this update, may be NULL, if not m_parent is set from it.
a2dCanvasObjectPtr m_parent
 parent of the set of child objects to update.

Static Public Attributes

static a2dPropertyIdRefObjectPROPID_RouteData = NULL
 Holds temporary routing data.


Detailed Description

A data structure for DoUpdateImmediate.

All this could be given as parameters as well, but for a recursive function with always identical parameters, using a struct is more efficient and easier to extend

This is derived from a2dPropObject, so that it can also be used as a means for communication between different objects (usually of the same class) during update.

Remarks:
a2dDoUpdateImmediateData is derived from a2dPropObject so that it can have properties but a2dDoUpdateImmediateData is/should be never ref counted!

Definition at line 1516 of file canobj.h.


Constructor & Destructor Documentation

a2dCanvasObject::a2dDoUpdateImmediateData::a2dDoUpdateImmediateData ( bool  final,
a2dBaseTool tool,
a2dCanvasObject parent 
)

constructor

Parameters:
final true when last stage needs to be executed in an reroute cycle, resulting in commands being issued.
tool tool from which update is called, may be NULL
parent parent of which the object need to be updated, if NULL, m_tool->GetCanvasView()->GetShowObject() is taken as m_parent

Definition at line 5928 of file canobj.cpp.


Member Data Documentation

Current phase of the update process.

This always starts with 0 and goes up if requested in phase 0

Definition at line 1521 of file canobj.h.

If true, DoImmediateUpdate was called on an original object.

Usually DoUpdateImmediate is called on an editcopy

Definition at line 1532 of file canobj.h.

parent of the set of child objects to update.

Like the wires connecting normal objects, these are all children of the same parent.

Definition at line 1545 of file canobj.h.


The documentation for this class was generated from the following files:
a2dCanvasObject::a2dDoUpdateImmediateData Class Reference -- Tue Aug 31 18:13:09 2010 -- 31 Aug 2010 -- 1.5.5 -- wxArt2D -- . -- Main Page Reference Documentation