15 #ifndef TEMU_SUPPORT_COMPONENT_H
16 #define TEMU_SUPPORT_COMPONENT_H
25 #ifndef TEMU_COMPONENT_DEFINED
26 #define TEMU_COMPONENT_DEFINED
28 #endif // !TEMU_COMPONENT_DEFINED
110 const char *Name,
void *Obj,
111 const char *PropName);
167 const char *ObjNameFmt, ...);
TEMU_API void temu_foreachComponent(void(*Func)(temu_Component *, void *), void *Arg)
TEMU_API void temu_componentDispose(void *Comp)
TEMU_API temu_Class * temu_registerComponent(const char *CompClass, temu_ObjectCreateFunc Create, temu_ObjectDisposeFunc Dispose)
TEMU_API temu_PropName temu_componentGetDelegateProp(temu_Component *Comp, const char *Name)
TEMU_API void * temu_componentGetObject(void *Comp, const char *Name)
TEMU_API void temu_componentAddDelegateIface(temu_Component *Comp, const char *Name, temu_IfaceRef Iface)
TEMU_API void * temu_createComponentObject(void *Comp, const char *Class, const temu_CreateArg *Args, const char *ObjNameFmt,...)
TEMU_API temu_Component * temu_componentCreate(const char *Name)
TEMU_API temu_IfaceRef temu_componentGetDelegateIface(temu_Component *Comp, const char *Name)
void *(* temu_ObjectCreateFunc)(const char *Name, int Argc, const temu_CreateArg *Argv)
void(* temu_ObjectDisposeFunc)(void *)
TEMU_API void temu_foreachRootComponent(void(*Func)(temu_Component *, void *), void *Arg)
struct temu_Component temu_Component
TEMU_API void temu_componentAddDelegateProp(temu_Component *Comp, const char *Name, void *Obj, const char *PropName)