diff options
Diffstat (limited to 'Src/Plugins/General/gen_ff/wa2pledit.h')
-rw-r--r-- | Src/Plugins/General/gen_ff/wa2pledit.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/Src/Plugins/General/gen_ff/wa2pledit.h b/Src/Plugins/General/gen_ff/wa2pledit.h new file mode 100644 index 00000000..9c08f1d8 --- /dev/null +++ b/Src/Plugins/General/gen_ff/wa2pledit.h @@ -0,0 +1,68 @@ +#ifndef _WA2PLEDIT_H +#define _WA2PLEDIT_H + +#include <api/wnd/wndclass/listwnd.h> +#include "wa2playlist.h" + +#define WA2PLAYLISTEDITOR_PARENT ListWnd + +class Wa2PlaylistEditor; + +class Wa2PlaylistEditor : public WA2PLAYLISTEDITOR_PARENT +{ +public: + static GUID getInterfaceGuid() + { + // {265947B2-3EDB-453e-B748-EC17890F4FE4} + const GUID guid = + { 0x265947b2, 0x3edb, 0x453e, { 0xb7, 0x48, 0xec, 0x17, 0x89, 0xf, 0x4f, 0xe4 } }; + return guid; + } + + Wa2PlaylistEditor(); + virtual ~Wa2PlaylistEditor(); + + virtual int onInit(); + virtual int onResize(); + virtual int wantHScroll() { return 0; } + virtual void onVScrollToggle( int set ); + virtual COLORREF getTextColor( LPARAM lParam ); + virtual COLORREF getBgColor( LPARAM lParam ); + virtual void *getInterface( GUID interface_guid ); + virtual void setPlaylist( Wa2Playlist *playlist ); // -1 for working playlist + virtual int needFocusRect( LPARAM lParam ); + virtual COLORREF getFocusRectColor( LPARAM lParam ); + virtual void onSetVisible( int show ); + virtual int onDeferredCallback( intptr_t p1, intptr_t p2 ); + virtual void timerCallback( int id ); + virtual void onDoubleClick( int itemnum ); + + // object + virtual void onNewCurrentIndex( int idx ); + virtual void onPlaylistModified(); + + // class + static void _onNewCurrentIndex( int idx ); + static void _onPlaylistModified(); + virtual void loadList(); + +private: + void _loadList(); + void resizeCols(); + int calcTrackNumWidth(); + + Wa2Playlist *curplaylist; + static PtrList<Wa2PlaylistEditor> editors; + int cur_index; +}; + +// ----------------------------------------------------------------------- +extern const wchar_t Wa2PleditXuiObjectStr[]; +extern char Wa2PleditXuiSvcName[]; + +class Wa2PleditXuiSvc : public XuiObjectSvc<Wa2PlaylistEditor, Wa2PleditXuiObjectStr, Wa2PleditXuiSvcName> {}; + + +#endif + + |