winamp/Src/Wasabi/api/skin/objectactuator.h
2024-09-24 14:54:57 +02:00

50 lines
1.3 KiB
C++

#ifndef __OBJECTACTUATOR_H
#define __OBJECTACTUATOR_H
#include <api/skin/nakedobject.h>
#define OBJECTACTUATOR_PARENT NakedObject
// -----------------------------------------------------------------------
// Your wnd object class
class ObjectActuator : public OBJECTACTUATOR_PARENT {
public:
ObjectActuator();
virtual ~ObjectActuator();
virtual int onInit();
virtual int setXuiParam(int xuihandle, int xmlattributeid, const wchar_t *xmlattributename, const wchar_t *value);
virtual void actuator_setTarget(const wchar_t *value);
virtual void actuator_setGroup(const wchar_t *value);
virtual int actuator_wantTargetParam() { return 1; }
virtual int actuator_wantGroupParam() { return 1; }
virtual int actuator_wantAutoPerform() { return 1; }
virtual void actuator_onPerform(GuiObject *target) { } // called back n times for n targets found (separated by ';'), guaranteed non NULL
virtual const wchar_t *getActuatorTag(); // for error msgs purposes
protected:
void performActions();
/*static */void CreateXMLParameters(int master_handle);
private:
static XMLParamPair params[];
int myxuihandle;
enum {
OBJECTACTUATOR_TARGET= 0,
OBJECTACTUATOR_GROUP,
};
StringW groupid;
StringW objectsid;
};
#endif