]> git.sesse.net Git - vlc/blobdiff - modules/gui/wxwindows/wxwindows.h
* include/configuration.h: bug fix for add_string_from_list()
[vlc] / modules / gui / wxwindows / wxwindows.h
index ea98eaf0558746d39ea78200c6cc0e06fa300d8e..7875907adfbcfbdcb0bd37a4f855733440457e7b 100644 (file)
@@ -2,7 +2,7 @@
  * wxwindows.h: private wxWindows interface description
  *****************************************************************************
  * Copyright (C) 1999, 2000 VideoLAN
- * $Id: wxwindows.h,v 1.44 2003/07/17 18:58:23 gbazin Exp $
+ * $Id: wxwindows.h,v 1.51 2003/08/10 09:22:07 gbazin Exp $
  *
  * Authors: Gildas Bazin <gbazin@netcourrier.com>
  *
@@ -47,14 +47,26 @@ class FileInfo;
 
 #define SLIDER_MAX_POS 10000
 
-/* wxU is used to convert ansi strings to unicode strings (wchar_t) */
+/* wxU is used to convert ansi/utf8 strings to unicode strings (wchar_t) */
+#if defined( ENABLE_NLS ) && defined( HAVE_GETTEXT ) && \
+    defined( WIN32 ) && !defined( HAVE_INCLUDED_GETTEXT )
+#if wxUSE_UNICODE
+#   define wxU(utf8) wxString(utf8, wxConvUTF8)
+#else
+#   define wxU(utf8) wxString(wxConvUTF8.cMB2WC(utf8), *wxConvCurrent)
+#endif
+
+#else // ENABLE_NLS && HAVE_GETTEXT && WIN32 && !HAVE_INCLUDED_GETTEXT
 #if wxUSE_UNICODE
 #   define wxU(ansi) wxString(ansi, *wxConvCurrent)
 #else
 #   define wxU(ansi) ansi
 #endif
 
-#if !defined(MODULE_NAME_IS_skins)
+#endif
+
+wxArrayString SeparateEntries( wxString );
+
 /*****************************************************************************
  * intf_sys_t: description and status of wxwindows interface
  *****************************************************************************/
@@ -82,14 +94,13 @@ struct intf_sys_t
     int                 i_playing;                 /* playlist selected item */
 
     /* Send an event to show a dialog */
-    void (*pf_show_dialog) ( intf_thread_t *p_intf, int i_dialog, int i_arg );
+    void (*pf_show_dialog) ( intf_thread_t *p_intf, int i_dialog, int i_arg,
+                             intf_dialog_args_t *p_arg );
 
     /* Popup menu */
     wxMenu              *p_popup_menu;
-    vlc_bool_t          b_popup_change;
 
 };
-#endif /* !defined(MODULE_NAME_IS_skins) */
 
 /*****************************************************************************
  * Prototypes
@@ -197,6 +208,7 @@ private:
     void OnFileInfo( wxCommandEvent& event );
     void OnPreferences( wxCommandEvent& event );
 
+    void OnOpenFileGeneric( wxCommandEvent& event );
     void OnOpenFileSimple( wxCommandEvent& event );
     void OnOpenFile( wxCommandEvent& event );
     void OnOpenDisc( wxCommandEvent& event );
@@ -207,6 +219,8 @@ private:
 
     void OnIdle( wxIdleEvent& event );
 
+    void OnExitThread( wxCommandEvent& event );
+
     DECLARE_EVENT_TABLE();
 
     intf_thread_t *p_intf;
@@ -219,6 +233,7 @@ public:
     Messages            *p_messages_dialog;
     FileInfo            *p_fileinfo_dialog;
     wxFrame             *p_prefs_dialog;
+    wxFileDialog        *p_file_generic_dialog;
 };
 
 /* Open Dialog */
@@ -244,7 +259,6 @@ private:
     wxPanel *SatPanel( wxWindow* parent );
 
     void UpdateMRL( int i_access_method );
-    wxArrayString SeparateEntries( wxString );
 
     /* Event handlers (these functions should _not_ be virtual) */
     void OnOk( wxCommandEvent& event );
@@ -295,7 +309,9 @@ private:
     wxRadioBox *disc_type;
     wxTextCtrl *disc_device;
     wxSpinCtrl *disc_title;
+    int        i_disc_title;
     wxSpinCtrl *disc_chapter;
+    int        i_disc_chapter;
 
     /* Controls for the net panel */
     wxRadioBox *net_type;
@@ -303,17 +319,20 @@ private:
     wxPanel *net_subpanels[4];
     wxRadioButton *net_radios[4];
     wxSpinCtrl *net_ports[4];
+    int        i_net_ports[4];
     wxTextCtrl *net_addrs[4];
 
     /* Controls for the subtitles file */
     wxButton *subsfile_button;
     wxCheckBox *subsfile_checkbox;
     SubsFileDialog *subsfile_dialog;
+    wxArrayString subsfile_mrl;
 
     /* Controls for the stream output */
     wxButton *sout_button;
     wxCheckBox *sout_checkbox;
     SoutDialog *sout_dialog;
+    wxArrayString sout_mrl;
 
     /* Controls for the demux dump */
     wxTextCtrl *demuxdump_textctrl;
@@ -330,7 +349,7 @@ public:
     SoutDialog( intf_thread_t *p_intf, wxWindow *p_parent );
     virtual ~SoutDialog();
 
-    wxString mrl;
+    wxArrayString GetOptions();
 
 private:
     void UpdateMRL();
@@ -411,6 +430,7 @@ public:
     virtual ~SubsFileDialog();
 
     wxComboBox *file_combo;
+    wxComboBox *encoding_combo;
     wxSpinCtrl *delay_spinctrl;
     wxSpinCtrl *fps_spinctrl;