+ added a "Open Capture Device..." menu entry.
+ a bit of clean-up.
/* include the icon graphic */
#include "../../../share/vlc32x32.xpm"
+/* Dialogs Provider */
+class DialogsProvider: public wxFrame
+{
+public:
+ /* Constructor */
+ DialogsProvider( intf_thread_t *p_intf, wxWindow *p_parent );
+ virtual ~DialogsProvider();
+
+private:
+ void Open( int i_access_method, int i_arg );
+
+ /* Event handlers (these functions should _not_ be virtual) */
+ void OnExit( wxCommandEvent& event );
+ void OnPlaylist( wxCommandEvent& event );
+ void OnMessages( wxCommandEvent& event );
+ void OnFileInfo( wxCommandEvent& event );
+ void OnPreferences( wxCommandEvent& event );
+ void OnStreamWizardDialog( wxCommandEvent& event );
+ void OnWizardDialog( wxCommandEvent& event );
+ void OnBookmarks( wxCommandEvent& event );
+
+ void OnOpenFileGeneric( wxCommandEvent& event );
+ void OnOpenFileSimple( wxCommandEvent& event );
+ void OnOpenFile( wxCommandEvent& event );
+ void OnOpenDisc( wxCommandEvent& event );
+ void OnOpenNet( wxCommandEvent& event );
+ void OnOpenCapture( wxCommandEvent& event );
+ void OnOpenSat( wxCommandEvent& event );
+
+ void OnPopupMenu( wxCommandEvent& event );
+
+ void OnIdle( wxIdleEvent& event );
+
+ void OnExitThread( wxCommandEvent& event );
+
+ DECLARE_EVENT_TABLE();
+
+ intf_thread_t *p_intf;
+
+public:
+ /* Secondary windows */
+ OpenDialog *p_open_dialog;
+ wxFileDialog *p_file_dialog;
+ Playlist *p_playlist_dialog;
+ Messages *p_messages_dialog;
+ FileInfo *p_fileinfo_dialog;
+ StreamDialog *p_streamwizard_dialog;
+ WizardDialog *p_wizard_dialog;
+ wxFrame *p_prefs_dialog;
+ wxWindow *p_bookmarks_dialog;
+ wxFileDialog *p_file_generic_dialog;
+};
+
DEFINE_LOCAL_EVENT_TYPE( wxEVT_DIALOG );
BEGIN_EVENT_TABLE(DialogsProvider, wxFrame)
EVT_COMMAND(INTF_DIALOG_FILE, wxEVT_DIALOG, DialogsProvider::OnOpenFile)
EVT_COMMAND(INTF_DIALOG_DISC, wxEVT_DIALOG, DialogsProvider::OnOpenDisc)
EVT_COMMAND(INTF_DIALOG_NET, wxEVT_DIALOG, DialogsProvider::OnOpenNet)
+ EVT_COMMAND(INTF_DIALOG_CAPTURE, wxEVT_DIALOG,
+ DialogsProvider::OnOpenCapture)
EVT_COMMAND(INTF_DIALOG_FILE_SIMPLE, wxEVT_DIALOG,
DialogsProvider::OnOpenFileSimple)
EVT_COMMAND(INTF_DIALOG_FILE_GENERIC, wxEVT_DIALOG,
DialogsProvider::OnExitThread)
END_EVENT_TABLE()
+wxWindow *CreateDialogsProvider( intf_thread_t *p_intf, wxWindow *p_parent )
+{
+ return new DialogsProvider( p_intf, p_parent );
+}
+
/*****************************************************************************
* Constructor.
*****************************************************************************/
Open( NET_ACCESS, event.GetInt() );
}
+void DialogsProvider::OnOpenCapture( wxCommandEvent& event )
+{
+ Open( CAPTURE_ACCESS, event.GetInt() );
+}
+
void DialogsProvider::Open( int i_access_method, int i_arg )
{
/* Show/hide the open dialog */
OpenFile_Event,
OpenDisc_Event,
OpenNet_Event,
+ OpenCapture_Event,
OpenSat_Event,
OpenOther_Event,
EjectDisc_Event,
EVT_MENU(OpenFile_Event, Interface::OnShowDialog)
EVT_MENU(OpenDisc_Event, Interface::OnShowDialog)
EVT_MENU(OpenNet_Event, Interface::OnShowDialog)
+ EVT_MENU(OpenCapture_Event, Interface::OnShowDialog)
EVT_MENU(OpenSat_Event, Interface::OnShowDialog)
EVT_MENU(StreamWizard_Event, Interface::OnShowDialog)
EVT_MENU(Wizard_Event, Interface::OnShowDialog)
*****************************************************************************/
void Interface::CreateOurMenuBar()
{
-#define HELP_SIMPLE N_("Quick file open")
-#define HELP_ADV N_("Advanced open")
-#define HELP_FILE N_("Open a file")
-#define HELP_DISC N_("Open Disc Media")
-#define HELP_NET N_("Open a network stream")
-#define HELP_SAT N_("Open a satellite stream")
-#define HELP_EJECT N_("Eject the DVD/CD")
-#define HELP_EXIT N_("Exit this program")
-
-#define HELP_STREAMWIZARD N_("Open the streaming wizard")
-
-#define HELP_PLAYLIST N_("Open the playlist")
-#define HELP_LOGS N_("Show the program logs")
-#define HELP_FILEINFO N_("Show information about the file being played")
-
-#define HELP_PREFS N_("Go to the preferences menu")
-#define HELP_EXTENDED N_("Shows the extended GUI")
-#define HELP_BOOKMARKS N_("Shows the bookmarks window")
-
-#define HELP_ABOUT N_("About this program")
-
/* Create the "File" menu */
wxMenu *file_menu = new wxMenu;
file_menu->Append( OpenFileSimple_Event,
- wxU(_("Quick &Open File...\tCtrl-O")),
- wxU(_(HELP_SIMPLE)) );
+ wxU(_("Quick &Open File...\tCtrl-O")) );
file_menu->AppendSeparator();
- file_menu->Append( OpenFile_Event, wxU(_("Open &File...\tCtrl-F")),
- wxU(_(HELP_FILE)));
- file_menu->Append( OpenDisc_Event, wxU(_("Open &Disc...\tCtrl-D")),
- wxU(_(HELP_DISC)));
+ file_menu->Append( OpenFile_Event, wxU(_("Open &File...\tCtrl-F")) );
+ file_menu->Append( OpenDisc_Event, wxU(_("Open &Disc...\tCtrl-D")) );
file_menu->Append( OpenNet_Event,
- wxU(_("Open &Network Stream...\tCtrl-N")),
- wxU(_(HELP_NET)));
+ wxU(_("Open &Network Stream...\tCtrl-N")) );
+ file_menu->Append( OpenCapture_Event,
+ wxU(_("Open &Capture Device...\tCtrl-C")) );
file_menu->AppendSeparator();
file_menu->Append( StreamWizard_Event,
- wxU(_("Streaming &Wizard...\tCtrl-W")),
- wxU(_(HELP_STREAMWIZARD)) );
- file_menu->Append( Wizard_Event, wxU(_("New Wizard...")),
- wxU(_(HELP_STREAMWIZARD)) );
+ wxU(_("Streaming &Wizard...\tCtrl-W")) );
+ file_menu->Append( Wizard_Event, wxU(_("New Wizard...")) );
file_menu->AppendSeparator();
- file_menu->Append( Exit_Event, wxU(_("E&xit\tCtrl-X")),
- wxU(_(HELP_EXIT)) );
+ file_menu->Append( Exit_Event, wxU(_("E&xit\tCtrl-X")) );
/* Create the "View" menu */
wxMenu *view_menu = new wxMenu;
- view_menu->Append( Playlist_Event, wxU(_("&Playlist...\tCtrl-P")),
- wxU(_(HELP_PLAYLIST)) );
- view_menu->Append( Logs_Event, wxU(_("&Messages...\tCtrl-M")),
- wxU(_(HELP_LOGS)) );
+ view_menu->Append( Playlist_Event, wxU(_("&Playlist...\tCtrl-P")) );
+ view_menu->Append( Logs_Event, wxU(_("&Messages...\tCtrl-M")) );
view_menu->Append( FileInfo_Event,
- wxU(_("Stream and Media &info...\tCtrl-I")),
- wxU(_(HELP_FILEINFO)) );
+ wxU(_("Stream and Media &info...\tCtrl-I")) );
/* Create the "Auto-generated" menus */
p_settings_menu = SettingsMenu( p_intf, this );
/* Create the "Help" menu */
wxMenu *help_menu = new wxMenu;
- help_menu->Append( About_Event, wxU(_("About VLC media player")),
- wxU(_(HELP_ABOUT)) );
+ help_menu->Append( About_Event, wxU(_("About VLC media player")) );
/* Append the freshly created menus to the menu bar... */
wxMenuBar *menubar = new wxMenuBar( wxMB_DOCKABLE );
void Interface::CreateOurToolBar()
{
#define HELP_STOP N_("Stop")
-
#define HELP_PLAY N_("Play")
#define HELP_PAUSE N_("Pause")
#define HELP_PLO N_("Playlist")
/* Add static items */
p_settings_menu->AppendCheckItem( Extended_Event,
- wxU(_("&Extended GUI") ), wxU(_(HELP_EXTENDED)) );
+ wxU(_("&Extended GUI") ) );
p_settings_menu->AppendCheckItem( Bookmarks_Event,
- wxU(_("&Bookmarks...") ), wxU(_(HELP_BOOKMARKS)) );
- p_settings_menu->Append( Prefs_Event, wxU(_("&Preferences...")),
- wxU(_(HELP_PREFS)) );
+ wxU(_("&Bookmarks...") ) );
+ p_settings_menu->Append( Prefs_Event, wxU(_("&Preferences...")) );
}
else if( event.GetEventObject() == p_audio_menu )
case OpenNet_Event:
i_id = INTF_DIALOG_NET;
break;
+ case OpenCapture_Event:
+ i_id = INTF_DIALOG_CAPTURE;
+ break;
case OpenSat_Event:
i_id = INTF_DIALOG_SAT;
break;
i_access_method == NET_ACCESS );
#ifndef WIN32
notebook->AddPage( V4LPanel( notebook ), wxU(_("Video for Linux")),
- i_access_method == V4L_ACCESS );
+ i_access_method == CAPTURE_ACCESS );
#endif
module_t *p_module = config_FindModule( VLC_OBJECT(p_intf), "dshow" );
AutoBuiltPanel *autopanel =
new AutoBuiltPanel( notebook, this, p_intf, p_module );
input_tab_array.Add( autopanel );
- notebook->AddPage( autopanel, wxU( p_module->psz_longname ) );
+ notebook->AddPage( autopanel, wxU( p_module->psz_longname ),
+ i_access_method == CAPTURE_ACCESS );
}
/* Update Disc panel */
break;
#ifndef WIN32
- case V4L_ACCESS:
+ case CAPTURE_ACCESS:
mrltemp = ( video_type->GetSelection() == 0 ? wxT("v4l") :
video_type->GetSelection() == 1 ? wxT("v4l") :
video_type->GetSelection() == 2 ? wxT("pvr") :
*****************************************************************************/
void OpenDialog::OnV4LPanelChange( wxCommandEvent& WXUNUSED(event) )
{
- UpdateMRL( V4L_ACCESS );
+ UpdateMRL( CAPTURE_ACCESS );
}
void OpenDialog::OnV4LTypeChange( wxCommandEvent& WXUNUSED(event) )
break;
}
- UpdateMRL( V4L_ACCESS );
+ UpdateMRL( CAPTURE_ACCESS );
}
void OpenDialog::OnV4LSettingsChange( wxCommandEvent& WXUNUSED(event) )
v4l_mrl = v4l_dialog->GetOptions();
}
- UpdateMRL( V4L_ACCESS );
+ UpdateMRL( CAPTURE_ACCESS );
}
#endif
/* Creates the dialogs provider */
p_intf->p_sys->p_wxwindow =
- new DialogsProvider( p_intf, p_intf->pf_show_dialog ?
- NULL : p_intf->p_sys->p_wxwindow );
+ CreateDialogsProvider( p_intf, p_intf->pf_show_dialog ?
+ NULL : p_intf->p_sys->p_wxwindow );
p_intf->p_sys->pf_show_dialog = ShowDialog;
#define MODE_AUTHOR 2
#define MODE_TITLE 3
+class DialogsProvider;
class PrefsTreeCtrl;
class AutoBuiltPanel;
class VideoWindow;
wxArrayString SeparateEntries( wxString );
wxWindow *VideoWindow( intf_thread_t *p_intf, wxWindow *p_parent );
wxWindow *BookmarksDialog( intf_thread_t *p_intf, wxWindow *p_parent );
+wxWindow *CreateDialogsProvider( intf_thread_t *p_intf, wxWindow *p_parent );
namespace wxvlc
{
wxMenu *p_navig_menu;
};
-/*class BookmarksDialog;
-*/
-/* Dialogs Provider */
-class DialogsProvider: public wxFrame
-{
-public:
- /* Constructor */
- DialogsProvider( intf_thread_t *p_intf, wxWindow *p_parent );
- virtual ~DialogsProvider();
-
-private:
- void Open( int i_access_method, int i_arg );
-
- /* Event handlers (these functions should _not_ be virtual) */
- void OnExit( wxCommandEvent& event );
- void OnPlaylist( wxCommandEvent& event );
- void OnMessages( wxCommandEvent& event );
- void OnFileInfo( wxCommandEvent& event );
- void OnPreferences( wxCommandEvent& event );
- void OnStreamWizardDialog( wxCommandEvent& event );
- void OnWizardDialog( wxCommandEvent& event );
- void OnBookmarks( wxCommandEvent& event );
-
- void OnOpenFileGeneric( wxCommandEvent& event );
- void OnOpenFileSimple( wxCommandEvent& event );
- void OnOpenFile( wxCommandEvent& event );
- void OnOpenDisc( wxCommandEvent& event );
- void OnOpenNet( wxCommandEvent& event );
- void OnOpenSat( wxCommandEvent& event );
-
- void OnPopupMenu( wxCommandEvent& event );
-
- void OnIdle( wxIdleEvent& event );
-
- void OnExitThread( wxCommandEvent& event );
-
- DECLARE_EVENT_TABLE();
-
- intf_thread_t *p_intf;
-
-public:
- /* Secondary windows */
- OpenDialog *p_open_dialog;
- wxFileDialog *p_file_dialog;
- Playlist *p_playlist_dialog;
- Messages *p_messages_dialog;
- FileInfo *p_fileinfo_dialog;
- StreamDialog *p_streamwizard_dialog;
- WizardDialog *p_wizard_dialog;
- wxFrame *p_prefs_dialog;
- wxWindow *p_bookmarks_dialog;
- wxFileDialog *p_file_generic_dialog;
-};
-
/* Open Dialog */
WX_DEFINE_ARRAY(AutoBuiltPanel *, ArrayOfAutoBuiltPanel);
class OpenDialog: public wxFrame
FILE_ACCESS = 0,
DISC_ACCESS,
NET_ACCESS,
-#ifndef WIN32
- V4L_ACCESS,
-#endif
- MAX_ACCESS,
- FILE_SIMPLE_ACCESS
+
+ /* Auto-built panels */
+ CAPTURE_ACCESS
};
+#define MAX_ACCESS CAPTURE_ACCESS
/* V4L Dialog */
class V4LDialog: public wxDialog