wxShapeFramework  1.13.0 beta
wxSFArrowBase Class Reference

Base class for a line arrows. More...

#include <ArrowBase.h>

Inheritance diagram for wxSFArrowBase:
Collaboration diagram for wxSFArrowBase:

Public Member Functions

 XS_DECLARE_CLONABLE_CLASS (wxSFArrowBase)
 
 wxSFArrowBase (void)
 Default constructor. More...
 
 wxSFArrowBase (wxSFShapeBase *parent)
 Constructor. More...
 
 wxSFArrowBase (const wxSFArrowBase &obj)
 Copy constructor. More...
 
 ~wxSFArrowBase (void)
 Destructor. More...
 
void SetParentShape (wxSFShapeBase *parent)
 Set a parent of the arrow shape. More...
 
wxSFShapeBaseGetParentShape ()
 Get pointer to a parent shape. More...
 
virtual void Draw (const wxRealPoint &from, const wxRealPoint &to, wxDC &dc)
 Draw arrow shape at the end of a virtual line. More...
 
- Public Member Functions inherited from xsSerializable
 XS_DECLARE_CLONABLE_CLASS (xsSerializable)
 
 xsSerializable ()
 Constructor. More...
 
 xsSerializable (const xsSerializable &obj)
 Copy constructor. More...
 
 ~xsSerializable ()
 Destructor. More...
 
xsSerializableGetParent ()
 Get serializable parent object. More...
 
wxXmlSerializerGetParentManager ()
 Get parent data manager (instance of wxXmlSerializer). More...
 
xsSerializableGetFirstChild ()
 Get first serializable child object. More...
 
xsSerializableGetFirstChild (wxClassInfo *type)
 Get first serializable child object of given type. More...
 
xsSerializableGetLastChild ()
 Get last serializable child object. More...
 
xsSerializableGetLastChild (wxClassInfo *type)
 Get last serializable child object of given type. More...
 
xsSerializableGetSibbling ()
 Get next serializable sibbling object. More...
 
xsSerializableGetSibbling (wxClassInfo *type)
 Get next serializable sibbling object of given type. More...
 
xsSerializableGetChild (long id, bool recursive=xsNORECURSIVE)
 Get child item with given ID if exists. More...
 
bool HasChildren () const
 Function finds out whether this serializable item has some children. More...
 
SerializableListGetChildrenList ()
 Get list of children (serializable objects) of this object. More...
 
void GetChildren (wxClassInfo *type, SerializableList &list)
 Get children of given type. More...
 
void GetChildrenRecursively (wxClassInfo *type, SerializableList &list, SEARCHMODE mode=searchBFS)
 Get all children of given type recursively (i.e. children of children of .... ). More...
 
SerializableList::compatibility_iterator GetFirstChildNode () const
 Get pointer to list node containing first serializable child object. More...
 
SerializableList::compatibility_iterator GetLastChildNode () const
 Get pointer to list node containing last serializable child object. More...
 
void SetParent (xsSerializable *parent)
 Set serializable parent object. More...
 
void SetParentManager (wxXmlSerializer *parent)
 Set parent data manager. More...
 
xsSerializableAddChild (xsSerializable *child)
 Add serializable child object to this object. More...
 
xsSerializableInsertChild (size_t pos, xsSerializable *child)
 Insert serializable child object to this object at given position. More...
 
void RemoveChild (xsSerializable *child)
 Remove serializable child item from this object (the child item will be destroyed). More...
 
void RemoveChildren ()
 Remove all child items (all items will be destroyed). More...
 
void Reparent (xsSerializable *parent)
 Assign this object as a child to given parent object. More...
 
void SetId (long id)
 Set ID of this object. Can be used for further objects' handling by wxXmlSerializer class (default ID value is -1). This functions should NOT be used directly; it is called by wxXmlSerializer object in the case that this serializable object is attached to another one (or directly to root node of wxXmlSerializer) by wxXmlSerializer::AddItem() member function. More...
 
long GetId () const
 Get object ID. More...
 
wxXmlNode * SerializeObject (wxXmlNode *node)
 Create new 'object' XML node and serialize all marked class data members (properties) into it. More...
 
void DeserializeObject (wxXmlNode *node)
 Deserialize marked class data members (properties) from appropriate fields of given parent 'object' XML node. More...
 
void AddProperty (xsProperty *property)
 Add new property to the property list. More...
 
void RemoveProperty (xsProperty *property)
 Remove given property from the property list. More...
 
xsPropertyGetProperty (const wxString &field)
 Get serialized property of given name. More...
 
PropertyList & GetProperties ()
 Get reference to properties list. More...
 
void EnablePropertySerialization (const wxString &field, bool enab)
 Enable/disable serialization of given property. More...
 
bool IsPropertySerialized (const wxString &field)
 Returns information whether the given property is serialized or not. More...
 
void EnableSerialization (bool enab)
 Enable/disable object serialization. More...
 
bool IsSerialized () const
 Returns information whether the object can be serialized or not. More...
 
void EnableCloning (bool enab)
 Enable/disable object cloning. More...
 
bool IsCloningEnabled () const
 Returns information whether the object can be cloned or not. More...
 
xsSerializableoperator<< (xsSerializable *child)
 Add serializable child object to this object. More...
 

Protected Member Functions

void TranslateArrow (wxPoint *trg, const wxRealPoint *src, int n, const wxRealPoint &from, const wxRealPoint &to)
 Rotate and move arrow's vertices in accordance of virtual line at which end the arrow will be placed. More...
 
- Protected Member Functions inherited from xsSerializable
void InitChild (xsSerializable *child)
 Initialize new child object. More...
 
virtual wxXmlNode * Serialize (wxXmlNode *node)
 Serialize stored properties to the given XML node. The serialization routine is automatically called by the framework and cares about serialization of all defined properties. More...
 
virtual void Deserialize (wxXmlNode *node)
 Deserialize object properties from the given XML node. The routine is automatically called by the framework and cares about deserialization of all defined properties. More...
 

Protected Attributes

wxSFShapeBasem_pParentShape
 Pointer to a parent shape. More...
 
- Protected Attributes inherited from xsSerializable
PropertyList m_lstProperties
 List of serialized properties. More...
 
SerializableList m_lstChildItems
 List of child objects. More...
 
xsSerializablem_pParentItem
 Pointer to parent serializable object. More...
 
wxXmlSerializerm_pParentManager
 Pointer to parent data manager. More...
 
bool m_fSerialize
 Object serialization flag. More...
 
bool m_fClone
 Object cloning flag. More...
 

Friends

class wxSFLineShape
 

Additional Inherited Members

- Public Types inherited from xsSerializable
enum  SEARCHMODE { searchDFS , searchBFS }
 

Detailed Description

Base class for a line arrows.

Constructor & Destructor Documentation

◆ wxSFArrowBase() [1/3]

wxSFArrowBase::wxSFArrowBase ( void  )

Default constructor.

◆ wxSFArrowBase() [2/3]

wxSFArrowBase::wxSFArrowBase ( wxSFShapeBase parent)

Constructor.

Parameters
parentPointer to a parent shape

◆ wxSFArrowBase() [3/3]

wxSFArrowBase::wxSFArrowBase ( const wxSFArrowBase obj)

Copy constructor.

Parameters
objSource base arrow shape

◆ ~wxSFArrowBase()

wxSFArrowBase::~wxSFArrowBase ( void  )

Destructor.

Member Function Documentation

◆ Draw()

virtual void wxSFArrowBase::Draw ( const wxRealPoint &  from,
const wxRealPoint &  to,
wxDC &  dc 
)
virtual

Draw arrow shape at the end of a virtual line.

Parameters
fromStart of the virtual line
toEnd of the virtual line
dcDevice context for drawing

Reimplemented in wxSFSolidArrow, wxSFOpenArrow, wxSFDiamondArrow, and wxSFCircleArrow.

◆ GetParentShape()

wxSFShapeBase* wxSFArrowBase::GetParentShape ( )
inline

Get pointer to a parent shape.

Returns
Pointer to a parent shape if exists, otherwise NULL

◆ SetParentShape()

void wxSFArrowBase::SetParentShape ( wxSFShapeBase parent)
inline

Set a parent of the arrow shape.

Parameters
parentPointer to the parent shape

◆ TranslateArrow()

void wxSFArrowBase::TranslateArrow ( wxPoint *  trg,
const wxRealPoint *  src,
int  n,
const wxRealPoint &  from,
const wxRealPoint &  to 
)
protected

Rotate and move arrow's vertices in accordance of virtual line at which end the arrow will be placed.

Parameters
trgPointer to array where translated vertices will be stored
srcPointer to array of source vertices
nNumber of vertices
fromStart of the virtual line
toEnd of the virtual line

◆ XS_DECLARE_CLONABLE_CLASS()

wxSFArrowBase::XS_DECLARE_CLONABLE_CLASS ( wxSFArrowBase  )

Friends And Related Function Documentation

◆ wxSFLineShape

friend class wxSFLineShape
friend

Member Data Documentation

◆ m_pParentShape

wxSFShapeBase* wxSFArrowBase::m_pParentShape
protected

Pointer to a parent shape.


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