winamp/Src/omBrowser/ifc_skinnedrating.h
2024-09-24 14:54:57 +02:00

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