1
0

skinnedcombo.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #ifndef NULLOSFT_MEDIALIBRARY_SKINNED_COMBOBOX_HEADER
  2. #define NULLOSFT_MEDIALIBRARY_SKINNED_COMBOBOX_HEADER
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. #include "./skinnedwnd.h"
  7. class SkinnedCombobox : public SkinnedWnd
  8. {
  9. protected:
  10. SkinnedCombobox(void);
  11. virtual ~SkinnedCombobox(void);
  12. public:
  13. virtual BOOL SetStyle(UINT newStyle, BOOL bRedraw);
  14. protected:
  15. virtual BOOL Attach(HWND hwndCombo);
  16. virtual LRESULT WindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam); // treat this as dialog proc
  17. virtual void OnPaint(void);
  18. BOOL IsButtonDown(DWORD windowStyle);
  19. virtual void OnSkinUpdated(BOOL bNotifyChildren, BOOL bRedraw);
  20. virtual INT OnNcHitTest(POINTS pts);
  21. virtual void OnMouseLeave(void);
  22. public:
  23. static void DrawButton(HDC hdc, RECT *prcButton, BOOL bPressed, BOOL bActive);
  24. private:
  25. LRESULT SilenceMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
  26. friend BOOL SkinWindowEx(HWND hwndToSkin, INT type, UINT style);
  27. protected:
  28. BOOL activeBorder;
  29. };
  30. #endif // NULLOSFT_MEDIALIBRARY_SKINNED_COMBOBOX_HEADER