winamp/Src/Wasabi/api/script/objects/rootobj.h

41 lines
1.2 KiB
C++

#ifndef __ROOTOBJ_H
#define __ROOTOBJ_H
#include <bfc/dispatch.h>
#include <api/script/objects/rootobjcbi.h>
#include <api/script/scriptobji.h>
class ScriptObject;
class ScriptObjectI;
class RootObject;
// RootObjectInstance::this == RootObjectInstance::getScriptObject()->vcpu_getInterface(rootObjectInstanceGuid);
// {F6D49468-4036-41a1-9683-C372416AD31B}
static const GUID rootObjectInstanceGuid =
{ 0xf6d49468, 0x4036, 0x41a1, { 0x96, 0x83, 0xc3, 0x72, 0x41, 0x6a, 0xd3, 0x1b } };
// Instantiate this class to create an object from which you can trap notify events, or inherit from
// it if you want to implement your own descendant of script class 'Object' (see GuiObjectWnd)
class RootObjectInstance : public RootObjectCallbackI
{
public:
RootObjectInstance();
virtual ~RootObjectInstance();
virtual RootObject *getRootObject();
virtual ScriptObject *getScriptObject();
virtual void rootobjectcb_onNotify(const wchar_t *a, const wchar_t *b, int c, int d) {};
virtual const wchar_t *getClassName();
virtual void notify(const wchar_t *s, const wchar_t *t, int u, int v);
private:
void rootobject_init();
ScriptObjectI my_script_object;
RootObject * my_root_object;
};
#endif