63 lines
1.7 KiB
C++
63 lines
1.7 KiB
C++
#ifndef NULLSOFT_WINAMP_SKINNED_RATING_INTERFACE_HEADER
|
|
#define NULLSOFT_WINAMP_SKINNED_RATING_INTERFACE_HEADER
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
|
#pragma once
|
|
#endif
|
|
|
|
// {9CF4F23F-1F50-4f12-9B0A-A7F129E21AB8}
|
|
static const GUID IFC_SkinnedRating =
|
|
{ 0x9cf4f23f, 0x1f50, 0x4f12, { 0x9b, 0xa, 0xa7, 0xf1, 0x29, 0xe2, 0x1a, 0xb8 } };
|
|
|
|
|
|
#include <bfc/dispatch.h>
|
|
|
|
class ifc_menucustomizer;
|
|
|
|
class __declspec(novtable) ifc_skinnedrating : public Dispatchable
|
|
{
|
|
|
|
protected:
|
|
ifc_skinnedrating() {}
|
|
~ifc_skinnedrating() {}
|
|
|
|
public:
|
|
|
|
HRESULT Draw(HDC hdc, INT maxValue, INT value, INT trackingVal, RECT *prc, UINT fStyle);
|
|
HRESULT HitTest(POINT pt, INT maxValue, RECT *prc, UINT fStyle, LONG *result);
|
|
HRESULT CalcMinRect(INT maxValue, RECT *prc);
|
|
HRESULT CreateMenuCustomizer(HMENU hMenu, ifc_menucustomizer **customizer);
|
|
|
|
public:
|
|
DISPATCH_CODES
|
|
{
|
|
API_DRAW = 10,
|
|
API_HITTEST = 20,
|
|
API_CALCMINRECT = 30,
|
|
API_CREATEMENUCUSTOMIZER = 40,
|
|
};
|
|
};
|
|
|
|
inline HRESULT ifc_skinnedrating::Draw(HDC hdc, INT maxValue, INT value, INT trackingVal, RECT *prc, UINT fStyle)
|
|
{
|
|
return _call(API_DRAW, (HRESULT)E_NOTIMPL, hdc, maxValue, value, trackingVal, prc, fStyle);
|
|
}
|
|
|
|
inline HRESULT ifc_skinnedrating::HitTest(POINT pt, INT maxValue, RECT *prc, UINT fStyle, LONG *result)
|
|
{
|
|
return _call(API_HITTEST, (HRESULT)E_NOTIMPL, pt, maxValue, prc, fStyle, result);
|
|
}
|
|
|
|
inline HRESULT ifc_skinnedrating::CalcMinRect(INT maxValue, RECT *prc)
|
|
{
|
|
return _call(API_CALCMINRECT, (HRESULT)E_NOTIMPL, maxValue, prc);
|
|
}
|
|
|
|
inline HRESULT ifc_skinnedrating::CreateMenuCustomizer(HMENU hMenu, ifc_menucustomizer **customizer)
|
|
{
|
|
return _call(API_CREATEMENUCUSTOMIZER, (HRESULT)E_NOTIMPL, hMenu, customizer);
|
|
}
|
|
|
|
|
|
#endif // NULLSOFT_WINAMP_SKINNED_RATING_INTERFACE_HEADER
|