winamp/Src/Plugins/General/gen_ml/skinnedcombo.h

42 lines
1.0 KiB
C++

#ifndef NULLOSFT_MEDIALIBRARY_SKINNED_COMBOBOX_HEADER
#define NULLOSFT_MEDIALIBRARY_SKINNED_COMBOBOX_HEADER
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
#include "./skinnedwnd.h"
class SkinnedCombobox : public SkinnedWnd
{
protected:
SkinnedCombobox(void);
virtual ~SkinnedCombobox(void);
public:
virtual BOOL SetStyle(UINT newStyle, BOOL bRedraw);
protected:
virtual BOOL Attach(HWND hwndCombo);
virtual LRESULT WindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam); // treat this as dialog proc
virtual void OnPaint(void);
BOOL IsButtonDown(DWORD windowStyle);
virtual void OnSkinUpdated(BOOL bNotifyChildren, BOOL bRedraw);
virtual INT OnNcHitTest(POINTS pts);
virtual void OnMouseLeave(void);
public:
static void DrawButton(HDC hdc, RECT *prcButton, BOOL bPressed, BOOL bActive);
private:
LRESULT SilenceMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
friend BOOL SkinWindowEx(HWND hwndToSkin, INT type, UINT style);
protected:
BOOL activeBorder;
};
#endif // NULLOSFT_MEDIALIBRARY_SKINNED_COMBOBOX_HEADER