Commit 665ba714 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Qt4: hopefully fix the last open file path

parent 4a45faa9
...@@ -113,7 +113,7 @@ inline void FileOpenPanel::BuildOldPanel() ...@@ -113,7 +113,7 @@ inline void FileOpenPanel::BuildOldPanel()
/* Make this QFileDialog a child of tempWidget from the ui. */ /* Make this QFileDialog a child of tempWidget from the ui. */
dialogBox = new FileOpenBox( ui.tempWidget, NULL, dialogBox = new FileOpenBox( ui.tempWidget, NULL,
qfu( p_intf->p_sys->psz_filepath ), "" ); p_intf->p_sys->filepath, "" );
dialogBox->setFileMode( QFileDialog::ExistingFiles ); dialogBox->setFileMode( QFileDialog::ExistingFiles );
dialogBox->setAcceptMode( QFileDialog::AcceptOpen ); dialogBox->setAcceptMode( QFileDialog::AcceptOpen );
...@@ -190,7 +190,7 @@ void FileOpenPanel::browseFileSub() ...@@ -190,7 +190,7 @@ void FileOpenPanel::browseFileSub()
{ {
// TODO Handle selection of more than one subtitles file // TODO Handle selection of more than one subtitles file
QStringList files = THEDP->showSimpleOpen( qtr("Open subtitles file"), QStringList files = THEDP->showSimpleOpen( qtr("Open subtitles file"),
EXT_FILTER_SUBTITLE, p_intf->p_sys->psz_filepath ); EXT_FILTER_SUBTITLE, p_intf->p_sys->filepath );
if( files.isEmpty() ) return; if( files.isEmpty() ) return;
ui.subInput->setText( files.join(" ") ); ui.subInput->setText( files.join(" ") );
...@@ -240,8 +240,7 @@ void FileOpenPanel::updateMRL() ...@@ -240,8 +240,7 @@ void FileOpenPanel::updateMRL()
/* Function called by Open Dialog when clicke on Play/Enqueue */ /* Function called by Open Dialog when clicke on Play/Enqueue */
void FileOpenPanel::accept() void FileOpenPanel::accept()
{ {
//FIXME p_intf->p_sys->filepath = dialogBox->directory().absolutePath();
// p_intf->p_sys->psz_filepath = qtu( dialogBox->directory().absolutePath() );
ui.fileListWidg->clear(); ui.fileListWidg->clear();
} }
......
...@@ -277,7 +277,7 @@ void DialogsProvider::openFileGenericDialog( intf_dialog_args_t *p_arg ) ...@@ -277,7 +277,7 @@ void DialogsProvider::openFileGenericDialog( intf_dialog_args_t *p_arg )
if( p_arg->b_save ) if( p_arg->b_save )
{ {
QString file = QFileDialog::getSaveFileName( NULL, p_arg->psz_title, QString file = QFileDialog::getSaveFileName( NULL, p_arg->psz_title,
qfu( p_intf->p_sys->psz_filepath ), extensions ); p_intf->p_sys->filepath, extensions );
if( !file.isEmpty() ) if( !file.isEmpty() )
{ {
p_arg->i_results = 1; p_arg->i_results = 1;
...@@ -290,7 +290,7 @@ void DialogsProvider::openFileGenericDialog( intf_dialog_args_t *p_arg ) ...@@ -290,7 +290,7 @@ void DialogsProvider::openFileGenericDialog( intf_dialog_args_t *p_arg )
else /* non-save mode */ else /* non-save mode */
{ {
QStringList files = QFileDialog::getOpenFileNames( NULL, QStringList files = QFileDialog::getOpenFileNames( NULL,
p_arg->psz_title, qfu( p_intf->p_sys->psz_filepath ), p_arg->psz_title, p_intf->p_sys->filepath,
extensions ); extensions );
p_arg->i_results = files.count(); p_arg->i_results = files.count();
p_arg->psz_results = (char **)malloc( p_arg->i_results * sizeof( char * ) ); p_arg->psz_results = (char **)malloc( p_arg->i_results * sizeof( char * ) );
...@@ -386,7 +386,7 @@ QStringList DialogsProvider::showSimpleOpen( QString help, ...@@ -386,7 +386,7 @@ QStringList DialogsProvider::showSimpleOpen( QString help,
return QFileDialog::getOpenFileNames( NULL, return QFileDialog::getOpenFileNames( NULL,
help.isEmpty() ? qtr(I_OP_SEL_FILES ) : help, help.isEmpty() ? qtr(I_OP_SEL_FILES ) : help,
path.isEmpty() ? qfu( p_intf->p_sys->psz_filepath ) : path, path.isEmpty() ? p_intf->p_sys->filepath : path,
fileTypes ); fileTypes );
} }
...@@ -512,7 +512,7 @@ void DialogsProvider::saveAPlaylist() ...@@ -512,7 +512,7 @@ void DialogsProvider::saveAPlaylist()
{ {
QFileDialog *qfd = new QFileDialog( NULL, QFileDialog *qfd = new QFileDialog( NULL,
qtr( "Save playlist as..." ), qtr( "Save playlist as..." ),
qfu( p_intf->p_sys->psz_filepath ), p_intf->p_sys->filepath,
qtr( "XSPF playlist (*.xspf);; " ) + qtr( "XSPF playlist (*.xspf);; " ) +
qtr( "M3U playlist (*.m3u);; " ) + qtr( "M3U playlist (*.m3u);; " ) +
qtr( "HTML playlist (*.html)" ) ); qtr( "HTML playlist (*.html)" ) );
......
...@@ -460,9 +460,12 @@ static void *Thread( void *obj ) ...@@ -460,9 +460,12 @@ static void *Thread( void *obj )
app.setQuitOnLastWindowClosed( false ); app.setQuitOnLastWindowClosed( false );
/* Retrieve last known path used in file browsing */ /* Retrieve last known path used in file browsing */
char *psz_path = config_GetPsz( p_intf, "qt-filedialog-path" ); {
p_intf->p_sys->psz_filepath = EMPTY_STR( psz_path ) ? config_GetHomeDir() char *psz_path = config_GetPsz( p_intf, "qt-filedialog-path" );
: psz_path; p_intf->p_sys->filepath =
EMPTY_STR(psz_path) ? config_GetHomeDir() : qfu(psz_path);
free( psz_path );
}
/* Launch */ /* Launch */
app.exec(); app.exec();
...@@ -501,8 +504,8 @@ static void *Thread( void *obj ) ...@@ -501,8 +504,8 @@ static void *Thread( void *obj )
/* Save the path */ /* Save the path */
config_PutPsz( p_intf, "qt-filedialog-path", p_intf->p_sys->psz_filepath ); config_PutPsz( p_intf, "qt-filedialog-path",
free( psz_path ); qtu(p_intf->p_sys->filepath) );
/* Delete the application automatically */ /* Delete the application automatically */
free( display ); free( display );
......
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
#include <vlc_playlist.h> /* playlist_t */ #include <vlc_playlist.h> /* playlist_t */
#include <QEvent> #include <QEvent>
#include <QString>
#if ( QT_VERSION < 0x040300 ) #if ( QT_VERSION < 0x040300 )
# error Update your Qt version # error Update your Qt version
...@@ -72,7 +73,7 @@ struct intf_sys_t ...@@ -72,7 +73,7 @@ struct intf_sys_t
playlist_t *p_playlist; /* Core Playlist discussion */ playlist_t *p_playlist; /* Core Playlist discussion */
const char *psz_filepath; /* Last path used in dialogs */ QString filepath; /* Last path used in dialogs */
QMenu * p_popup_menu; /* The right click menu */ QMenu * p_popup_menu; /* The right click menu */
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment