#ifndef EPISODELISTVIEW_H #define EPISODELISTVIEW_H #include #include #include #include "data.h" #include "listview.h" #define ELVSIEPISODE 0 #define ELVSITITLE 1 #define ELVSIRATING 2 #define ELVMAX 8192 struct EpisodeListView : public ListView { EpisodeListView(HWND hWndParent); void EnsureFocusVisible(); void HandleContextMenu(WORD); LRESULT HandleNotify(LPARAM lParam); void Redraw(); void ResizeColumns(int w) override; void RestoreFocus(); void SaveFocus(); void SetTop(int iItem); /* Select next/previous unwatched episode. */ void SelectUnwatched(int dir); void ShowFocus(); void Sort(); /* Update episode list. */ void Update(); LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) override; private: signed char m_iSortCol; static int CALLBACK SortProc(LPARAM lParam1, LPARAM lParam2, LPARAM extra); FileView m_fv{L"elvdata.dat", ELVMAX}; }; #endif