mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-12-04 15:21:00 -05:00
62 lines
1 KiB
C
62 lines
1 KiB
C
|
#ifndef __CURSOR_H
|
||
|
#define __CURSOR_H
|
||
|
#ifdef _WIN32 // PORT ME
|
||
|
#include <bfc/dispatch.h>
|
||
|
#include <api/syscb/callbacks/skincb.h>
|
||
|
#include <bfc/string/bfcstring.h>
|
||
|
#include <bfc/string/StringW.h>
|
||
|
|
||
|
class Cursor : public Dispatchable
|
||
|
{
|
||
|
public:
|
||
|
OSCURSORHANDLE getOSHandle();
|
||
|
|
||
|
enum {
|
||
|
CURSOR_GETOSHANDLE = 0,
|
||
|
};
|
||
|
|
||
|
};
|
||
|
|
||
|
inline OSCURSORHANDLE Cursor::getOSHandle() {
|
||
|
return _call(CURSOR_GETOSHANDLE, (OSCURSORHANDLE)NULL);
|
||
|
}
|
||
|
|
||
|
class CursorI : public Cursor {
|
||
|
|
||
|
public:
|
||
|
|
||
|
CursorI() {}
|
||
|
virtual ~CursorI() {}
|
||
|
|
||
|
virtual OSCURSORHANDLE getOSHandle()=0;
|
||
|
|
||
|
protected:
|
||
|
|
||
|
RECVS_DISPATCH;
|
||
|
|
||
|
};
|
||
|
|
||
|
#ifdef WASABI_COMPILE_SKIN
|
||
|
|
||
|
class SkinCursor : public CursorI, public SkinCallbackI {
|
||
|
|
||
|
public:
|
||
|
|
||
|
SkinCursor();
|
||
|
SkinCursor(const wchar_t *elementid);
|
||
|
virtual ~SkinCursor();
|
||
|
|
||
|
virtual void setCursorElementId(const wchar_t *id);
|
||
|
virtual int skincb_onReset();
|
||
|
virtual OSCURSORHANDLE getOSHandle();
|
||
|
virtual void reset();
|
||
|
|
||
|
private:
|
||
|
|
||
|
StringW name;
|
||
|
OSCURSORHANDLE cursor;
|
||
|
};
|
||
|
|
||
|
#endif
|
||
|
#endif
|
||
|
#endif
|