]> git.sesse.net Git - vlc/commitdiff
File type filters and implementation in WX. Refs:#24
authorClément Stenac <zorglub@videolan.org>
Sun, 28 May 2006 12:04:19 +0000 (12:04 +0000)
committerClément Stenac <zorglub@videolan.org>
Sun, 28 May 2006 12:04:19 +0000 (12:04 +0000)
Thanks to Steven Sheehy and sorry for the delay :)

include/vlc_interface.h
modules/gui/wxwidgets/dialogs.cpp
modules/gui/wxwidgets/dialogs/open.cpp
modules/gui/wxwidgets/dialogs/playlist.cpp

index 4da3b499093569603f270cc3e45c4cf62b70b9c9..4a8937c814b0b42eefe1e58c12b656bf2d1ac687 100644 (file)
@@ -176,3 +176,14 @@ VLC_EXPORT( void,              intf_Destroy,    ( intf_thread_t * ) );
 
 /* Useful text messages shared by interfaces */
 #define INTF_ABOUT_MSG LICENSE_MSG
+
+#define EXTENSIONS_AUDIO "*.a52;*.aac;*.ac3;*.dts;*.flac;*.m4a;*.m4p;*.mka;" \
+                         "*.mod;*.mp1;*.mp2;*.mp3;*.ogg;*.spx;*.wav;*.wma;*.xm"
+
+#define EXTENSIONS_VIDEO "*.asf;*.avi;*.divx;*.dv;*.m1v;*.m2v;*.m4v;*.mkv;" \
+                         "*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;*.mpeg2;*.mpeg4;" \
+                         "*.mpg;*.ogg;*.ogm;*.ps;*.ts;*.vob;*.wmv"
+
+#define EXTENSIONS_PLAYLIST "*.asx;*.b4s;*.m3u;*.pls;*.vlc;*.xspf"
+
+#define EXTENSIONS_SUBTITLE "*.idx;*.srt;*.sub;*.utf"
index d24d7d71992c988d844e3d67b7f7a5c1bb63840a..23ac8f78da93891a0b14c1c57de976eacc55dbd4 100644 (file)
@@ -430,6 +430,12 @@ void DialogsProvider::OnOpenFileSimple( wxCommandEvent& event )
         p_file_dialog = new wxFileDialog( NULL, wxU(_("Open File")),
             wxT(""), wxT(""), wxT("*"), wxOPEN | wxMULTIPLE );
 
+       p_file_dialog->SetWildcard(wxU(_("All Files (*.*)|*"
+        "|Sound Files (*.mp3, *.ogg, etc.)|" EXTENSIONS_AUDIO 
+        "|Video Files (*.avi, *.mpg, etc.)|" EXTENSIONS_VIDEO 
+        "|Playlist Files (*.m3u, *.pls, etc.)|" EXTENSIONS_PLAYLIST 
+        "|Subtitle Files (*.srt, *.sub, etc.)|" EXTENSIONS_SUBTITLE)));
+
     if( p_file_dialog && p_file_dialog->ShowModal() == wxID_OK )
     {
         wxArrayString paths;
index d22580e198f9cbdfc42a2a89fad34b88208c3d85..86e3b6f928fd82c99915ef2db72409bf85eef00b 100644 (file)
@@ -1262,6 +1262,12 @@ void OpenDialog::OnFileBrowse( wxCommandEvent& WXUNUSED(event) )
         file_dialog = new wxFileDialog( this, wxU(_("Open File")),
             wxT(""), wxT(""), wxT("*"), wxOPEN | wxMULTIPLE );
 
+       p_file_dialog->SetWildcard(wxU(_("All Files (*.*)|*"
+        "|Sound Files (*.mp3, *.ogg, etc.)|" EXTENSIONS_AUDIO 
+        "|Video Files (*.avi, *.mpg, etc.)|" EXTENSIONS_VIDEO 
+        "|Playlist Files (*.m3u, *.pls, etc.)|" EXTENSIONS_PLAYLIST 
+        "|Subtitle Files (*.srt, *.sub, etc.)|" EXTENSIONS_SUBTITLE)));
+
     if( file_dialog && file_dialog->ShowModal() == wxID_OK )
     {
         wxArrayString paths;
index c15e050bca7c3a28c6fce32296f7a835dacf6a37..272fdcb63aa1483bc69d0dbf6d34cb7755e0970e 100644 (file)
@@ -971,7 +971,7 @@ void Playlist::OnSave( wxCommandEvent& WXUNUSED(event) )
 void Playlist::OnOpen( wxCommandEvent& WXUNUSED(event) )
 {
     wxFileDialog dialog( this, wxU(_("Open playlist")), wxT(""), wxT(""),
-        wxT("All playlists|*.pls;*.m3u;*.asx;*.b4s;*.xspf|XSPF playlist|*.xspf|M3U files|*.m3u"), wxOPEN );
+        wxT("All playlists|" EXTENSIONS_PLAYLIST "|XSPF playlist|*.xspf|M3U files|*.m3u"), wxOPEN );
 
     if( dialog.ShowModal() == wxID_OK )
     {