]> git.sesse.net Git - vlc/blob - modules/gui/win32/playlist.h
* ./modules/*: moved plugins to the new tree. Yet untested builds include
[vlc] / modules / gui / win32 / playlist.h
1 /*****************************************************************************\r
2  * playlist.h: Interface for the playlist dialog\r
3  *****************************************************************************\r
4  * Copyright (C) 2002 VideoLAN\r
5  *\r
6  * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
7  *\r
8  * This program is free software; you can redistribute it and/or modify\r
9  * it under the terms of the GNU General Public License as published by\r
10  * the Free Software Foundation; either version 2 of the License, or\r
11  * (at your option) any later version.\r
12  * \r
13  * This program is distributed in the hope that it will be useful,\r
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
16  * GNU General Public License for more details.\r
17  *\r
18  * You should have received a copy of the GNU General Public License\r
19  * along with this program; if not, write to the Free Software\r
20  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.\r
21  *****************************************************************************/\r
22 \r
23 #ifndef playlistH\r
24 #define playlistH\r
25 //---------------------------------------------------------------------------\r
26 #include <Classes.hpp>\r
27 #include <Controls.hpp>\r
28 #include <StdCtrls.hpp>\r
29 #include <Forms.hpp>\r
30 #include <Buttons.hpp>\r
31 #include <Menus.hpp>\r
32 #include <Grids.hpp>\r
33 #include <ComCtrls.hpp>\r
34 \r
35 //---------------------------------------------------------------------------\r
36 class TPlaylistDlg : public TForm\r
37 {\r
38 __published:    // IDE-managed Components\r
39     TBitBtn *BitBtnOk;\r
40     TMainMenu *MainMenuPlaylist;\r
41     TMenuItem *MenuAdd;\r
42     TMenuItem *MenuAddFile;\r
43     TMenuItem *MenuAddDisc;\r
44     TMenuItem *MenuAddNet;\r
45     TMenuItem *MenuAddUrl;\r
46     TMenuItem *MenuDelete;\r
47     TMenuItem *MenuDeleteAll;\r
48     TMenuItem *MenuDeleteSelected;\r
49     TMenuItem *MenuSelection;\r
50     TMenuItem *MenuSelectionCrop;\r
51     TMenuItem *MenuSelectionInvert;\r
52     TListView *ListViewPlaylist;\r
53     TPopupMenu *PopupMenuPlaylist;\r
54     TMenuItem *PopupPlay;\r
55     TMenuItem *N1;\r
56     TMenuItem *PopupDeleteAll;\r
57     TMenuItem *PopupDeleteSelected;\r
58     TMenuItem *N2;\r
59     TMenuItem *PopupInvertSelection;\r
60     TMenuItem *PopupCropSelection;\r
61     void __fastcall FormShow( TObject *Sender );\r
62     void __fastcall FormHide( TObject *Sender );\r
63     void __fastcall BitBtnOkClick( TObject *Sender );\r
64     void __fastcall ListViewPlaylistDblClick( TObject *Sender );\r
65     void __fastcall ListViewPlaylistKeyDown( TObject *Sender, WORD &Key,\r
66             TShiftState Shift );\r
67     void __fastcall ListViewPlaylistCustomDrawItem( TCustomListView *Sender,\r
68             TListItem *Item, TCustomDrawState State, bool &DefaultDraw );\r
69     void __fastcall MenuAddFileClick( TObject *Sender );\r
70     void __fastcall MenuAddDiscClick( TObject *Sender );\r
71     void __fastcall MenuAddNetClick( TObject *Sender );\r
72     void __fastcall MenuAddUrlClick( TObject *Sender );\r
73     void __fastcall MenuDeleteSelectedClick( TObject *Sender );\r
74     void __fastcall MenuDeleteAllClick( TObject *Sender );\r
75     void __fastcall MenuSelectionInvertClick( TObject *Sender );\r
76     void __fastcall MenuSelectionCropClick( TObject *Sender );\r
77     void __fastcall PopupPlayClick( TObject *Sender );\r
78     void __fastcall PopupInvertSelectionClick( TObject *Sender );\r
79     void __fastcall PopupCropSelectionClick( TObject *Sender );\r
80     void __fastcall PopupDeleteSelectedClick( TObject *Sender );\r
81     void __fastcall PopupDeleteAllClick( TObject *Sender );\r
82 private:        // User declarations\r
83     char * __fastcall rindex( char *s, char c );\r
84 public:         // User declarations\r
85     __fastcall TPlaylistDlg( TComponent* Owner );\r
86     void __fastcall UpdateGrid( playlist_t * p_playlist );\r
87     void __fastcall Manage( intf_thread_t * p_intf );\r
88     void __fastcall DeleteItem( int i_pos );\r
89     void __fastcall Previous();\r
90     void __fastcall Next();\r
91 };\r
92 //---------------------------------------------------------------------------\r
93 #endif\r