From 28ace82fade13ff442e602ab1bd90221c0d62a3e Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Mon, 22 Sep 2008 22:44:01 +0000 Subject: [PATCH] fixed file-dialog for choosing export filename git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1691 0778d3d1-df1d-0410-868b-ea421aaaa00d --- ChangeLog | 10 ++++++++++ src/core/song.cpp | 27 +++++++++++++-------------- 2 files changed, 23 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index a3ddd8fb7..bfb1301f5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,15 @@ 2008-09-22 Tobias Doerffel + * src/core/song.cpp: + fixed file-dialog for choosing export filename + + * src/core/project_renderer.cpp: + start render-thread with normal priority on win32 as otherwise the + whole GUI is almost frozen + + * CMakeLists.txt: + removed -Wstrict-aliasing=2 warning + * src/core/midi/midi_winmm.cpp: cleanups diff --git a/src/core/song.cpp b/src/core/song.cpp index 8fcde1026..292deb5f0 100644 --- a/src/core/song.cpp +++ b/src/core/song.cpp @@ -1121,19 +1121,6 @@ void song::exportProject( void ) return; } - QString base_filename; - - if( m_fileName != "" ) - { - base_filename = QFileInfo( m_fileName ).absolutePath() + "/" + - QFileInfo( m_fileName ).completeBaseName(); - } - else - { - base_filename = tr( "untitled" ); - } - base_filename += __fileEncodeDevices[0].m_extension; - QFileDialog efd( engine::getMainWindow() ); efd.setFileMode( QFileDialog::AnyFile ); efd.setAcceptMode( QFileDialog::AcceptSave ); @@ -1146,7 +1133,19 @@ void song::exportProject( void ) ++idx; } efd.setFilters( types ); - efd.selectFile( base_filename ); + + QString base_filename; + if( m_fileName != "" ) + { + efd.setDirectory( QFileInfo( m_fileName ).absolutePath() ); + base_filename = QFileInfo( m_fileName ).completeBaseName(); + } + else + { + efd.setDirectory( configManager::inst()->userProjectsDir() ); + base_filename = tr( "untitled" ); + } + efd.selectFile( base_filename + __fileEncodeDevices[0].m_extension ); efd.setWindowTitle( tr( "Select file for project-export..." ) ); if( efd.exec() == QDialog::Accepted &&