51     m_buttonId = buttonId;
 
   54     m_contentBorder = 0.0;
 
  151                     double xshift = -tbbox.
GetMinX();
 
  152                     double yshift = -tbbox.
GetMinY();
 
  172                         if( scaleX && fabs( scaleX ) < fabs( scaleY ) )
 
  174                         else if( scaleY && fabs( scaleY ) < fabs( scaleX ) )
 
  218                 double xshift = -tbbox.
GetMinX();
 
  219                 double yshift = -tbbox.
GetMinY();
 
  297         wxCommandEvent commandEvent( wxEVT_COMMAND_BUTTON_CLICKED, 
m_buttonId );
 
  298         commandEvent.SetEventObject( 
this );
 
  299         if ( !ProcessEvent( commandEvent ) && 
m_parent )
 
  300             m_parent->ProcessEvent( commandEvent );
 
  335     m_worldExtend = extra;
 
  336     m_singleSelect = 
true;
 
  354 void a2dWidgetButtonGroup::OnAnyButton( wxCommandEvent& event )
 
  363         setflags2.SetSkipNotRenderedInDrawing( 
true );
 
  382         int buttonId = hitButton ? hitButton->
GetButtonId() : 0;
 
  384         wxCommandEvent commandEvent( wxEVT_COMMAND_CHOICE_SELECTED, buttonId );
 
  385         commandEvent.SetEventObject( hit );
 
  386         hit->ProcessEvent( commandEvent );
 
  400     m_docviewCommand = 0;
 
  433     if( event.GetEventObject() == this )
 
  469             wxMDIParentFrame* mdiFrame = 
wxDynamicCast( wxTheApp->GetTopWindow(), wxMDIParentFrame );
 
  471             if ( mdiFrame && mdiFrame->GetActiveChild() )
 
  472                 mdiFrame->GetActiveChild()->GetEventHandler()->ProcessEvent( *
m_event );
 
  474                 wxTheApp->GetTopWindow()->GetEventHandler()->ProcessEvent( *
m_event );
 
a2dHit m_how
return in which way the object was hit (stroke, fill, ...) 
double m_relx
(world coordinates) hit point x relative to the canvas object its parent object(s) ...
double GetHeight() const 
returns height of the boundingbox 
virtual void Render(a2dIterC &ic, OVERLAP clipparent)
Render this object to the active a2dDrawingPart. 
#define wxDynamicCast(obj, className)
Define wxDynamicCast so that it will give a compiler error for unrelated types. 
Base class for all types of strokes, understood by a2dDrawer2D classes. 
virtual void SetTransform(const a2dAffineMatrix &userToWorld)
set user-to-world transform matrix. 
mouse event sent from a2dCanvasObject to itself 
const a2dStroke * a2dBLACK_STROKE
global a2dStroke stock object for BLACK stroking 
class to map references to objects stored in XML, in order to make the connection later on...
a2dDrawing * m_root
root group for rendering and accessing the canvas's also contains layer settings 
a2dCanvasOFlags m_flags
holds flags for objects 
double m_maxx
maximum x of rectangle 
#define EVT_CANVASOBJECT_ENTER_EVENT(func)
static event table macro for a2dCanvasObject mouse enter event 
a2dCanvasObject * GetRootObject() const 
get the root object, which holds the objects in the document 
void Enlarge(const double Marge)
enlarge with the given amount 
bool IsHit() const 
true if this is a hit 
void SetDrawerStroke(const a2dStroke &stroke)
Used to set the current stroke. 
a2dBoundingBox GetCalculatedBoundingBox(int nChildLevels)
Like GetBbox, but it always calculcates the bounding box from scratch. 
UpdateMode
Various mode flags for Update. 
virtual void SetPending(bool pending)
set this object pending for update 
OVERLAP
Result of a a2dBoundingBox intersection or hittest. 
#define EVT_CHOICE_ANY(func)
wxEvthandler macro 
The base class for all drawable objects in a a2dCanvasDocument. 
double GetTransformedHitMargin()
transformed to object its coordinate system 
a2dCanvasObject is the base class for Canvas Objects. 
A2DGENERALDLLEXP a2dWalkEvent a2dWalker_a2dDerivedCanvasObjectStart
id for a2dWalkEvent issued from within a2dWalkerIOHandler 
void SetSelected(bool selected)
Set the object selected flag if allowed. 
double m_minx
minimum x of rectangle 
a2dAffineMatrix m_lworld
used for positioning the object (x,y,ang,scale etc.) 
void SetDrawerFill(const a2dFill &fill)
Used to set the current fill. 
Io handler to iterate through a a2dDocument. 
bool GetValid() const 
returns true if boundingbox is calculated properly and therefore its valid flag is set...
void Expand(const a2dPoint2D &, const a2dPoint2D &)
expand boundingbox width two points 
const a2dBoundingBox & Translate(a2dPoint2D &)
translate with given vector 
double GetMinX() const 
get minimum X of the boundingbox 
virtual void DrawRoundedRectangle(double x, double y, double width, double height, double radius, bool pixelsize=false)
Draw RoundedRectangle in world coordinates. 
void Walker(wxObject *parent, a2dWalkerIOHandler &handler)
This is used to recursively walk through an object tree. 
a2dDrawer2D * GetDrawer2D() const 
get current a2dDrawer2D 
#define wxStaticCast(obj, className)
The wxWindows 2.4.2 wxStaticCast is buggy. It evaluates its argument twice. 
#define EVT_CANVASOBJECT_MOUSE_EVENT(func)
static event table macro for a2dCanvasObject mouse event 
virtual void DrawLine(double x1, double y1, double x2, double y2)
Draw line in world coordinates. 
static const a2dCanvasObjectFlagsMask SELECTED
bool IsSelected() const 
Is the object selected flag set. 
const a2dFill * a2dNullFILL
global a2dFill stock object for defining NO filling 
a2dCanvasObject(double x=0, double y=0)
constructor called by derived objects 
bool Identity(void)
Make into identity matrix. 
set a2dCanvasObjects flags in a hierarchy of a a2dCanvasDocument 
void DoRender(a2dIterC &ic, OVERLAP clipparent)
render derived object 
A 2x3 affine matrix class for 2D transformations. 
wxMouseEvent & GetMouseEvent()
return the original mouse event that was redirected to the a2dCanvasObject 
const a2dStroke * a2dNullSTROKE
global a2dStroke stock object for NO stroking 
double GetMaxX() const 
get maximum X of the boundingbox 
double m_maxy
maximum y of rectangle 
while iterating a a2dCanvasDocument, this holds the context. 
a2dWalker based algorithms 
void MapBbox(const a2dAffineMatrix &matrix)
#define EVT_CANVASOBJECT_LEAVE_EVENT(func)
static event table macro for a2dCanvasObject mouse leave event 
void SetChildrenOnSameLayer(bool samelayer)
if set children are rendered on the same layer as this object. 
set pending flag in a drawing 
double GetMaxY() const 
get maximum Y of the boundingbox 
double GetWidth() const 
returns width of the boundingbox 
An object of this class will update a a2dIterC with the required information. 
const a2dStroke * a2dTRANSPARENT_STROKE
global a2dStroke stock object for TRANSPARENT stroking 
double m_miny
minimum of rectangle 
a2dCanvasObject * IsHitWorld(a2dIterC &ic, a2dHitEvent &hitEvent)
If the position (x,y) is within the object return this. 
The a2dBoundingBox class stores one a2dBoundingBox of a a2dCanvasObject. 
bool GetChildrenOnSameLayer() const 
are children rendered on the same layer as this object? 
bool Invert(void)
Invert matrix. 
const a2dAffineMatrix & GetTransform() const 
get the user-to-world transform matrix. 
virtual bool WalkTask(wxObject *parent, wxObject *object, a2dWalkEvent event)
called from within a2dObject's and derived classes 
double GetMinY() const 
get minimum Y of the boundingbox 
the a2dDrawingPart is a a2dView specially designed for displaying parts of a a2dDrawing. It uses a a2dDrawer2D to actually redraw things from the document, by giving that a2dDrawer2D as drawing context to the document, and telling the document to redraw a certain rectangular area. At that last is what this class is for. It optimizes the areas to be redrawn after object in the document were changed. To do that it combines redraw areas to a minimal set of redrawing areas. All the administration for this and the way things will be redrawn is from this view. 
#define EVT_BUTTON_ANY(func)
wxEvtHandler macro 
A2DGENERALDLLEXP a2dWalkEvent a2dWalker_a2dDerivedCanvasObjectEnd
id for a2dWalkEvent issued from within a2dWalkerIOHandler 
a2dBoundingBox m_bbox
boundingbox in world coordinates 
double m_rely
(world coordinates) hit point y relative to the canvas object its parent object(s) ...
a2dDocumentRenderStyle GetDrawStyle()
get drawstyles used for drawing the document 
CloneOptions
options for cloning 
structure to give as parameter to member functions of a2dCanvasObject 
virtual void DoWalker(wxObject *parent, a2dWalkerIOHandler &handler)
iterate over this object and its children 
const a2dFill * a2dTRANSPARENT_FILL
global a2dFill stock object for TRANSPARENT filling 
general canvas module declarations and classes 
a base command for the a2dCommandProcessor