Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members
|
Go to the source code of this file.
Namespaces | |
namespace | FX |
Defines | |
#define | FXDECLARE(classname) |
#define | FXIMPLEMENT(classname, baseclassname, mapping, nmappings) |
#define | FXDECLARE_ABSTRACT(classname) |
#define | FXIMPLEMENT_ABSTRACT(classname, baseclassname, mapping, nmappings) |
#define | FXMETACLASS(classname) (&classname::metaClass) |
#define | FXDEFMAP(classname) static const classname::FXMapEntry |
#define | FXMAPTYPES(typelo, typehi, func) {MKUINT(MINKEY,typelo),MKUINT(MAXKEY,typehi),&func} |
#define | FXMAPTYPE(type, func) {MKUINT(MINKEY,type),MKUINT(MAXKEY,type),&func} |
#define | FXMAPFUNCS(type, keylo, keyhi, func) {MKUINT(keylo,type),MKUINT(keyhi,type),&func} |
#define | FXMAPFUNC(type, key, func) {MKUINT(key,type),MKUINT(key,type),&func} |
Typedefs | |
typedef FXuint | FXSelector |
Enumerations | |
enum | { MINKEY = 0, MAXKEY = 65535 } |
enum | { MINTYPE = 0, MAXTYPE = 65535 } |
|
Value: public: \ struct FXMapEntry { FX::FXSelector keylo; FX::FXSelector keyhi; long (classname::* func)(FX::FXObject*,FX::FXSelector,void*); }; \ static const FX::FXMetaClass metaClass; \ static FX::FXObject* manufacture(); \ virtual long handle(FX::FXObject* sender,FX::FXSelector sel,void* ptr); \ virtual const FX::FXMetaClass* getMetaClass() const { return &metaClass; } \ friend FX::FXStream& operator<<(FX::FXStream& store,const classname* obj){return store.saveObject((FX::FXObjectPtr)(obj));} \ friend FX::FXStream& operator>>(FX::FXStream& store,classname*& obj){return store.loadObject((FX::FXObjectPtr&)(obj));} \
|
|
Value: FX::FXObject* classname::manufacture(){return new classname;} \ const FX::FXMetaClass classname::metaClass(#classname,classname::manufacture,&baseclassname::metaClass,mapping,nmappings,sizeof(classname::FXMapEntry)); \ long classname::handle(FX::FXObject* sender,FX::FXSelector sel,void* ptr){ \ const FXMapEntry* me=(const FXMapEntry*)metaClass.search(sel); \ return me ? (this->* me->func)(sender,sel,ptr) : baseclassname::handle(sender,sel,ptr); \ }
|
|
Value: public: \ struct FXMapEntry { FX::FXSelector keylo; FX::FXSelector keyhi; long (classname::* func)(FX::FXObject*,FX::FXSelector,void*); }; \ static const FX::FXMetaClass metaClass; \ virtual long handle(FX::FXObject* sender,FX::FXSelector sel,void* ptr); \ virtual const FX::FXMetaClass* getMetaClass() const { return &metaClass; } \ friend FX::FXStream& operator<<(FX::FXStream& store,const classname* obj){return store.saveObject((FX::FXObjectPtr)(obj));} \ friend FX::FXStream& operator>>(FX::FXStream& store,classname*& obj){return store.loadObject((FX::FXObjectPtr&)(obj));} \
|
|
Value: const FX::FXMetaClass classname::metaClass(#classname,NULL,&baseclassname::metaClass,mapping,nmappings,sizeof(classname::FXMapEntry)); \ long classname::handle(FX::FXObject* sender,FX::FXSelector sel,void* ptr){ \ const FXMapEntry* me=(const FXMapEntry*)metaClass.search(sel); \ return me ? (this->* me->func)(sender,sel,ptr) : baseclassname::handle(sender,sel,ptr); \ }
|
|
MetaClass of a class.
|
|
Set up map type.
|
|
Define range of function types.
|
|
Define range of function types.
|
|
Define range of functions.
|
|
Define one function.
|
|
Association key.
|
Copyright © 1997-2005 Jeroen van der Zijp |