]> git.sesse.net Git - vlc/blob - modules/gui/win32/mainframe.h
* compilation fix
[vlc] / modules / gui / win32 / mainframe.h
1 /*****************************************************************************\r
2  * mainframe.h: Prototype for main window\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 \r
24 #ifndef mainframeH\r
25 #define mainframeH\r
26 //---------------------------------------------------------------------------\r
27 #include <Classes.hpp>\r
28 #include <Controls.hpp>\r
29 #include <StdCtrls.hpp>\r
30 #include <Forms.hpp>\r
31 #include <ComCtrls.hpp>\r
32 #include <Dialogs.hpp>\r
33 #include <ImgList.hpp>\r
34 #include <Menus.hpp>\r
35 #include <ToolWin.hpp>\r
36 #include <AppEvnts.hpp>\r
37 #include <ExtCtrls.hpp>\r
38 #include "CSPIN.h"\r
39 #include <ActnList.hpp>\r
40 \r
41 #include <oleidl.h>                                   /* for drag and drop */\r
42 \r
43 /*****************************************************************************\r
44  * This message is sent to the controls registered as drop targets\r
45  *****************************************************************************/\r
46 #define WM_OLEDROP WM_USER + 1\r
47 \r
48 //---------------------------------------------------------------------------\r
49 class TMainFrameDlg : public TForm\r
50 {\r
51 __published:    // IDE-managed Components\r
52     TToolBar *ToolBar;\r
53     TToolButton *ToolButtonFile;\r
54     TToolButton *ToolButtonDisc;\r
55     TToolButton *ToolButtonNet;\r
56     TToolButton *ToolButtonSep1;\r
57     TToolButton *ToolButtonBack;\r
58     TToolButton *ToolButtonStop;\r
59     TToolButton *ToolButtonEject;\r
60     TToolButton *ToolButtonPlay;\r
61     TToolButton *ToolButtonPause;\r
62     TToolButton *ToolButtonSep2;\r
63     TToolButton *ToolButtonSlow;\r
64     TToolButton *ToolButtonFast;\r
65     TToolButton *ToolButtonSep3;\r
66     TToolButton *ToolButtonPlaylist;\r
67     TToolButton *ToolButtonPrev;\r
68     TToolButton *ToolButtonNext;\r
69     TMainMenu *MainMenu1;\r
70     TMenuItem *MenuFile;\r
71     TMenuItem *MenuOpenFile;\r
72     TMenuItem *MenuOpenDisc;\r
73     TMenuItem *MenuNetworkStream;\r
74     TMenuItem *MenuExit;\r
75     TMenuItem *MenuView;\r
76     TMenuItem *MenuHideinterface;\r
77     TMenuItem *MenuTitle;\r
78     TMenuItem *MenuChapter;\r
79     TMenuItem *MenuAngle;\r
80     TMenuItem *N3;\r
81     TMenuItem *MenuPlaylist;\r
82     TMenuItem *MenuMessages;\r
83     TMenuItem *MenuControls;\r
84     TMenuItem *MenuLanguage;\r
85     TMenuItem *MenuSubtitles;\r
86     TMenuItem *MenuPreferences;\r
87     TMenuItem *MenuHelp;\r
88     TMenuItem *MenuAbout;\r
89     TOpenDialog *OpenDialog1;\r
90     TImageList *ImageListToolbar;\r
91     TPopupMenu *PopupMenuMain;\r
92     TMenuItem *PopupPlay;\r
93     TMenuItem *PopupPause;\r
94     TMenuItem *PopupStop;\r
95     TMenuItem *PopupBack;\r
96     TMenuItem *PopupSlow;\r
97     TMenuItem *PopupFast;\r
98     TMenuItem *PopupToggleInterface;\r
99     TMenuItem *PopupNext;\r
100     TMenuItem *PopupPrev;\r
101     TMenuItem *PopupJump;\r
102     TMenuItem *PopupNavigation;\r
103     TMenuItem *PopupProgram;\r
104     TMenuItem *PopupLanguage;\r
105     TMenuItem *PopupSubtitles;\r
106     TMenuItem *PopupFile;\r
107     TMenuItem *PopupPlaylist;\r
108     TMenuItem *PopupPreferences;\r
109     TMenuItem *N7;\r
110     TMenuItem *PopupExit;\r
111     TStatusBar *StatusBar;\r
112     TGroupBox *GroupBoxFile;\r
113     TLabel *LabelFileName;\r
114     TGroupBox *GroupBoxNetwork;\r
115     TLabel *LabelChannel;\r
116     TLabel *LabelServer;\r
117     TGroupBox *GroupBoxDisc;\r
118     TMenuItem *N8;\r
119     TMenuItem *MenuProgram;\r
120     TLabel *LabelDisc;\r
121     TLabel *LabelTitle;\r
122     TButton *ButtonTitlePrev;\r
123     TButton *ButtonTitleNext;\r
124     TButton *ButtonChapterPrev;\r
125     TButton *ButtonChapterNext;\r
126     TLabel *LabelChapter;\r
127     TLabel *LabelTitleCurrent;\r
128     TLabel *LabelChapterCurrent;\r
129     TButton *ButtonGo;\r
130     TGroupBox *GroupBoxSlider;\r
131     TTrackBar *TrackBar;\r
132     TTimer *TimerManage;\r
133     TMenuItem *PopupOpenFile;\r
134     TMenuItem *PopupOpenDisc;\r
135     TMenuItem *PopupNetworkStream;\r
136     TMenuItem *PopupClose;\r
137     TMenuItem *N9;\r
138     TCSpinEdit *SpinEditChannel;\r
139     TActionList *ActionList1;\r
140     TAction *OpenFileAction;\r
141     TAction *OpenDiscAction;\r
142     TAction *NetworkStreamAction;\r
143     TAction *PlayAction;\r
144     TAction *PauseAction;\r
145     TAction *StopAction;\r
146     TAction *EjectAction;\r
147     TAction *SlowAction;\r
148     TAction *FastAction;\r
149     TAction *PreviousAction;\r
150     TAction *NextAction;\r
151     TAction *BackAction;\r
152     TAction *PlaylistAction;\r
153     TAction *ExitAction;\r
154     TAction *FullscreenAction;\r
155     TAction *PreferencesAction;\r
156     TAction *MessagesAction;\r
157     TAction *AboutAction;\r
158     TAction *PrevTitleAction;\r
159     TAction *NextTitleAction;\r
160     TAction *PrevChapterAction;\r
161     TAction *NextChapterAction;\r
162     TAction *VolumeUpAction;\r
163     TAction *VolumeDownAction;\r
164     TAction *MuteAction;\r
165     TAction *StreamOutputAction;\r
166     TAction *AddSubtitlesAction;\r
167     TMenuItem *Control1;\r
168     TMenuItem *N5;\r
169     TMenuItem *N10;\r
170     TMenuItem *N11;\r
171     TMenuItem *MenuChannel;\r
172     TMenuItem *PopupChannel;\r
173     TMenuItem *MenuVolumeUp;\r
174     TMenuItem *MenuVolumeDown;\r
175     TMenuItem *MenuMute;\r
176     TMenuItem *MenuADevice;\r
177     TMenuItem *PopupAudioSettings;\r
178     TMenuItem *PopupADevice;\r
179     TMenuItem *VolumeDown1;\r
180     TMenuItem *VolumeUp1;\r
181     TMenuItem *Mute1;\r
182     TMenuItem *MenuVDevice;\r
183     TMenuItem *N1;\r
184     TMenuItem *PopupVDevice;\r
185     TMenuItem *MenuStreamOuput;\r
186     TMenuItem *MenuAddSubtitles;\r
187     TMenuItem *N4;\r
188     TMenuItem *MenuAddInterface;\r
189     TAction *OnTopAction;\r
190     TMenuItem *MenuFullscreen;\r
191     TMenuItem *MenuOnTop;\r
192     TMenuItem *PopupFullscreen;\r
193     TMenuItem *Videosettings1;\r
194     TMenuItem *PopupOnTop;\r
195     void __fastcall TimerManageTimer( TObject *Sender );\r
196     void __fastcall TrackBarChange( TObject *Sender );\r
197     void __fastcall FormClose( TObject *Sender, TCloseAction &Action );\r
198     void __fastcall MenuHideinterfaceClick( TObject *Sender );\r
199     void __fastcall PopupCloseClick( TObject *Sender );\r
200     void __fastcall PopupToggleInterfaceClick( TObject *Sender );\r
201     void __fastcall PopupJumpClick( TObject *Sender );\r
202     void __fastcall ButtonGoClick( TObject *Sender );\r
203     void __fastcall OpenFileActionExecute( TObject *Sender );\r
204     void __fastcall OpenDiscActionExecute( TObject *Sender );\r
205     void __fastcall NetworkStreamActionExecute( TObject *Sender );\r
206     void __fastcall StreamOutputActionExecute( TObject *Sender );\r
207     void __fastcall ExitActionExecute( TObject *Sender );\r
208     void __fastcall PlaylistActionExecute( TObject *Sender );\r
209     void __fastcall MessagesActionExecute( TObject *Sender );\r
210     void __fastcall AboutActionExecute( TObject *Sender );\r
211     void __fastcall BackActionExecute( TObject *Sender );\r
212     void __fastcall PlayActionExecute( TObject *Sender );\r
213     void __fastcall PauseActionExecute( TObject *Sender );\r
214     void __fastcall StopActionExecute( TObject *Sender );\r
215     void __fastcall SlowActionExecute( TObject *Sender );\r
216     void __fastcall FastActionExecute( TObject *Sender );\r
217     void __fastcall PreviousActionExecute( TObject *Sender );\r
218     void __fastcall NextActionExecute( TObject *Sender );\r
219     void __fastcall EjectActionExecute( TObject *Sender );\r
220     void __fastcall VolumeUpActionExecute( TObject *Sender );\r
221     void __fastcall VolumeDownActionExecute( TObject *Sender );\r
222     void __fastcall MuteActionExecute( TObject *Sender );\r
223     void __fastcall FullscreenActionExecute( TObject *Sender );\r
224     void __fastcall PreferencesActionExecute( TObject *Sender );\r
225     void __fastcall PrevTitleActionExecute( TObject *Sender );\r
226     void __fastcall NextTitleActionExecute( TObject *Sender );\r
227     void __fastcall PrevChapterActionExecute( TObject *Sender );\r
228     void __fastcall NextChapterActionExecute( TObject *Sender );\r
229     void __fastcall AddSubtitlesActionsExecute( TObject *Sender );\r
230     void __fastcall OnTopActionExecute( TObject *Sender );\r
231 private:        // User declarations\r
232     intf_thread_t *p_intf;\r
233     /* drag and drop handling */\r
234     LPDROPTARGET lpDropTarget;\r
235     BEGIN_MESSAGE_MAP\r
236         MESSAGE_HANDLER( WM_OLEDROP, TMessage, OnDrop )\r
237     END_MESSAGE_MAP( TForm )\r
238 public:         // User declarations\r
239     TStringList *StringListPref;                   /* stores config dialogs */\r
240     __fastcall TMainFrameDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
241     virtual __fastcall ~TMainFrameDlg();\r
242     void __fastcall DisplayHint( TObject *Sender );\r
243     void __fastcall ModeManage();\r
244     void __fastcall CreatePreferences( AnsiString Name );\r
245     void __fastcall MenuProgramClick( TObject *Sender );\r
246     void __fastcall MenuAudioClick( TObject *Sender );\r
247     void __fastcall MenuSubtitleClick( TObject *Sender );\r
248     void __fastcall MenuTitleClick( TObject *Sender );\r
249     void __fastcall MenuChapterClick( TObject *Sender );\r
250     void __fastcall PopupProgramClick( TObject *Sender );\r
251     void __fastcall PopupAudioClick( TObject *Sender );\r
252     void __fastcall PopupSubtitleClick( TObject *Sender );\r
253     void __fastcall PopupNavigationClick( TObject *Sender );\r
254     void __fastcall OnDrop( TMessage &Msg );\r
255 };\r
256 //---------------------------------------------------------------------------\r
257 #endif\r