author | zecke <zecke> | 2005-02-06 11:25:40 (UTC) |
---|---|---|
committer | zecke <zecke> | 2005-02-06 11:25:40 (UTC) |
commit | 27847dffc089bb8c89d09e7f9277c43c7590b8b8 (patch) (side-by-side diff) | |
tree | 6a09299b5a2f1ddde4d33b9aaffa349e3a453d61 /libopie2 | |
parent | 1b23cd056974e3c96cc1232259c113184084530e (diff) | |
download | opie-27847dffc089bb8c89d09e7f9277c43c7590b8b8.zip opie-27847dffc089bb8c89d09e7f9277c43c7590b8b8.tar.gz opie-27847dffc089bb8c89d09e7f9277c43c7590b8b8.tar.bz2 |
For saving we do not want to use the file just selected. The user needs
to click ok when saving.
This is a fix for #1522 as well
-rw-r--r-- | libopie2/opieui/fileselector/ofiledialog.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libopie2/opieui/fileselector/ofiledialog.cpp b/libopie2/opieui/fileselector/ofiledialog.cpp index 65648ce..92d4271 100644 --- a/libopie2/opieui/fileselector/ofiledialog.cpp +++ b/libopie2/opieui/fileselector/ofiledialog.cpp @@ -149,96 +149,105 @@ DocLnk OFileDialog::selectedDocument()const * @param file A proposed filename * @param mimes A list of MimeTypes * @param wid the parent * @param caption of the dialog if QString::null tr("Open") will be used * @return the fileName or QString::null */ QString OFileDialog::getOpenFileName(int selector, const QString &_startDir, const QString &file, const MimeTypes &mimes, QWidget *wid, const QString &caption ) { QString ret; QString startDir = _startDir; if (startDir.isEmpty() ) startDir = lastUsedDir( "FileDialog-OPEN" ); OFileDialog dlg( caption.isEmpty() ? tr("Open") : caption, wid, OFileSelector::Open, selector, startDir, file, mimes); if( QPEApplication::execDialog(&dlg ) ) { ret = dlg.fileName(); saveLastDir( "FileDialog-OPEN", ret ); } return ret; } /** * This opens up a file dialog in save mode * @see getOpenFileName */ QString OFileDialog::getSaveFileName(int selector, const QString &_startDir, const QString &file, const MimeTypes &mimes, QWidget *wid, const QString &caption ) { QString ret; QString startDir = _startDir; if (startDir.isEmpty() ) startDir = lastUsedDir( "FileDialog-SAVE" ); OFileDialog dlg( caption.isEmpty() ? tr("Save") : caption, wid, OFileSelector::Save, selector, startDir, file, mimes); + + /* + * For the save mode we do not want a file to be written + * if the user just clicked on it + * #1522 + */ + dlg.disconnect( dlg.file, SIGNAL(fileSelected(const QString&)) ); + dlg.disconnect( dlg.file, SIGNAL(ok()) ); + if( QPEApplication::execDialog(&dlg) ) { ret = dlg.fileName(); saveLastDir( "FileDialog-SAVE", ret ); } return ret; } /** * This opens up a filedialog in select directory mode * * @param selector the Selector Mode * @param startDir Where to start from * @param wid the parent * @param caption of the dialog if QString::null tr("Open") will be used * @return the directoryName or QString::null */ QString OFileDialog::getDirectory(int selector, const QString &_startDir, QWidget *wid, const QString &caption ) { QString ret; QString startDir = _startDir; if ( startDir.isEmpty() ) startDir = lastUsedDir( "FileDialog-SELECTDIR" ); OFileDialog dlg( caption.isEmpty() ? tr( "Select Directory" ) : caption, wid, OFileSelector::DirectorySelector, selector, startDir ); if ( QPEApplication::execDialog(&dlg) ) { ret = dlg.fileName(); saveLastDir( "FileDialog-SELECTDIR", ret ); } return ret; } void OFileDialog::slotFileSelected(const QString & ) { accept(); } void OFileDialog::slotSelectorOk( ) { accept(); } |