wxShapeFramework  1.13.0 beta
xsProperty Class Reference

Class encapsulates a property stored in a list included inside a parent serializable object (class xsSerializable) which is serialized/deserialized to/from XML file. The property object type is defined by a string name and is processed by parent xsSerializable class object. More...

#include <XmlSerializer.h>

Inheritance diagram for xsProperty:
Collaboration diagram for xsProperty:

Public Member Functions

 DECLARE_DYNAMIC_CLASS (xsProperty)
 
 xsProperty ()
 Default constructor. More...
 
 xsProperty (void *src, const wxString &type, const wxString &field, const wxString &def=wxT(""))
 Constructor. More...
 
 xsProperty (bool *src, const wxString &field)
 Constructor for BOOL property. More...
 
 xsProperty (bool *src, const wxString &field, bool def)
 Constructor for BOOL property with defined default value. More...
 
 xsProperty (long *src, const wxString &field)
 Constructor for LONG property. More...
 
 xsProperty (long *src, const wxString &field, long def)
 Constructor for LONG property with defined default value. More...
 
 xsProperty (int *src, const wxString &field)
 Constructor for INT property. More...
 
 xsProperty (int *src, const wxString &field, int def)
 Constructor for INT property with defined default value. More...
 
 xsProperty (double *src, const wxString &field)
 Constructor for DOUBLE property. More...
 
 xsProperty (double *src, const wxString &field, double def)
 Constructor for DOUBLE property with defined default value. More...
 
 xsProperty (float *src, const wxString &field)
 Constructor for FLOAT property. More...
 
 xsProperty (float *src, const wxString &field, float def)
 Constructor for FLOAT property with defined default value. More...
 
 xsProperty (wxString *src, const wxString &field)
 Constructor for wxString property. More...
 
 xsProperty (wxString *src, const wxString &field, const wxString &def)
 Constructor for wxString property with defined default value. More...
 
 xsProperty (wxChar *src, const wxString &field)
 Constructor for wxChar property. More...
 
 xsProperty (wxChar *src, const wxString &field, wxChar def)
 Constructor for wxChar property with defined default value. More...
 
 xsProperty (wxPoint *src, const wxString &field)
 Constructor for wxPoint property. More...
 
 xsProperty (wxPoint *src, const wxString &field, const wxPoint &def)
 Constructor for wxPoint property with defined default value. More...
 
 xsProperty (wxRealPoint *src, const wxString &field)
 Constructor for wxRealPoint property. More...
 
 xsProperty (wxRealPoint *src, const wxString &field, const wxRealPoint &def)
 Constructor for wxRealPoint property with defined default value. More...
 
 xsProperty (wxSize *src, const wxString &field)
 Constructor for wxSize property. More...
 
 xsProperty (wxSize *src, const wxString &field, const wxSize &def)
 Constructor for wxSize property with defined default value. More...
 
 xsProperty (wxBrush *src, const wxString &field)
 Constructor for wxBrush property. More...
 
 xsProperty (wxBrush *src, const wxString &field, const wxBrush &def)
 Constructor for wxBrush property with defined default value. More...
 
 xsProperty (wxPen *src, const wxString &field)
 Constructor for wxPen property. More...
 
 xsProperty (wxPen *src, const wxString &field, const wxPen &def)
 Constructor for wxPen property with defined default value. More...
 
 xsProperty (wxFont *src, const wxString &field)
 Constructor for wxFont property. More...
 
 xsProperty (wxFont *src, const wxString &field, const wxFont &def)
 Constructor for wxFont property with defined default value. More...
 
 xsProperty (wxColour *src, const wxString &field)
 Constructor for wxColour property. More...
 
 xsProperty (wxColour *src, const wxString &field, const wxColour &def)
 Constructor for wxColour property with defined default value. More...
 
 xsProperty (wxArrayString *src, const wxString &field)
 Constructor for wxArrayString property. More...
 
 xsProperty (wxXS::CharArray *src, const wxString &field)
 Constructor for CharArray property. More...
 
 xsProperty (wxXS::IntArray *src, const wxString &field)
 Constructor for IntArray property. More...
 
 xsProperty (wxXS::LongArray *src, const wxString &field)
 Constructor for LongArray property. More...
 
 xsProperty (wxXS::DoubleArray *src, const wxString &field)
 Constructor for DoubleArray property. More...
 
 xsProperty (wxXS::RealPointArray *src, const wxString &field)
 Constructor for RealPointArray property. More...
 
 xsProperty (wxXS::RealPointList *src, const wxString &field)
 Constructor for RealPointList property. More...
 
 xsProperty (SerializableList *src, const wxString &field)
 Constructor for SerializableList property. More...
 
 xsProperty (wxXS::StringMap *src, const wxString &field)
 Constructor for StringMap property. More...
 
 xsProperty (xsSerializable *src, const wxString &field)
 Constructor for static serializable property. More...
 
 xsProperty (xsSerializable **src, const wxString &field)
 Constructor for dynamic serializable property. More...
 
 xsProperty (const xsProperty &obj)
 Copy constructor. More...
 
 ~xsProperty ()
 
wxVariant ToVariant ()
 Convert managed data to wxVariant (supported data types: int, long, bool, double, float, wxChar, wxString and wxArrayString). More...
 
wxString ToString ()
 Get textual representation of the property's value. More...
 
void FromString (const wxString &val)
 Set value defined by its textual representation. More...
 
bool & AsBool ()
 Get reference to managed data member as BOOL. More...
 
int & AsInt ()
 Get reference to managed data member as INT. More...
 
long & AsLong ()
 Get reference to managed data member as LONG. More...
 
float & AsFloat ()
 Get reference to managed data member as FLOAT. More...
 
double & AsDouble ()
 Get reference to managed data member as DOUBLE. More...
 
wxChar & AsChar ()
 Get reference to managed data member as wxChar. More...
 
wxString & AsString ()
 Get reference to managed data member as wxString. More...
 
wxSize & AsSize ()
 Get reference to managed data member as wxSize. More...
 
wxPoint & AsPoint ()
 Get reference to managed data member as wxPoint. More...
 
wxRealPoint & AsRealPoint ()
 Get reference to managed data member as wxRealPoint. More...
 
wxBrush & AsBrush ()
 Get reference to managed data member as wxBrush. More...
 
wxPen & AsPen ()
 Get reference to managed data member as wxPen. More...
 
wxFont & AsFont ()
 Get reference to managed data member as wxFont. More...
 
wxColour & AsColour ()
 Get reference to managed data member as wxColour. More...
 
wxArrayString & AsStringArray ()
 Get reference to managed data member as wxArrayString. More...
 
wxXS::CharArray & AsCharArray ()
 Get reference to managed data member as CharArray. More...
 
wxXS::IntArray & AsIntArray ()
 Get reference to managed data member as IntArray. More...
 
wxXS::LongArray & AsLongArray ()
 Get reference to managed data member as LongArray. More...
 
wxXS::DoubleArray & AsDoubleArray ()
 Get reference to managed data member as DoubleArray. More...
 
wxXS::RealPointArray & AsRealPointArray ()
 Get reference to managed data member as RealPointArray. More...
 
wxXS::RealPointList & AsRealPointList ()
 Get reference to managed data member as RealPointList. More...
 
SerializableListAsSerializableList ()
 Get reference to managed data member as SerializableList. More...
 
wxXS::StringMap & AsStringMap ()
 Get reference to managed data member as StringMap. More...
 
xsSerializableAsSerializableStatic ()
 Get reference to managed data member as serializable static object. More...
 
xsSerializableAsSerializableDynamic ()
 Get reference to managed data member as serializable dynamic object. More...
 

Public Attributes

void * m_pSourceVariable
 General (void) pointer to serialized object encapsulated by the property. More...
 
wxString m_sFieldName
 Field (property) name. More...
 
wxString m_sDataType
 Data type. More...
 
wxString m_sDefaultValueStr
 String representation of property's default value. More...
 
bool m_fSerialize
 Flag used for enabling/disabling of property serialization. More...
 

Detailed Description

Class encapsulates a property stored in a list included inside a parent serializable object (class xsSerializable) which is serialized/deserialized to/from XML file. The property object type is defined by a string name and is processed by parent xsSerializable class object.

Allowed property data types (keywords) are: 'long', 'double', 'bool', 'string', 'point', 'size', 'realpoint', 'colour', 'brush', 'pen', 'font', 'arraystring', 'arrayrealpoint', 'listrealpoint', 'listserializable', 'serializabledynamic' and 'serializablestatic'. Only properties of these data types are recognized and processed by parent serializable object.

Constructor & Destructor Documentation

◆ xsProperty() [1/42]

xsProperty::xsProperty ( )
inline

Default constructor.

◆ xsProperty() [2/42]

xsProperty::xsProperty ( void *  src,
const wxString &  type,
const wxString &  field,
const wxString &  def = wxT("") 
)
inline

Constructor.

Parameters
srcPointer to serialized object
typeString value describing data type of serialized object
fieldProperty name used in XML files and for property handling
defString representation of default poperty value

◆ xsProperty() [3/42]

xsProperty::xsProperty ( bool *  src,
const wxString &  field 
)
inline

Constructor for BOOL property.

◆ xsProperty() [4/42]

xsProperty::xsProperty ( bool *  src,
const wxString &  field,
bool  def 
)
inline

Constructor for BOOL property with defined default value.

◆ xsProperty() [5/42]

xsProperty::xsProperty ( long *  src,
const wxString &  field 
)
inline

Constructor for LONG property.

◆ xsProperty() [6/42]

xsProperty::xsProperty ( long *  src,
const wxString &  field,
long  def 
)
inline

Constructor for LONG property with defined default value.

◆ xsProperty() [7/42]

xsProperty::xsProperty ( int *  src,
const wxString &  field 
)
inline

Constructor for INT property.

◆ xsProperty() [8/42]

xsProperty::xsProperty ( int *  src,
const wxString &  field,
int  def 
)
inline

Constructor for INT property with defined default value.

◆ xsProperty() [9/42]

xsProperty::xsProperty ( double *  src,
const wxString &  field 
)
inline

Constructor for DOUBLE property.

◆ xsProperty() [10/42]

xsProperty::xsProperty ( double *  src,
const wxString &  field,
double  def 
)
inline

Constructor for DOUBLE property with defined default value.

◆ xsProperty() [11/42]

xsProperty::xsProperty ( float *  src,
const wxString &  field 
)
inline

Constructor for FLOAT property.

◆ xsProperty() [12/42]

xsProperty::xsProperty ( float *  src,
const wxString &  field,
float  def 
)
inline

Constructor for FLOAT property with defined default value.

◆ xsProperty() [13/42]

xsProperty::xsProperty ( wxString *  src,
const wxString &  field 
)
inline

Constructor for wxString property.

◆ xsProperty() [14/42]

xsProperty::xsProperty ( wxString *  src,
const wxString &  field,
const wxString &  def 
)
inline

Constructor for wxString property with defined default value.

◆ xsProperty() [15/42]

xsProperty::xsProperty ( wxChar *  src,
const wxString &  field 
)
inline

Constructor for wxChar property.

◆ xsProperty() [16/42]

xsProperty::xsProperty ( wxChar *  src,
const wxString &  field,
wxChar  def 
)
inline

Constructor for wxChar property with defined default value.

◆ xsProperty() [17/42]

xsProperty::xsProperty ( wxPoint *  src,
const wxString &  field 
)
inline

Constructor for wxPoint property.

◆ xsProperty() [18/42]

xsProperty::xsProperty ( wxPoint *  src,
const wxString &  field,
const wxPoint &  def 
)
inline

Constructor for wxPoint property with defined default value.

◆ xsProperty() [19/42]

xsProperty::xsProperty ( wxRealPoint *  src,
const wxString &  field 
)
inline

Constructor for wxRealPoint property.

◆ xsProperty() [20/42]

xsProperty::xsProperty ( wxRealPoint *  src,
const wxString &  field,
const wxRealPoint &  def 
)
inline

Constructor for wxRealPoint property with defined default value.

◆ xsProperty() [21/42]

xsProperty::xsProperty ( wxSize *  src,
const wxString &  field 
)
inline

Constructor for wxSize property.

◆ xsProperty() [22/42]

xsProperty::xsProperty ( wxSize *  src,
const wxString &  field,
const wxSize &  def 
)
inline

Constructor for wxSize property with defined default value.

◆ xsProperty() [23/42]

xsProperty::xsProperty ( wxBrush *  src,
const wxString &  field 
)
inline

Constructor for wxBrush property.

◆ xsProperty() [24/42]

xsProperty::xsProperty ( wxBrush *  src,
const wxString &  field,
const wxBrush &  def 
)
inline

Constructor for wxBrush property with defined default value.

◆ xsProperty() [25/42]

xsProperty::xsProperty ( wxPen *  src,
const wxString &  field 
)
inline

Constructor for wxPen property.

◆ xsProperty() [26/42]

xsProperty::xsProperty ( wxPen *  src,
const wxString &  field,
const wxPen &  def 
)
inline

Constructor for wxPen property with defined default value.

◆ xsProperty() [27/42]

xsProperty::xsProperty ( wxFont *  src,
const wxString &  field 
)
inline

Constructor for wxFont property.

◆ xsProperty() [28/42]

xsProperty::xsProperty ( wxFont *  src,
const wxString &  field,
const wxFont &  def 
)
inline

Constructor for wxFont property with defined default value.

◆ xsProperty() [29/42]

xsProperty::xsProperty ( wxColour *  src,
const wxString &  field 
)
inline

Constructor for wxColour property.

◆ xsProperty() [30/42]

xsProperty::xsProperty ( wxColour *  src,
const wxString &  field,
const wxColour &  def 
)
inline

Constructor for wxColour property with defined default value.

◆ xsProperty() [31/42]

xsProperty::xsProperty ( wxArrayString *  src,
const wxString &  field 
)
inline

Constructor for wxArrayString property.

◆ xsProperty() [32/42]

xsProperty::xsProperty ( wxXS::CharArray *  src,
const wxString &  field 
)
inline

Constructor for CharArray property.

◆ xsProperty() [33/42]

xsProperty::xsProperty ( wxXS::IntArray *  src,
const wxString &  field 
)
inline

Constructor for IntArray property.

◆ xsProperty() [34/42]

xsProperty::xsProperty ( wxXS::LongArray *  src,
const wxString &  field 
)
inline

Constructor for LongArray property.

◆ xsProperty() [35/42]

xsProperty::xsProperty ( wxXS::DoubleArray *  src,
const wxString &  field 
)
inline

Constructor for DoubleArray property.

◆ xsProperty() [36/42]

xsProperty::xsProperty ( wxXS::RealPointArray *  src,
const wxString &  field 
)
inline

Constructor for RealPointArray property.

◆ xsProperty() [37/42]

xsProperty::xsProperty ( wxXS::RealPointList *  src,
const wxString &  field 
)
inline

Constructor for RealPointList property.

◆ xsProperty() [38/42]

xsProperty::xsProperty ( SerializableList src,
const wxString &  field 
)
inline

Constructor for SerializableList property.

◆ xsProperty() [39/42]

xsProperty::xsProperty ( wxXS::StringMap *  src,
const wxString &  field 
)
inline

Constructor for StringMap property.

◆ xsProperty() [40/42]

xsProperty::xsProperty ( xsSerializable src,
const wxString &  field 
)
inline

Constructor for static serializable property.

◆ xsProperty() [41/42]

xsProperty::xsProperty ( xsSerializable **  src,
const wxString &  field 
)
inline

Constructor for dynamic serializable property.

◆ xsProperty() [42/42]

xsProperty::xsProperty ( const xsProperty obj)
inline

Copy constructor.

◆ ~xsProperty()

xsProperty::~xsProperty ( )
inline

Member Function Documentation

◆ AsBool()

bool& xsProperty::AsBool ( )
inline

Get reference to managed data member as BOOL.

Returns
Reference to managed data member

◆ AsBrush()

wxBrush& xsProperty::AsBrush ( )
inline

Get reference to managed data member as wxBrush.

Returns
Reference to managed data member

◆ AsChar()

wxChar& xsProperty::AsChar ( )
inline

Get reference to managed data member as wxChar.

Returns
Reference to managed data member

◆ AsCharArray()

wxXS::CharArray& xsProperty::AsCharArray ( )
inline

Get reference to managed data member as CharArray.

Returns
Reference to managed data member

◆ AsColour()

wxColour& xsProperty::AsColour ( )
inline

Get reference to managed data member as wxColour.

Returns
Reference to managed data member

◆ AsDouble()

double& xsProperty::AsDouble ( )
inline

Get reference to managed data member as DOUBLE.

Returns
Reference to managed data member

◆ AsDoubleArray()

wxXS::DoubleArray& xsProperty::AsDoubleArray ( )
inline

Get reference to managed data member as DoubleArray.

Returns
Reference to managed data member

◆ AsFloat()

float& xsProperty::AsFloat ( )
inline

Get reference to managed data member as FLOAT.

Returns
Reference to managed data member

◆ AsFont()

wxFont& xsProperty::AsFont ( )
inline

Get reference to managed data member as wxFont.

Returns
Reference to managed data member

◆ AsInt()

int& xsProperty::AsInt ( )
inline

Get reference to managed data member as INT.

Returns
Reference to managed data member

◆ AsIntArray()

wxXS::IntArray& xsProperty::AsIntArray ( )
inline

Get reference to managed data member as IntArray.

Returns
Reference to managed data member

◆ AsLong()

long& xsProperty::AsLong ( )
inline

Get reference to managed data member as LONG.

Returns
Reference to managed data member

◆ AsLongArray()

wxXS::LongArray& xsProperty::AsLongArray ( )
inline

Get reference to managed data member as LongArray.

Returns
Reference to managed data member

◆ AsPen()

wxPen& xsProperty::AsPen ( )
inline

Get reference to managed data member as wxPen.

Returns
Reference to managed data member

◆ AsPoint()

wxPoint& xsProperty::AsPoint ( )
inline

Get reference to managed data member as wxPoint.

Returns
Reference to managed data member

◆ AsRealPoint()

wxRealPoint& xsProperty::AsRealPoint ( )
inline

Get reference to managed data member as wxRealPoint.

Returns
Reference to managed data member

◆ AsRealPointArray()

wxXS::RealPointArray& xsProperty::AsRealPointArray ( )
inline

Get reference to managed data member as RealPointArray.

Returns
Reference to managed data member

◆ AsRealPointList()

wxXS::RealPointList& xsProperty::AsRealPointList ( )
inline

Get reference to managed data member as RealPointList.

Returns
Reference to managed data member

◆ AsSerializableDynamic()

xsSerializable& xsProperty::AsSerializableDynamic ( )
inline

Get reference to managed data member as serializable dynamic object.

Returns
Reference to managed data member

◆ AsSerializableList()

SerializableList& xsProperty::AsSerializableList ( )
inline

Get reference to managed data member as SerializableList.

Returns
Reference to managed data member

◆ AsSerializableStatic()

xsSerializable& xsProperty::AsSerializableStatic ( )
inline

Get reference to managed data member as serializable static object.

Returns
Reference to managed data member

◆ AsSize()

wxSize& xsProperty::AsSize ( )
inline

Get reference to managed data member as wxSize.

Returns
Reference to managed data member

◆ AsString()

wxString& xsProperty::AsString ( )
inline

Get reference to managed data member as wxString.

Returns
Reference to managed data member

◆ AsStringArray()

wxArrayString& xsProperty::AsStringArray ( )
inline

Get reference to managed data member as wxArrayString.

Returns
Reference to managed data member

◆ AsStringMap()

wxXS::StringMap& xsProperty::AsStringMap ( )
inline

Get reference to managed data member as StringMap.

Returns
Reference to managed data member

◆ DECLARE_DYNAMIC_CLASS()

xsProperty::DECLARE_DYNAMIC_CLASS ( xsProperty  )

◆ FromString()

void xsProperty::FromString ( const wxString &  val)
inline

Set value defined by its textual representation.

Parameters
valTextual representation of given value

◆ ToString()

wxString xsProperty::ToString ( )
inline

Get textual representation of the property's value.

Returns
Textual representation of current value

◆ ToVariant()

wxVariant xsProperty::ToVariant ( )
inline

Convert managed data to wxVariant (supported data types: int, long, bool, double, float, wxChar, wxString and wxArrayString).

Returns
wxVariant object containing the data

Member Data Documentation

◆ m_fSerialize

bool xsProperty::m_fSerialize

Flag used for enabling/disabling of property serialization.

◆ m_pSourceVariable

void* xsProperty::m_pSourceVariable

General (void) pointer to serialized object encapsulated by the property.

◆ m_sDataType

wxString xsProperty::m_sDataType

Data type.

◆ m_sDefaultValueStr

wxString xsProperty::m_sDefaultValueStr

String representation of property's default value.

◆ m_sFieldName

wxString xsProperty::m_sFieldName

Field (property) name.


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