id.h File Reference

Id based property system with its base a2dPropertyId. More...

#include "wx/wx.h"
#include "wx/hashmap.h"
#include "wx/filename.h"
#include "wx/tipwin.h"
#include "wx/general/smrtptr.h"

Include dependency graph for id.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  a2dIdBase
 A class for id's of various kinds. More...
class  a2dPropertyId
 This is the base class for all kinds of property id's for a2dObject. More...
class  a2dPropertyIdProp< proptype >
 This template class is for property ids meant for properties that do not encapsulate another type. More...
class  a2dPropertyIdTyped< basetype, proptype >
 This template class is for property ids with a known data type. More...
class  a2dPropertyIdGetSet< basetype, proptype >
class  a2dMemberDclrTyped< basetype, proptype >
 Like a2dPropertyIdTyped, but always references a certain member in a certain class. More...

Defines

#define CLASSNAME(name)   wxT(#name)
 This macro is used to set as the name of a class.
#define A2D_PROPID_GSI_F(type, classname, propname, defaultval, flags)
 to define a get set property more easily
#define A2D_PROPID_GSI(type, classname, propname, defaultval)   A2D_PROPID_GSI_F( type, classname, propname, defaultval, a2dPropertyId::flag_none )
 to define a get set property more easily
#define A2D_PROPID_GS_F(type, classname, propname, defaultval, fget, fset, flags)
 to define a get set property more easily
#define A2D_PROPID_GS(type, classname, propname, defaultval, fget, fset)   A2D_PROPID_GS_F( type, classname, propname, defaultval, fget, fset, a2dPropertyId::flag_none )
 to define a get set property more easily
#define A2D_PROPID_D_F(type, propname, defaultval, flags)
 to define a get set property more easily
#define A2D_PROPID_D(type, propname, defaultval)   A2D_PROPID_D_F( type, propname, defaultval, a2dPropertyId::flag_none )
#define A2D_PROPID_M_F(type, classname, propname, defaultval, mptr, flags)
 to define a get set property more easily
#define A2D_PROPID_M(type, classname, propname, defaultval, mptr)   A2D_PROPID_M_F( type, classname, propname, defaultval, mptr, a2dPropertyId::flag_none )
 to define a get set property more easily

Typedefs

typedef a2dPtrList< a2dPropertyIda2dPropertyIdList
 list to hold a set of property id objects pointers
typedef a2dPropertyIdTyped
< wxInt16, a2dInt16Property
a2dPropertyIdInt16
 property of this type
typedef a2dPropertyIdTyped
< wxInt32, a2dInt32Property
a2dPropertyIdInt32
 property of this type
typedef a2dPropertyIdTyped
< wxUint16, a2dUint16Property
a2dPropertyIdUint16
 property of this type
typedef a2dPropertyIdTyped
< wxUint32, a2dUint32Property
a2dPropertyIdUint32
 property of this type
typedef a2dPropertyIdTyped
< bool, a2dBoolProperty
a2dPropertyIdBool
 property of this type
typedef a2dPropertyIdTyped
< double, a2dDoubleProperty
a2dPropertyIdDouble
 property of this type
typedef a2dPropertyIdTyped
< float, a2dFloatProperty
a2dPropertyIdFloat
 property of this type
typedef a2dPropertyIdTyped
< void *, a2dVoidPtrProperty
a2dPropertyIdVoidPtr
 property of this type
typedef a2dPropertyIdTyped
< wxObject, a2dObjectProperty
a2dPropertyIdObject
 property of this type
typedef a2dPropertyIdTyped
< wxString, a2dStringProperty
a2dPropertyIdString
 property of this type
typedef a2dPropertyIdTyped
< wxFileName,
a2dFileNameProperty
a2dPropertyIdFileName
 property of this type
typedef a2dPropertyIdTyped
< wxDateTime,
a2dDateTimeProperty
a2dPropertyIdDateTime
 property of this type
typedef a2dPropertyIdTyped
< wxMenu *, a2dMenuProperty
a2dPropertyIdMenu
 property of this type
typedef a2dPropertyIdTyped
< wxWindow
*, a2dWindowProperty
a2dPropertyIdWindow
 property of this type
typedef a2dPropertyIdTyped
< wxColour, a2dColourProperty
a2dPropertyIdColour
typedef a2dPropertyIdTyped
< wxArrayString,
a2dArrayStringProperty
a2dPropertyIdArrayString
 property of this type
typedef a2dPropertyIdTyped
< a2dSmrtPtr< a2dObject >
, a2dProperty
a2dPropertyIdRefObject
 property of this type
typedef a2dPropertyIdTyped
< a2dAutoZeroPtr< a2dObject >
, a2dAutoZeroProperty
a2dPropertyIdRefObjectAutoZero
 property of this type
typedef a2dPropertyIdGetSet
< bool, a2dBoolProperty
a2dPropertyIdBoolGetSet
typedef a2dMemberDclrTyped
< wxInt16, a2dInt16Property
wxMemberDclrInt16
 for member associated properties of this type
typedef a2dMemberDclrTyped
< wxInt32, a2dInt32Property
wxMemberDclrInt32
 for member associated properties of this type
typedef a2dMemberDclrTyped
< wxUint16, a2dUint16Property
wxMemberDclrUint16
 for member associated properties of this type
typedef a2dMemberDclrTyped
< wxUint32, a2dUint32Property
wxMemberDclrUint32
 for member associated properties of this type
typedef a2dMemberDclrTyped
< bool, a2dBoolProperty
wxMemberDclrBool
 for member associated properties of this type
typedef a2dMemberDclrTyped
< double, a2dDoubleProperty
wxMemberDclrDouble
 for member associated properties of this type
typedef a2dMemberDclrTyped
< void *, a2dVoidPtrProperty
wxMemberDclrVoidPtr
 for member associated properties of this type
typedef a2dMemberDclrTyped
< wxString, a2dStringProperty
wxMemberDclrString
 for member associated properties of this type
typedef a2dMemberDclrTyped
< wxFileName,
a2dFileNameProperty
wxMemberDclrFileName
 for member associated properties of this type
typedef a2dMemberDclrTyped
< wxColour, a2dColourProperty
wxMemberDclrColour
 for member associated properties of this type
typedef a2dMemberDclrTyped
< wxArrayString,
a2dArrayStringProperty
wxMemberDclrArrayString
 for member associated properties of this type

Functions

 WX_DECLARE_STRING_HASH_MAP (a2dPropertyId *, a2dPropertyIdHashMap)
 Declaration of the hash map type to convert prop names to prop id objects.

Variables

class A2DGENERALDLLEXP a2dObject
class A2DGENERALDLLEXP a2dPropObject
class A2DGENERALDLLEXP a2dPropertyId
class A2DGENERALDLLEXP a2dNamedProperty
class A2DGENERALDLLEXP a2dInt16Property
class A2DGENERALDLLEXP a2dInt32Property
class A2DGENERALDLLEXP a2dUint16Property
class A2DGENERALDLLEXP a2dUint32Property
class A2DGENERALDLLEXP a2dBoolProperty
class A2DGENERALDLLEXP a2dFloatProperty
class A2DGENERALDLLEXP a2dDoubleProperty
class A2DGENERALDLLEXP a2dVoidPtrProperty
class A2DGENERALDLLEXP a2dObjectProperty
class A2DGENERALDLLEXP a2dStringProperty
class A2DGENERALDLLEXP a2dFileNameProperty
class A2DGENERALDLLEXP a2dDateTimeProperty
class A2DGENERALDLLEXP a2dMenuProperty
class A2DGENERALDLLEXP a2dWindowProperty
class A2DGENERALDLLEXP a2dTipWindowProperty
class A2DGENERALDLLEXP a2dColourProperty
class A2DGENERALDLLEXP a2dArrayStringProperty
class A2DGENERALDLLEXP a2dProperty
class A2DGENERALDLLEXP a2dAutoZeroProperty
class A2DGENERALDLLEXP a2dNamedPropertyList


Detailed Description

Id based property system with its base a2dPropertyId.

Properties in wxDocview are template based. Each property type is a unique instance of a specific class, and that is what its ID is. A derived property class with an ID can be used by other classes like a2dPropObject to store properties in itself. Each property with a specific ID can store the specific information where that property ID class was designed for.

Author:
Michael S�trop
Date:
Created 12/12/2003
Copyright: 2003-2004 (c) Michael S�trop

Licence: wxWidgets Licence

RCS-ID:

Id
id.h,v 1.31 2008/10/30 23:18:09 titato Exp

Definition in file id.h.


Define Documentation

#define A2D_PROPID_D_F ( type,
propname,
defaultval,
flags   ) 

Value:

PROPID_##propname = new type( wxT(#propname), \
                           flags, defaultval ); \
     AddPropertyId( PROPID_##propname );
to define a get set property more easily

Definition at line 708 of file id.h.

#define A2D_PROPID_GS_F ( type,
classname,
propname,
defaultval,
fget,
fset,
flags   ) 

Value:

PROPID_##propname = new type( wxT(#propname), \
                           flags, defaultval, \
                           static_cast < type::Get >( &classname::fget), \
                           static_cast < type::Set >( &classname::fset) ) ; \
     AddPropertyId( PROPID_##propname );
to define a get set property more easily

Definition at line 696 of file id.h.

#define A2D_PROPID_GSI_F ( type,
classname,
propname,
defaultval,
flags   ) 

Value:

PROPID_##propname = new type( wxT(#propname), \
                           flags, defaultval, \
                           static_cast < type::Get >( &classname::Get##propname), \
                           static_cast < type::Set >( &classname::Set##propname) ); \
    AddPropertyId( PROPID_##propname );
to define a get set property more easily

Definition at line 684 of file id.h.

#define A2D_PROPID_M_F ( type,
classname,
propname,
defaultval,
mptr,
flags   ) 

Value:

PROPID_##propname = new type( wxT(#propname), \
                           flags, defaultval, \
                           static_cast < type::Mptr >( &classname::mptr) ); \
     AddPropertyId( PROPID_##propname );
to define a get set property more easily

Definition at line 717 of file id.h.

#define CLASSNAME ( name   )     wxT(#name)

This macro is used to set as the name of a class.

a2dPropertyId knows how to create a a2dNamedProperty from itself, and a a2dPropertyId can be found by its name from the hash of all a2dPropertyId's created.

Definition at line 38 of file id.h.

id.h File Reference -- Tue Aug 31 18:03:52 2010 -- 31 Aug 2010 -- 1.5.5 -- wxArt2D -- . -- Main Page Reference Documentation