diff options
Diffstat (limited to 'Src/Winamp/setup/spage_skin.h')
-rw-r--r-- | Src/Winamp/setup/spage_skin.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/Src/Winamp/setup/spage_skin.h b/Src/Winamp/setup/spage_skin.h new file mode 100644 index 00000000..3a380731 --- /dev/null +++ b/Src/Winamp/setup/spage_skin.h @@ -0,0 +1,52 @@ +#ifndef WINAMP_SKIN_SETUP_PAGE_HEADER +#define WINAMP_SKIN_SETUP_PAGE_HEADER + +#include "./ifc_setuppage.h" + +class setup_page_skin : public ifc_setuppage +{ +public: + setup_page_skin(); + virtual ~setup_page_skin(); + +public: + size_t AddRef(); + size_t Release(); + HRESULT GetName(bool bShort, const wchar_t **pszName); + HRESULT Save(HWND hwndText); + HRESULT CreateView(HWND hwndParent, HWND *phwnd); + HRESULT Revert(void); + HRESULT IsDirty(void); + HRESULT Validate(void); +protected: + INT_PTR PageDlgProc(UINT uMsg, WPARAM wParam, LPARAM lParam); + INT_PTR OnInitDialog(HWND hwndFocus, LPARAM lParam); + void OnDestroy(void); + INT_PTR OnColorStatic(HDC hdc, HWND hwndCtrl); + INT_PTR OnDrawItem(INT nCtrlID, DRAWITEMSTRUCT *pdis); + INT_PTR OnMeasureItem(INT nCtrlID, MEASUREITEMSTRUCT *pmis); + void OnCommand(INT nCtrlID, INT nEvntID, HWND hwndCtrl); + INT_PTR OnDeleteItem(INT nCtrlID, DELETEITEMSTRUCT *pdis); + INT_PTR OnCompareItem(INT nCtrlID, COMPAREITEMSTRUCT *pcis); + INT_PTR OnVKeyToItem(WORD vKey, INT index, HWND hwndCtrl); + INT_PTR OnCharToItem(WORD vKey, INT index, HWND hwndCtrl); + + void ListBox_OnDrawItem(DRAWITEMSTRUCT *pdis); + void ListBox_OnSelChange(HWND hwndCtrl); + void ListBox_OnItemDelete(DELETEITEMSTRUCT *pdis); + INT_PTR ListBox_OnItemCompare(COMPAREITEMSTRUCT *pcis); + INT_PTR ListBox_OnVKeyToItem(HWND hwndLB, WORD vKey, INT index); + INT_PTR ListBox_OnCharToItem(HWND hwndLB, WORD vKey, INT index); + +private: + size_t ref; + HWND hwnd; + HFONT hfLink; + int idxSelected; // internal crap + wchar_t szSelectionPath[MAX_PATH]; +protected: + friend static INT_PTR WINAPI DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); + RECVS_DISPATCH; +}; + +#endif //WINAMP_SKIN_SETUP_PAGE_HEADER
\ No newline at end of file |