spage_skin.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #ifndef WINAMP_SKIN_SETUP_PAGE_HEADER
  2. #define WINAMP_SKIN_SETUP_PAGE_HEADER
  3. #include "./ifc_setuppage.h"
  4. class setup_page_skin : public ifc_setuppage
  5. {
  6. public:
  7. setup_page_skin();
  8. virtual ~setup_page_skin();
  9. public:
  10. size_t AddRef();
  11. size_t Release();
  12. HRESULT GetName(bool bShort, const wchar_t **pszName);
  13. HRESULT Save(HWND hwndText);
  14. HRESULT CreateView(HWND hwndParent, HWND *phwnd);
  15. HRESULT Revert(void);
  16. HRESULT IsDirty(void);
  17. HRESULT Validate(void);
  18. protected:
  19. INT_PTR PageDlgProc(UINT uMsg, WPARAM wParam, LPARAM lParam);
  20. INT_PTR OnInitDialog(HWND hwndFocus, LPARAM lParam);
  21. void OnDestroy(void);
  22. INT_PTR OnColorStatic(HDC hdc, HWND hwndCtrl);
  23. INT_PTR OnDrawItem(INT nCtrlID, DRAWITEMSTRUCT *pdis);
  24. INT_PTR OnMeasureItem(INT nCtrlID, MEASUREITEMSTRUCT *pmis);
  25. void OnCommand(INT nCtrlID, INT nEvntID, HWND hwndCtrl);
  26. INT_PTR OnDeleteItem(INT nCtrlID, DELETEITEMSTRUCT *pdis);
  27. INT_PTR OnCompareItem(INT nCtrlID, COMPAREITEMSTRUCT *pcis);
  28. INT_PTR OnVKeyToItem(WORD vKey, INT index, HWND hwndCtrl);
  29. INT_PTR OnCharToItem(WORD vKey, INT index, HWND hwndCtrl);
  30. void ListBox_OnDrawItem(DRAWITEMSTRUCT *pdis);
  31. void ListBox_OnSelChange(HWND hwndCtrl);
  32. void ListBox_OnItemDelete(DELETEITEMSTRUCT *pdis);
  33. INT_PTR ListBox_OnItemCompare(COMPAREITEMSTRUCT *pcis);
  34. INT_PTR ListBox_OnVKeyToItem(HWND hwndLB, WORD vKey, INT index);
  35. INT_PTR ListBox_OnCharToItem(HWND hwndLB, WORD vKey, INT index);
  36. private:
  37. size_t ref;
  38. HWND hwnd;
  39. HFONT hfLink;
  40. int idxSelected; // internal crap
  41. wchar_t szSelectionPath[MAX_PATH];
  42. protected:
  43. friend static INT_PTR WINAPI DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
  44. RECVS_DISPATCH;
  45. };
  46. #endif //WINAMP_SKIN_SETUP_PAGE_HEADER