00001 00008 #ifndef _GDOM_H_ 00009 #define _GDOM_H_ 00010 00011 class GVariant; 00012 #include "LgiInterfaces.h" 00013 #include "GArray.h" 00014 00016 class LgiClass GDom : virtual public GDomI 00017 { 00018 friend class GScriptEval; 00019 friend class GScriptEnginePrivate; 00020 friend class GDomRef; 00021 friend class GVirtualMachinePriv; 00022 00023 protected: 00024 GDom *ResolveObject(const char *Var, char *Name, char *Array); 00025 00026 virtual bool _OnAccess(bool Start) { return true; } 00027 virtual bool GetVariant(const char *Name, GVariant &Value, char *Array = 0) { return false; } 00028 virtual bool SetVariant(const char *Name, GVariant &Value, char *Array = 0) { return false; } 00029 virtual bool CallMethod(const char *Name, GArray<GVariant> &Args) { return false; } 00030 00031 public: 00033 bool GetValue 00034 ( 00036 const char *Var, 00038 GVariant &Value 00039 ); 00040 00042 bool SetValue 00043 ( 00045 const char *Var, 00047 GVariant &Value 00048 ); 00049 }; 00050 00051 #endif