-rw-r--r-- | microkde/kfiledialog.cpp | 11 | ||||
-rw-r--r-- | microkde/kfiledialog.h | 2 | ||||
-rw-r--r-- | microkde/kio/kfile/kurlrequester.cpp | 5 | ||||
-rw-r--r-- | microkde/kio/kfile/kurlrequester.h | 2 |
4 files changed, 18 insertions, 2 deletions
diff --git a/microkde/kfiledialog.cpp b/microkde/kfiledialog.cpp index 6be1580..c64f325 100644 --- a/microkde/kfiledialog.cpp +++ b/microkde/kfiledialog.cpp @@ -61,3 +61,7 @@ QString KFileDialog::getOpenFileName( const QString & fn, } - +QString KFileDialog::getExistingDirectory( const QString & fn, + const QString & cap, QWidget * par ) +{ + return KFileDialog::getSaveFileName( fn, cap, pr ); +} #else @@ -77,2 +81,7 @@ QString KFileDialog::getOpenFileName( const QString & fn, } +QString KFileDialog::getExistingDirectory( const QString & fn, + const QString & cap, QWidget * par ) +{ + return QFileDialog::getExistingDirectory( fn, par, "exidtingdir", cap ); +} #endif diff --git a/microkde/kfiledialog.h b/microkde/kfiledialog.h index 0825872..90709cd 100644 --- a/microkde/kfiledialog.h +++ b/microkde/kfiledialog.h @@ -17,2 +17,4 @@ class KFileDialog + static QString getExistingDirectory( const QString &, + const QString &, QWidget * ); }; diff --git a/microkde/kio/kfile/kurlrequester.cpp b/microkde/kio/kfile/kurlrequester.cpp index 991c8be..ca94570 100644 --- a/microkde/kio/kfile/kurlrequester.cpp +++ b/microkde/kio/kfile/kurlrequester.cpp @@ -213,3 +213,3 @@ void KURLRequester::init() myShowLocalProt = false; - + mPathIsDir = false; if (/*US !d->combo && */ !d->edit ) @@ -274,2 +274,5 @@ void KURLRequester::slotOpenDialog() QString fn = d->edit->text(); + if ( mPathIsDir ) + fn = KFileDialog::getExistingDirectory ( fn, "", this ); + else fn = KFileDialog::getSaveFileName( fn, "", this ); diff --git a/microkde/kio/kfile/kurlrequester.h b/microkde/kio/kfile/kurlrequester.h index 3253dd5..faa3326 100644 --- a/microkde/kio/kfile/kurlrequester.h +++ b/microkde/kio/kfile/kurlrequester.h @@ -107,2 +107,3 @@ public: void setMode( unsigned int m ); + void setPathIsDir( ) {mPathIsDir = true;} @@ -236,2 +237,3 @@ private: mutable KFileDialog * myFileDialog; + bool mPathIsDir; |