kio Library API Documentation

KFileDialog Class Reference

Provides a user (and developer) friendly way to select files and directories. A file selection dialog. More...

#include <kfiledialog.h>

Inheritance diagram for KFileDialog:

KDialogBase KDialog QDialog KEncodingFileDialog List of all members.

Public Types

enum  OperationMode { Other = 0, Opening, Saving }

Signals

void fileSelected (const QString &)
void fileHighlighted (const QString &)
void selectionChanged ()
void filterChanged (const QString &filter)

Public Member Functions

 KFileDialog (const QString &startDir, const QString &filter, QWidget *parent, const char *name, bool modal)
 KFileDialog (const QString &startDir, const QString &filter, QWidget *parent, const char *name, bool modal, QWidget *widget)
 ~KFileDialog ()
KURL selectedURL () const
KURL::List selectedURLs () const
KURL baseURL () const
QString selectedFile () const
QStringList selectedFiles () const
void setURL (const KURL &url, bool clearforward=true)
void setSelection (const QString &name)
void setOperationMode (KFileDialog::OperationMode)
OperationMode operationMode () const
void setKeepLocation (bool keep)
bool keepsLocation () const
void setFilter (const QString &filter)
QString currentFilter () const
void setFilterMimeType (const QString &label, const KMimeType::List &types, const KMimeType::Ptr &defaultType) KDE_DEPRECATED
KMimeType::Ptr currentFilterMimeType ()
void setMimeFilter (const QStringList &types, const QString &defaultType=QString::null)
QString currentMimeFilter () const
void clearFilter ()
void setPreviewWidget (const QWidget *w) KDE_DEPRECATED
void setPreviewWidget (const KPreviewWidgetBase *w)
virtual void show ()
void setMode (KFile::Mode m)
void setMode (unsigned int m)
KFile::Mode mode () const
void setLocationLabel (const QString &text)
KToolBartoolBar () const
KPushButtonokButton () const
KPushButtoncancelButton () const
KURLBarspeedBar ()
KActionCollectionactionCollection () const
int pathComboIndex ()

Static Public Member Functions

QString getOpenFileName (const QString &startDir=QString::null, const QString &filter=QString::null, QWidget *parent=0, const QString &caption=QString::null)
QStringList getOpenFileNames (const QString &startDir=QString::null, const QString &filter=QString::null, QWidget *parent=0, const QString &caption=QString::null)
KURL getOpenURL (const QString &startDir=QString::null, const QString &filter=QString::null, QWidget *parent=0, const QString &caption=QString::null)
KURL::List getOpenURLs (const QString &startDir=QString::null, const QString &filter=QString::null, QWidget *parent=0, const QString &caption=QString::null)
QString getSaveFileName (const QString &startDir=QString::null, const QString &filter=QString::null, QWidget *parent=0, const QString &caption=QString::null)
KURL getSaveURL (const QString &startDir=QString::null, const QString &filter=QString::null, QWidget *parent=0, const QString &caption=QString::null)
QString getExistingDirectory (const QString &startDir=QString::null, QWidget *parent=0, const QString &caption=QString::null)
KURL getExistingURL (const QString &startDir=QString::null, QWidget *parent=0, const QString &caption=QString::null)
KURL getImageOpenURL (const QString &startDir=QString::null, QWidget *parent=0, const QString &caption=QString::null)
KURL getStartURL (const QString &startDir, QString &recentDirClass)
void setStartDir (const KURL &directory)

Protected Slots

void urlEntered (const KURL &)
void enterURL (const KURL &url)
void enterURL (const QString &url)
void locationActivated (const QString &url)
void toolbarCallback (int)
void pathComboChanged (const QString &)
void dirCompletion (const QString &)
void slotFilterChanged ()
void fileHighlighted (const KFileItem *i)
void fileSelected (const KFileItem *i)
void slotStatResult (KIO::Job *job)
void slotLoadingFinished ()
void fileCompletion (const QString &)
void toggleSpeedbar (bool)
virtual void updateStatusLine (int dirs, int files)
virtual void slotOk ()
virtual void accept ()
virtual void slotCancel ()
void slotAutoSelectExtClicked ()
void addToRecentDocuments ()
void initSpeedbar ()

Protected Member Functions

virtual void keyPressEvent (QKeyEvent *e)
void init (const QString &startDir, const QString &filter, QWidget *widget)
virtual void initGUI ()
void multiSelectionChanged ()
virtual void readConfig (KConfig *, const QString &group=QString::null)
virtual void writeConfig (KConfig *, const QString &group=QString::null)
virtual void readRecentFiles (KConfig *)
virtual void saveRecentFiles (KConfig *)
KURL::List tokenize (const QString &line) const
KURL getCompleteURL (const QString &)
QString currentFilterExtension ()
void updateAutoSelectExtension ()
KURL::ListparseSelectedURLs () const
virtual void virtual_hook (int id, void *data)

Protected Attributes

KToolBartoolbar
KURLComboBoxlocationEdit
KFileFilterCombo * filterWidget
KDirOperatorops
bool autoDirectoryFollowing

Static Protected Attributes

KURLlastDirectory

Detailed Description

Provides a user (and developer) friendly way to select files and directories. A file selection dialog.

The widget can be used as a drop in replacement for the QFileDialog widget, but has greater functionality and a nicer GUI.

You will usually want to use one of the static methods getOpenFileName(), getSaveFileName(), getOpenURL() or for multiple files getOpenFileNames() or getOpenURLs().

The dialog has been designed to allow applications to customise it by subclassing. It uses geometry management to ensure that subclasses can easily add children that will be incorporated into the layout.

kfiledialog.png

KDE File Dialog

Author:
Richard J. Moore <rich@kde.org>, Carsten Pfeiffer <pfeiffer@kde.org>

Definition at line 78 of file kfiledialog.h.


Member Enumeration Documentation

enum KFileDialog::OperationMode
 

Defines some default behavior of the filedialog.

E.g. in mode Opening and Saving, the selected files/urls will be added to the "recent documents" list. The Saving mode also implies setKeepLocation() being set.

Other means that no default actions are performed.

See also:
setOperationMode

operationMode

Definition at line 95 of file kfiledialog.h.

Referenced by operationMode().


Constructor & Destructor Documentation

KFileDialog::KFileDialog const QString startDir,
const QString filter,
QWidget parent,
const char *  name,
bool  modal
 

Constructs a file dialog.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter A shell glob or a mime-type-filter that specifies which files to display. See setFilter() for details on how to use this argument.

Definition at line 165 of file kfiledialog.cpp.

References init(), and KFileDialog().

Referenced by KFileDialog().

KFileDialog::KFileDialog const QString startDir,
const QString filter,
QWidget parent,
const char *  name,
bool  modal,
QWidget widget
 

Constructs a file dialog.

The parameters here are identical to the first constructor except for the addition of a QWidget parameter.

Historical note: The original version of KFileDialog did not have this extra parameter. It was added later, and, in order to maintain binary compatibility, it was placed in a new constructor instead of added to the original one.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter A shell glob or a mime-type-filter that specifies which files to display. See setFilter() for details on how to use this argument.
acceptURLs If set to false, the dialog will just accept files on the local filesystem.
widget A widget, or a widget of widgets, for displaying custom data in the dialog. This can be used, for example, to display a check box with the caption "Open as read-only". When creating this widget, you don't need to specify a parent, since the widget's parent will be set automatically by KFileDialog.
Since:
3.1

Definition at line 172 of file kfiledialog.cpp.

References init(), and KFileDialog().

KFileDialog::~KFileDialog  ) 
 

Destructs the file dialog.

Definition at line 180 of file kfiledialog.cpp.

References KGlobal::config(), and KConfigBase::sync().


Member Function Documentation

KURL KFileDialog::selectedURL  )  const
 

Returns:
The selected fully qualified filename.

Definition at line 1399 of file kfiledialog.cpp.

References QDialog::result().

Referenced by getImageOpenURL(), getOpenURL(), KEncodingFileDialog::getOpenURLAndEncoding(), getSaveURL(), KEncodingFileDialog::getSaveURLAndEncoding(), and KURLRequester::slotOpenDialog().

KURL::List KFileDialog::selectedURLs  )  const
 

Returns:
The list of selected URLs.

Definition at line 1407 of file kfiledialog.cpp.

References QValueList< KURL >::append(), KDirOperator::mode(), and QDialog::result().

Referenced by getOpenURLs(), and KEncodingFileDialog::getOpenURLsAndEncoding().

KURL KFileDialog::baseURL  )  const
 

Returns:
the currently shown directory.

Definition at line 1534 of file kfiledialog.cpp.

References KDirOperator::url().

QString KFileDialog::selectedFile  )  const
 

Returns the full path of the selected file in the local filesystem.

(Local files only)

Definition at line 1500 of file kfiledialog.cpp.

References QDialog::result().

Referenced by getOpenFileName(), KEncodingFileDialog::getOpenFileNameAndEncoding(), getSaveFileName(), and KEncodingFileDialog::getSaveFileNameAndEncoding().

QStringList KFileDialog::selectedFiles  )  const
 

Returns a list of all selected local files.

Definition at line 1510 of file kfiledialog.cpp.

References QValueList< KURL >::begin(), QValueList< KURL >::end(), KDirOperator::mode(), and QDialog::result().

Referenced by getOpenFileNames(), and KEncodingFileDialog::getOpenFileNamesAndEncoding().

void KFileDialog::setURL const KURL url,
bool  clearforward = true
 

Sets the directory to view.

Parameters:
url URL to show.
clearforward Indicates whether the forward queue should be cleared.

Definition at line 1149 of file kfiledialog.cpp.

References KDirOperator::setURL(), and setURL().

Referenced by setSelection(), and setURL().

void KFileDialog::setSelection const QString name  ) 
 

Sets the file name to preselect to name.

This takes absolute URLs and relative file names.

Definition at line 1210 of file kfiledialog.cpp.

References endl(), QFile::exists(), KURL::fileName(), QString::findRev(), getCompleteURL(), KFileItem::isDir(), QString::isEmpty(), KURL::isLocalFile(), KURL::isValid(), kdDebug(), kdWarning(), QString::left(), QComboBox::lineEdit(), KURL::path(), setSelection(), setURL(), KDirOperator::url(), and KURL::url().

Referenced by getSaveFileName(), KEncodingFileDialog::getSaveFileNameAndEncoding(), getSaveURL(), KEncodingFileDialog::getSaveURLAndEncoding(), init(), setSelection(), and KURLRequester::slotOpenDialog().

void KFileDialog::setOperationMode KFileDialog::OperationMode   ) 
 

Sets the operational mode of the filedialog to Saving, Opening or Other.

This will set some flags that are specific to loading or saving files. E.g. setKeepLocation() makes mostly sense for a save-as dialog. So setOperationMode( KFileDialog::Saving ); sets setKeepLocation for example.

The mode Saving, together with a default filter set via setMimeFilter() will make the filter combobox read-only.

The default mode is Opening.

Call this method right after instantiating KFileDialog.

See also:
operationMode

KFileDialog::OperationMode

Definition at line 1740 of file kfiledialog.cpp.

References setOperationMode(), and updateAutoSelectExtension().

Referenced by getImageOpenURL(), getOpenFileName(), getOpenFileNames(), getOpenURL(), getOpenURLs(), getSaveFileName(), getSaveURL(), and setOperationMode().

KFileDialog::OperationMode KFileDialog::operationMode  )  const
 

Returns:
the current operation mode, Opening, Saving or Other. Default is Other.
See also:
operationMode

KFileDialog::OperationMode

Definition at line 1750 of file kfiledialog.cpp.

References OperationMode.

Referenced by updateAutoSelectExtension().

void KFileDialog::setKeepLocation bool  keep  ) 
 

Sets whether the filename/url should be kept when changing directories.

This is for example useful when having a predefined filename where the full path for that file is searched.

This is implicitly set when operationMode() is KFileDialog::Saving

getSaveFileName() and getSaveURL() set this to true by default, so that you can type in the filename and change the directory without having to type the name again.

Definition at line 1730 of file kfiledialog.cpp.

References setKeepLocation().

Referenced by setKeepLocation().

bool KFileDialog::keepsLocation  )  const
 

Returns:
whether the contents of the location edit are kept when changing directories.

Definition at line 1735 of file kfiledialog.cpp.

void KFileDialog::setFilter const QString filter  ) 
 

Sets the filter to be used to filter.

You can set more filters for the user to select separated by '
'. Every filter entry is defined through namefilter|text to diplay. If no | is found in the expression, just the namefilter is shown. Examples:

kfile->setFilter("*.cpp|C++ Source Files\n*.h|Header files"); kfile->setFilter("*.cpp"); kfile->setFilter("*.cpp|Sources (*.cpp)"); kfile->setFilter("*.cpp|" + i18n("Sources (*.cpp)")); kfile->setFilter("*.cpp *.cc *.C|C++ Source Files\n*.h *.H|Header files");

Note: The text to display is not parsed in any way. So, if you want to show the suffix to select by a specific filter, you must repeat it.

If the filter contains an unescaped '/', a mimetype-filter is assumed. If you would like a '/' visible in your filter it can be escaped with a '\'. You can specify multiple mimetypes like this (separated with space):

kfile->setFilter( "image/png text/html text/plain" ); kfile->setFilter( "*.cue|CUE\\/BIN Files (*.cue)" );

See also:
filterChanged

setMimeFilter

Definition at line 201 of file kfiledialog.cpp.

References KDirOperator::clearFilter(), QString::find(), setFilter(), setMimeFilter(), KDirOperator::setNameFilter(), and updateAutoSelectExtension().

Referenced by KURLRequester::fileDialog(), init(), KURLRequester::setFilter(), and setFilter().

QString KFileDialog::currentFilter  )  const
 

Returns the current filter as entered by the user or one of the predefined set via setFilter().

See also:
setFilter()

filterChanged()

Definition at line 230 of file kfiledialog.cpp.

Referenced by updateAutoSelectExtension().

void KFileDialog::setFilterMimeType const QString label,
const KMimeType::List types,
const KMimeType::Ptr defaultType
 

Sets the filter up to specify the output type.

Parameters:
label the label to use instead of "Filter:"
types a list of mimetypes that can be used as output format
defaultType the default mimetype to use as output format.
Do not use in conjunction with setFilter()

Deprecated:

Definition at line 236 of file kfiledialog.cpp.

References QValueList< Ptr >::begin(), QValueList< Ptr >::end(), setFilterMimeType(), and setMimeFilter().

Referenced by setFilterMimeType().

KMimeType::Ptr KFileDialog::currentFilterMimeType  ) 
 

Returns the mimetype for the desired output format.

This is only valid if setFilterMimeType() has been called previously.

See also:
setFilterMimeType()

Definition at line 289 of file kfiledialog.cpp.

References currentMimeFilter().

void KFileDialog::setMimeFilter const QStringList types,
const QString defaultType = QString::null
 

Sets the filter up to specify the output type.

Parameters:
types a list of mimetypes that can be used as output format
defaultType the default mimetype to use as output format, if any. If defaultType is set, it will be set as the current item. Otherwise, a first item showing all the mimetypes will be created. Typically, defaultType should be empty for loading and set for saving.
Do not use in conjunction with setFilter()

Definition at line 250 of file kfiledialog.cpp.

References KDirOperator::clearFilter(), QString::isEmpty(), KDirOperator::setMimeFilter(), setMimeFilter(), and updateAutoSelectExtension().

Referenced by setFilter(), setFilterMimeType(), and setMimeFilter().

QString KFileDialog::currentMimeFilter  )  const
 

The mimetype for the desired output format.

This is only valid if setMimeFilter() has been called previously.

See also:
setMimeFilter()

Definition at line 278 of file kfiledialog.cpp.

Referenced by currentFilterMimeType().

void KFileDialog::clearFilter  ) 
 

Clears any mime- or namefilter.

Does not reload the directory.

Definition at line 267 of file kfiledialog.cpp.

References KDirOperator::clearFilter(), and updateAutoSelectExtension().

void KFileDialog::setPreviewWidget const QWidget w  ) 
 

Deprecated:
Add a preview widget and enter the preview mode.
In this mode the dialog is split and the right part contains your widget. This widget has to inherit QWidget and it has to implement a slot showPreview(const KURL &); which is called every time the file changes. You may want to look at koffice/lib/kofficecore/koFilterManager.cc for some hints :)

Ownership is transferred to KFileDialog. You need to create the preview-widget with "new", i.e. on the heap.

Definition at line 294 of file kfiledialog.cpp.

References KDirOperator::clearHistory(), KDirOperator::setPreviewWidget(), and setPreviewWidget().

Referenced by getImageOpenURL(), and setPreviewWidget().

void KFileDialog::setPreviewWidget const KPreviewWidgetBase w  ) 
 

Adds a preview widget and enters the preview mode.

In this mode the dialog is split and the right part contains your preview widget.

Ownership is transferred to KFileDialog. You need to create the preview-widget with "new", i.e. on the heap.

Parameters:
w The widget to be used for the preview.

Definition at line 300 of file kfiledialog.cpp.

References KDirOperator::clearHistory(), KDirOperator::setPreviewWidget(), and setPreviewWidget().

QString KFileDialog::getOpenFileName const QString startDir = QString::null,
const QString filter = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and return the selected filename or an empty string if none was chosen.

Note that with this method the user must select an existing filename.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter This is a space separated list of shell globs. You can set the text to be displayed for the glob, and provide multiple globs. See setFilter() for details on how to do this...
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1300 of file kfiledialog.cpp.

References KDirOperator::clearHistory(), QDialog::exec(), getOpenFileName(), QString::isNull(), ops, selectedFile(), KDialog::setCaption(), setMode(), and setOperationMode().

Referenced by getOpenFileName().

QStringList KFileDialog::getOpenFileNames const QString startDir = QString::null,
const QString filter = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and returns the selected filenames or an empty list if none was chosen.

Note that with this method the user must select an existing filename.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter This is a space separated list of shell globs. You can set the text to be displayed for the glob, and provide multiple globs. See setFilter() for details on how to do this...
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1316 of file kfiledialog.cpp.

References KDirOperator::clearHistory(), QDialog::exec(), getOpenFileNames(), QString::isNull(), ops, selectedFiles(), KDialog::setCaption(), setMode(), and setOperationMode().

Referenced by getOpenFileNames().

KURL KFileDialog::getOpenURL const QString startDir = QString::null,
const QString filter = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and returns the selected URL or an empty string if none was chosen.

Note that with this method the user must select an existing URL.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter This is a space separated list of shell globs. You can set the text to be displayed for the glob, and provide multiple globs. See setFilter() for details on how to do this...
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1332 of file kfiledialog.cpp.

References KDirOperator::clearHistory(), QDialog::exec(), getOpenURL(), QString::isNull(), ops, selectedURL(), KDialog::setCaption(), setMode(), and setOperationMode().

Referenced by getOpenURL().

KURL::List KFileDialog::getOpenURLs const QString startDir = QString::null,
const QString filter = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and returns the selected URLs or an empty list if none was chosen.

Note that with this method the user must select an existing filename.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter This is a space separated list of shell globs. You can set the text to be displayed for the glob, and provide multiple globs. See setFilter() for details on how to do this...
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1346 of file kfiledialog.cpp.

References KDirOperator::clearHistory(), QDialog::exec(), getOpenURLs(), QString::isNull(), ops, selectedURLs(), KDialog::setCaption(), setMode(), and setOperationMode().

Referenced by getOpenURLs().

QString KFileDialog::getSaveFileName const QString startDir = QString::null,
const QString filter = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and returns the selected filename or an empty string if none was chosen.

Note that with this method the user need not select an existing filename.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • a relative path or a filename determining the directory to start in and the file to be selected.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter This is a space separated list of shell globs. You can set the text to be displayed for the glob, and provide multiple globs. See setFilter() for details on how to do this...
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1539 of file kfiledialog.cpp.

References QString::at(), QDialog::exec(), getSaveFileName(), QString::isEmpty(), QString::isNull(), selectedFile(), KDialog::setCaption(), setOperationMode(), and setSelection().

Referenced by getSaveFileName().

KURL KFileDialog::getSaveURL const QString startDir = QString::null,
const QString filter = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and returns the selected filename or an empty string if none was chosen.

Note that with this method the user need not select an existing filename.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • a relative path or a filename determining the directory to start in and the file to be selected.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
filter This is a space separated list of shell globs. You can set the text to be displayed for the glob, and provide multiple globs. See setFilter() for details on how to do this...
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1560 of file kfiledialog.cpp.

References QString::at(), QDialog::exec(), getSaveURL(), QString::isNull(), KURL::isValid(), selectedURL(), KDialog::setCaption(), setOperationMode(), and setSelection().

Referenced by getSaveURL().

QString KFileDialog::getExistingDirectory const QString startDir = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and returns the selected directory or an empty string if none was chosen.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1369 of file kfiledialog.cpp.

References getExistingDirectory(), KURL::isValid(), and KURL::path().

Referenced by getExistingDirectory().

KURL KFileDialog::getExistingURL const QString startDir = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog and returns the selected directory or an empty string if none was chosen.

Contrary to getExistingDirectory(), this method allows the selection of a remote directory.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.
Since:
3.1

Definition at line 1362 of file kfiledialog.cpp.

References getExistingURL().

Referenced by getExistingURL().

KURL KFileDialog::getImageOpenURL const QString startDir = QString::null,
QWidget parent = 0,
const QString caption = QString::null
[static]
 

Creates a modal file dialog with an image previewer and returns the selected url or an empty string if none was chosen.

Parameters:
startDir This can either be
  • The URL of the directory to start in.
  • QString::null to start in the current working directory, or the last directory where a file has been selected.
  • ':<keyword>' to start in the directory last used by a filedialog in the same application that specified the same keyword.
  • '::<keyword>' to start in the directory last used by a filedialog in any application that specified the same keyword.
parent The widget the dialog will be centered on initially.
caption The name of the dialog widget.

Definition at line 1381 of file kfiledialog.cpp.

References QDialog::exec(), getImageOpenURL(), QString::isNull(), QStringList::join(), selectedURL(), KDialog::setCaption(), setMode(), setOperationMode(), and setPreviewWidget().

Referenced by getImageOpenURL().

void KFileDialog::setMode KFile::Mode  m  ) 
 

Convenient overload of the other setMode(unsigned int) method.

Definition at line 1591 of file kfiledialog.cpp.

References KDirOperator::dirOnlyMode(), KDirOperator::setMode(), setMode(), and updateAutoSelectExtension().

Referenced by KURLRequester::fileDialog(), getImageOpenURL(), getOpenFileName(), KEncodingFileDialog::getOpenFileNameAndEncoding(), getOpenFileNames(), KEncodingFileDialog::getOpenFileNamesAndEncoding(), getOpenURL(), KEncodingFileDialog::getOpenURLAndEncoding(), getOpenURLs(), KEncodingFileDialog::getOpenURLsAndEncoding(), KURLRequester::setMode(), and setMode().

void KFileDialog::setMode unsigned int  m  ) 
 

Sets the mode of the dialog.

The mode is defined as (in kfile.h):

enum Mode { File = 1, Directory = 2, Files = 4, ExistingOnly = 8, LocalOnly = 16 };
You can OR the values, e.g.
KFile::Mode mode = static_cast<KFile::Mode>( KFile::Files | KFile::ExistingOnly | KFile::LocalOnly ); setMode( mode );

Definition at line 1604 of file kfiledialog.cpp.

References setMode().

KFile::Mode KFileDialog::mode  )  const
 

Returns the mode of the filedialog.

See also:
setMode()

Definition at line 1609 of file kfiledialog.cpp.

References KDirOperator::mode().

Referenced by updateAutoSelectExtension().

void KFileDialog::setLocationLabel const QString text  ) 
 

Sets the text to be displayed in front of the selection.

The default is "Location". Most useful if you want to make clear what the location is used for.

Definition at line 196 of file kfiledialog.cpp.

References setLocationLabel().

Referenced by setLocationLabel().

KToolBar* KFileDialog::toolBar  )  const [inline]
 

Returns a pointer to the toolbar.

You can use this to insert custom items into it, e.g.:

yourAction = new KAction( i18n("Your Action"), 0, this, SLOT( yourSlot() ), this, "action name" ); yourAction->plug( kfileDialog->toolBar() );

Definition at line 699 of file kfiledialog.h.

Referenced by KEncodingFileDialog::KEncodingFileDialog().

KPushButton * KFileDialog::okButton  )  const
 

Returns:
a pointer to the OK-Button in the filedialog. You may use it e.g. to set a custom text to it.

Definition at line 1709 of file kfiledialog.cpp.

KPushButton * KFileDialog::cancelButton  )  const
 

Returns:
a pointer to the Cancel-Button in the filedialog. You may use it e.g. to set a custom text to it.

Definition at line 1714 of file kfiledialog.cpp.

KURLBar * KFileDialog::speedBar  ) 
 

Returns:
the KURLBar object used as the "speed bar". You can add custom entries to it like that:
KURLBar *urlBar = fileDialog->speedBar(); if ( urlBar ) urlBar->insertDynamicItem( someURL, i18n("The URL's description") );
Note that this method may return a null-pointer if the user configured to not use the speed-bar.
See also:
KURLBar

KURLBar::insertDynamicItem

Since:
3.2

Definition at line 1719 of file kfiledialog.cpp.

KActionCollection * KFileDialog::actionCollection  )  const
 

Returns:
a pointer to the action collection, holding all the used KActions.

Definition at line 2080 of file kfiledialog.cpp.

References KDirOperator::actionCollection().

Referenced by toggleSpeedbar().

int KFileDialog::pathComboIndex  ) 
 

Returns:
the index of the path combobox so when inserting widgets into the dialog (e.g. subclasses) they can do so without hardcoding in an index

Definition at line 2132 of file kfiledialog.cpp.

KURL KFileDialog::getStartURL const QString startDir,
QString recentDirClass
[static]
 

This method implements the logic to determine the user's default directory to be listed.

E.g. the documents direcory, home directory or a recently used directory.

Parameters:
startDir A url/directory, to be used. May use the ':' and '::' syntax as documented in the KFileDialog() constructor.
recentDirClass If the ':' or '::' syntax is used, recentDirClass will contain the string to be used later for KRecentDir::dir()
Returns:
The URL that should be listed by default (e.g. by KFileDialog or KDirSelectDialog).
Since:
3.1

Definition at line 2147 of file kfiledialog.cpp.

References QDir::currentDirPath(), KGlobalSettings::documentPath(), getStartURL(), QDir::homeDirPath(), KURL::isEmpty(), QString::isEmpty(), and KURL::path().

Referenced by getStartURL(), and init().

void KFileDialog::fileSelected const QString  )  [signal]
 

Emitted when the user selects a file.

It is only emitted in single- selection mode. The best way to get notified about selected file(s) is to connect to the okClicked() signal inherited from KDialogBase and call selectedFile(), selectedFiles(), selectedURL() or selectedURLs().

Referenced by init().

void KFileDialog::fileHighlighted const QString  )  [signal]
 

Emitted when the user highlights a file.

Referenced by init().

void KFileDialog::selectionChanged  )  [signal]
 

Emitted when the user hilights one or more files in multiselection mode.

Note: fileHighlighted() or fileSelected() are not emitted in multiselection mode. You may use selectedItems() to ask for the current highlighted items.

See also:
fileSelected

void KFileDialog::filterChanged const QString filter  )  [signal]
 

Emitted when the filter changed, i.e.

the user entered an own filter or chose one of the predefined set via setFilter().

Parameters:
filter contains the new filter (only the extension part, not the explanation), i.e. "*.cpp" or "*.cpp *.cc".
See also:
setFilter()

currentFilter()

Referenced by init().

void KFileDialog::keyPressEvent QKeyEvent e  )  [protected, virtual]
 

Reimplemented to animate the cancel button.

Reimplemented from KDialogBase.

Definition at line 2085 of file kfiledialog.cpp.

References QKeyEvent::accept(), QKeyEvent::key(), and keyPressEvent().

Referenced by keyPressEvent().

void KFileDialog::init const QString startDir,
const QString filter,
QWidget widget
[protected]
 

Perform basic initialization tasks.

Called by constructors.

Since:
3.1

Definition at line 800 of file kfiledialog.cpp.

References KActionCollection::action(), KDirOperator::actionCollection(), KDialogBase::adjustSize(), QString::arg(), KGlobal::config(), QDir::exists(), QFile::exists(), fileHighlighted(), fileSelected(), filterChanged(), KToolBar::getButton(), getStartURL(), init(), initGUI(), KActionMenu::insert(), KToolBar::insertButton(), KToolBar::insertWidget(), KURL::path(), KActionMenu::plug(), KAction::plug(), KActionMenu::popupMenu(), KConfigBase::readBoolEntry(), readConfig(), readRecentFiles(), KCompletionBase::setAutoDeleteCompletionObject(), KToolBar::setBarPos(), KCompletionBase::setCompletionObject(), KActionMenu::setDelayed(), KURLCompletion::setDir(), setFilter(), KToolBar::setFlat(), KToolBar::setIconText(), KToolBar::setItemAutoSized(), KDirOperator::setOnlyDoubleClickSelectsFiles(), QDir::setPath(), KURL::setPath(), KToolBarButton::setPopup(), setSelection(), KAction::setShortcut(), KDirOperator::setupMenu(), KDirOperator::setViewConfig(), KAction::setWhatsThis(), KDialogBase::slotCancel(), KDialogBase::slotOk(), and toggleSpeedbar().

Referenced by init(), and KFileDialog().

void KFileDialog::initGUI  )  [protected, virtual]
 

rebuild geometry management.

Definition at line 1061 of file kfiledialog.cpp.

References QGridLayout::addWidget(), and QGridLayout::setColStretch().

Referenced by init().

void KFileDialog::multiSelectionChanged  )  [protected]
 

called when an item is highlighted/selected in multiselection mode.

handles setting the locationEdit.

Definition at line 734 of file kfiledialog.cpp.

References QString::append(), QComboBox::clearEdit(), QPtrListIterator::current(), QComboBox::lineEdit(), KFileItem::name(), KDirOperator::selectedItems(), and QString::stripWhiteSpace().

void KFileDialog::readConfig KConfig ,
const QString group = QString::null
[protected, virtual]
 

Reads configuration and applies it (size, recent directories, ...).

Definition at line 1615 of file kfiledialog.cpp.

References KGlobalSettings::completionMode(), KConfigBase::group(), QString::isEmpty(), KConfigBase::readBoolEntry(), KDirOperator::readConfig(), readConfig(), KConfigBase::readNumEntry(), KConfigBase::readPathListEntry(), KCompletionBase::setCompletionMode(), KConfigBase::setGroup(), KURLComboBox::setMaxItems(), KURLComboBox::setURL(), KURLComboBox::setURLs(), KToolBar::sizeHint(), toggleSpeedbar(), updateAutoSelectExtension(), KDirOperator::url(), and QSize::width().

Referenced by init(), and readConfig().

void KFileDialog::writeConfig KConfig ,
const QString group = QString::null
[protected, virtual]
 

Saves the current configuration.

Definition at line 1663 of file kfiledialog.cpp.

References KCompletionBase::completionMode(), KConfigBase::group(), QString::isEmpty(), KConfigBase::setGroup(), KDirOperator::writeConfig(), writeConfig(), KConfigBase::writeEntry(), and KConfigBase::writePathEntry().

Referenced by writeConfig().

void KFileDialog::readRecentFiles KConfig  )  [protected, virtual]
 

Reads the recent used files and inserts them into the location combobox.

Definition at line 1684 of file kfiledialog.cpp.

References KConfigBase::group(), QComboBox::insertItem(), KConfigBase::readNumEntry(), KConfigBase::readPathListEntry(), readRecentFiles(), KComboBox::setCurrentItem(), KConfigBase::setGroup(), KURLComboBox::setMaxItems(), and KURLComboBox::setURLs().

Referenced by init(), and readRecentFiles().

void KFileDialog::saveRecentFiles KConfig  )  [protected, virtual]
 

Saves the entries from the location combobox.

Definition at line 1699 of file kfiledialog.cpp.

References KConfigBase::group(), saveRecentFiles(), KConfigBase::setGroup(), KURLComboBox::urls, and KConfigBase::writePathEntry().

Referenced by saveRecentFiles().

KURL::List KFileDialog::tokenize const QString line  )  const [protected]
 

Parses the string "line" for files.

If line doesn't contain any ", the whole line will be interpreted as one file. If the number of " is odd, an empty list will be returned. Otherwise, all items enclosed in " " will be returned as correct urls.

Definition at line 1454 of file kfiledialog.cpp.

References QValueList< KURL >::append(), QString::contains(), QString::find(), KURL::isValid(), QString::mid(), KURL::setFileName(), tokenize(), and KDirOperator::url().

Referenced by tokenize().

KURL KFileDialog::getCompleteURL const QString  )  [protected]
 

Returns the absolute version of the URL specified in locationEdit.

Since:
3.2

Definition at line 306 of file kfiledialog.cpp.

References KURL::addPath(), KURL::cleanPath(), getCompleteURL(), QString::isEmpty(), KURL::setPath(), KShell::tildeExpand(), and KDirOperator::url().

Referenced by getCompleteURL(), and setSelection().

QString KFileDialog::currentFilterExtension  )  [protected]
 

Returns the filename extension associated with the currentFilter().

QString::null is returned if an extension is not available or if operationMode() != Saving.

Since:
3.2

Definition at line 1809 of file kfiledialog.cpp.

void KFileDialog::updateAutoSelectExtension  )  [protected]
 

Updates the currentFilterExtension and the availability of the Automatically Select Extension Checkbox (visible if operationMode() == Saving and enabled if an extension _will_ be associated with the currentFilter(), _after_ this call).

You should call this after filterWidget->setCurrentItem().

Since:
3.2

Definition at line 1814 of file kfiledialog.cpp.

References QString::arg(), QString::at(), currentFilter(), endl(), QString::find(), QString::isEmpty(), kdDebug(), QString::lower(), mode(), and operationMode().

Referenced by clearFilter(), readConfig(), setFilter(), setMimeFilter(), setMode(), and setOperationMode().

void KFileDialog::toolbarCallback int   )  [protected, slot]
 

Deprecated:
,

Definition at line 1201 of file kfiledialog.cpp.

References toolbarCallback().

Referenced by toolbarCallback().

void KFileDialog::pathComboChanged const QString  )  [protected, slot]
 

Deprecated:

Definition at line 1275 of file kfiledialog.cpp.

References pathComboChanged().

Referenced by pathComboChanged().

void KFileDialog::dirCompletion const QString  )  [protected, slot]
 

Deprecated:

Definition at line 1278 of file kfiledialog.cpp.

References dirCompletion().

Referenced by dirCompletion().

void KFileDialog::toggleSpeedbar bool   )  [protected, slot]
 

Since:
3.1

Definition at line 2096 of file kfiledialog.cpp.

References KActionCollection::action(), actionCollection(), KDirOperator::actionCollection(), KURL::equals(), KAction::isPlugged(), KAction::plug(), KURL::setPath(), toggleSpeedbar(), KAction::unplug(), and KURLBarItem::url().

Referenced by init(), readConfig(), and toggleSpeedbar().

void KFileDialog::updateStatusLine int  dirs,
int  files
[protected, virtual, slot]
 

Deprecated:

Definition at line 1295 of file kfiledialog.cpp.

References endl(), kdWarning(), and updateStatusLine().

Referenced by updateStatusLine().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kio Library Version 3.2.3.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Mar 16 17:22:34 2005 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003