kio Library API Documentation

KPropertiesDialog Class Reference

The main properties dialog class. More...

#include <kpropertiesdialog.h>

Inheritance diagram for KPropertiesDialog:

Inheritance graph
[legend]
Collaboration diagram for KPropertiesDialog:

Collaboration graph
[legend]
List of all members.

Public Slots

virtual void slotOk ()
virtual void slotCancel ()

Signals

void propertiesClosed ()
void applied ()
void canceled ()
void saveAs (const KURL &oldUrl, KURL &newUrl)

Public Member Functions

 KPropertiesDialog (KFileItem *item, QWidget *parent=0L, const char *name=0L, bool modal=false, bool autoShow=true)
 KPropertiesDialog (KFileItemList _items, QWidget *parent=0L, const char *name=0L, bool modal=false, bool autoShow=true)
 KPropertiesDialog (const KURL &_url, mode_t _mode, QWidget *parent=0L, const char *name=0L, bool modal=false, bool autoShow=true) KDE_DEPRECATED
 KPropertiesDialog (const KURL &_url, QWidget *parent=0L, const char *name=0L, bool modal=false, bool autoShow=true)
 KPropertiesDialog (const KURL &_tempUrl, const KURL &_currentDir, const QString &_defaultName, QWidget *parent=0L, const char *name=0L, bool modal=false, bool autoShow=true)
 KPropertiesDialog (const QString &title, QWidget *parent=0L, const char *name=0L, bool modal=false)
virtual ~KPropertiesDialog ()
void insertPlugin (KPropsDlgPlugin *plugin)
const KURLkurl () const
KFileItemitem ()
KFileItemList items () const
KDE_DEPRECATED KDialogBasedialog ()
KDE_DEPRECATED const KDialogBasedialog () const
const KURLcurrentDir () const
const QStringdefaultName () const
void updateUrl (const KURL &_newUrl)
void rename (const QString &_name)
void abortApplying ()
void showFileSharingPage ()
void setFileSharingPage (QWidget *page)
void setFileNameReadOnly (bool ro)

Static Public Member Functions

bool canDisplay (KFileItemList _items)
bool showDialog (KFileItem *item, QWidget *parent=0, const char *name=0, bool modal=false)
bool showDialog (const KURL &_url, QWidget *parent=0, const char *name=0, bool modal=false)
bool showDialog (const KFileItemList &_items, QWidget *parent=0, const char *name=0, bool modal=false)

Protected Member Functions

virtual void virtual_hook (int id, void *data)

Detailed Description

The main properties dialog class.

A Properties Dialog is a dialog which displays various information about a particular file or URL, or several files or URLs. This main class holds various related classes, which are instantiated in the form of tab entries in the tabbed dialog that this class provides. The various tabs themselves will let the user view, and sometimes change, information about the file or URL.

kpropertiesdialog.png

Typical KProperties Dialog

This class must be created with (void)new KPropertiesDialog(...) It will take care of deleting itself.

If you are looking for more flexibility, see KFileMetaInfo and KFileMetaInfoWidget.

Definition at line 70 of file kpropertiesdialog.h.


Constructor & Destructor Documentation

KPropertiesDialog::KPropertiesDialog KFileItem item,
QWidget parent = 0L,
const char *  name = 0L,
bool  modal = false,
bool  autoShow = true
 

Brings up a Properties dialog, as shown above.

This is the normal constructor for file-manager type applications, where you have a KFileItem instance to work with. Normally you will use this method rather than the one below.

Parameters:
item file item whose properties should be displayed.
parent is the parent of the dialog widget.
name is the internal name.
modal tells the dialog whether it should be modal.
autoShow tells the dialog whether it should show itself automatically.

Definition at line 152 of file kpropertiesdialog.cpp.

References QPtrList::append(), KURL::isEmpty(), KPropertiesDialog(), and KURL::url().

Referenced by KPropertiesDialog().

KPropertiesDialog::KPropertiesDialog KFileItemList  _items,
QWidget parent = 0L,
const char *  name = 0L,
bool  modal = false,
bool  autoShow = true
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

You use this constructor for cases where you have a number of items, rather than a single item. Be careful which methods you use when passing a list of files or URLs, since some of them will only work on the first item in a list.

Parameters:
_items list of file items whose properties should be displayed.
parent is the parent of the dialog widget.
name is the internal name.
modal tells the dialog whether it should be modal.
autoShow tells the dialog whether it should show itself automatically.

Definition at line 180 of file kpropertiesdialog.cpp.

References QPtrList::append(), QPtrListIterator::current(), QPtrList::first(), KURL::isEmpty(), QPtrList::isEmpty(), and KPropertiesDialog().

KPropertiesDialog::KPropertiesDialog const KURL _url,
mode_t  _mode,
QWidget parent = 0L,
const char *  name = 0L,
bool  modal = false,
bool  autoShow = true
 

Deprecated:
You should use the following constructor instead of this one. The only change that is required is to delete the _mode argument.
Parameters:
_url the URL whose properties should be displayed
_mode unused.
parent is the parent of the dialog widget.
name is the internal name.
modal tells the dialog whether it should be modal.
autoShow tells the dialog whether it should show itself automatically.

Definition at line 206 of file kpropertiesdialog.cpp.

References QPtrList::append(), KPropertiesDialog(), KIO::stat(), and KIO::UDSEntry.

KPropertiesDialog::KPropertiesDialog const KURL _url,
QWidget parent = 0L,
const char *  name = 0L,
bool  modal = false,
bool  autoShow = true
 

Brings up a Properties dialog.

Convenience constructor for non-file-manager applications, where you have a KURL rather than a KFileItem or KFileItemList.

Parameters:
_url the URL whose properties should be displayed
parent is the parent of the dialog widget.
name is the internal name.
modal tells the dialog whether it should be modal. IMPORTANT: This constructor, together with modal=true, leads to a grave display bug (due to KIO::stat() being run before the dialog has all the necessary information). Do not use this combination for now. For local files with a known mimetype, simply create a KFileItem and pass it to the other constructor.
autoShow tells the dialog whethr it should show itself automatically.

Definition at line 226 of file kpropertiesdialog.cpp.

References QPtrList::append(), KPropertiesDialog(), and KIO::stat().

KPropertiesDialog::KPropertiesDialog const KURL _tempUrl,
const KURL _currentDir,
const QString _defaultName,
QWidget parent = 0L,
const char *  name = 0L,
bool  modal = false,
bool  autoShow = true
 

Creates a properties dialog for a new .desktop file (whose name is not known yet), based on a template.

Special constructor for "File / New" in file-manager type applications.

Parameters:
_tempUrl template used for reading only
_currentDir directory where the file will be written to
_defaultName something to put in the name field, like mimetype.desktop
parent is the parent of the dialog widget.
name is the internal name.
modal tells the dialog whether it should be modal.
autoShow tells the dialog whethr it should show itself automatically.

Definition at line 245 of file kpropertiesdialog.cpp.

References QPtrList::append(), KURL::isEmpty(), and KPropertiesDialog().

KPropertiesDialog::KPropertiesDialog const QString title,
QWidget parent = 0L,
const char *  name = 0L,
bool  modal = false
 

Creates an empty properties dialog (for applications that want use a standard dialog, but for things not doable via the plugin-mechanism).

Parameters:
title is the string display as the "filename" in the caption of the dialog.
parent is the parent of the dialog widget.
name is the internal name.
modal tells the dialog whether it should be modal.

Definition at line 169 of file kpropertiesdialog.cpp.

References KPropertiesDialog().

KPropertiesDialog::~KPropertiesDialog  )  [virtual]
 

Cleans up the properties dialog and frees any associated resources, including the dialog itself.

Note that when a properties dialog is closed it cleans up and deletes itself.

Definition at line 345 of file kpropertiesdialog.cpp.

References QPtrList< KPropsDlgPlugin >::clear().


Member Function Documentation

bool KPropertiesDialog::canDisplay KFileItemList  _items  )  [static]
 

Determine whether there are any property pages available for the given file items.

Parameters:
_items the list of items to check.
Returns:
true if there are any property pages, otherwise false.

Definition at line 359 of file kpropertiesdialog.cpp.

References canDisplay().

Referenced by canDisplay().

bool KPropertiesDialog::showDialog KFileItem item,
QWidget parent = 0,
const char *  name = 0,
bool  modal = false
[static]
 

Immediately displays a Properties dialog using constructor with the same parameters.

On MS Windows, if item points to a local file, native (non modal) property dialog is displayed (parent and modal are ignored in this case).

Returns:
true on succesfull dialog displaying (can be false on win32).
Since:
3.4

Definition at line 267 of file kpropertiesdialog.cpp.

References QString::isEmpty(), KFileItem::localPath(), and showDialog().

Referenced by showDialog().

bool KPropertiesDialog::showDialog const KURL _url,
QWidget parent = 0,
const char *  name = 0,
bool  modal = false
[static]
 

Immediately displays a Properties dialog using constructor with the same parameters.

On MS Windows, if _url points to a local file, native (non modal) property dialog is displayed (parent and modal are ignored in this case).

Returns:
true on succesfull dialog displaying (can be false on win32).
Since:
3.4

Definition at line 279 of file kpropertiesdialog.cpp.

References KURL::isLocalFile(), KURL::path(), and showDialog().

bool KPropertiesDialog::showDialog const KFileItemList _items,
QWidget parent = 0,
const char *  name = 0,
bool  modal = false
[static]
 

Immediately displays a Properties dialog using constructor with the same parameters.

On MS Windows, if _items has one element and this element points to a local file, native (non modal) property dialog is displayed (parent and modal are ignored in this case).

Returns:
true on succesfull dialog displaying (can be false on win32).
Since:
3.4

Definition at line 290 of file kpropertiesdialog.cpp.

References QPtrList::count(), QPtrList::getFirst(), and showDialog().

void KPropertiesDialog::insertPlugin KPropsDlgPlugin plugin  ) 
 

Adds a "3rd party" properties plugin to the dialog.

Useful for extending the properties mechanism.

To create a new plugin type, inherit from the base class KPropsDlgPlugin and implement all the methods. If you define a service .desktop file for your plugin, you do not need to call insertPlugin().

Parameters:
plugin is a pointer to the KPropsDlgPlugin. The Properties dialog will do destruction for you. The KPropsDlgPlugin must have been created with the KPropertiesDialog as its parent.
See also:
KPropsDlgPlugin

Definition at line 351 of file kpropertiesdialog.cpp.

References QPtrList< KPropsDlgPlugin >::append(), and insertPlugin().

Referenced by insertPlugin().

const KURL& KPropertiesDialog::kurl  )  const [inline]
 

The URL of the file that has its properties being displayed.

This is only valid if the KPropertiesDialog was created/shown for one file or URL.

Returns:
a parsed URL.

Definition at line 253 of file kpropertiesdialog.h.

Referenced by KApplicationPropsPlugin::applyChanges(), KExecPropsPlugin::applyChanges(), KDesktopPropsPlugin::applyChanges(), KDevicePropsPlugin::applyChanges(), KBindingPropsPlugin::applyChanges(), KURLPropsPlugin::applyChanges(), KFilePropsPlugin::applyChanges(), KApplicationPropsPlugin::KApplicationPropsPlugin(), KBindingPropsPlugin::KBindingPropsPlugin(), KDesktopPropsPlugin::KDesktopPropsPlugin(), KExecPropsPlugin::KExecPropsPlugin(), KFileMetaPropsPlugin::KFileMetaPropsPlugin(), KFilePermissionsPropsPlugin::KFilePermissionsPropsPlugin(), KFilePropsPlugin::KFilePropsPlugin(), and KURLPropsPlugin::KURLPropsPlugin().

KFileItem* KPropertiesDialog::item  )  [inline]
 

Returns:
the file item for which the dialog is shown
Warning: this method returns the first item of the list. This means that you should use this only if you are sure the dialog is used for a single item. Otherwise, you probably want items() instead.

Definition at line 262 of file kpropertiesdialog.h.

Referenced by KFileMetaPropsPlugin::KFileMetaPropsPlugin(), KFilePermissionsPropsPlugin::KFilePermissionsPropsPlugin(), and KFilePropsPlugin::KFilePropsPlugin().

KFileItemList KPropertiesDialog::items  )  const [inline]
 

Returns:
the items for which the dialog is shown

Definition at line 267 of file kpropertiesdialog.h.

Referenced by KFilePermissionsPropsPlugin::applyChanges(), KFileSharePropsPlugin::applyChanges(), KFileMetaPropsPlugin::KFileMetaPropsPlugin(), KFilePermissionsPropsPlugin::KFilePermissionsPropsPlugin(), KFilePropsPlugin::KFilePropsPlugin(), and KFilePropsPlugin::postApplyChanges().

KDE_DEPRECATED KDialogBase* KPropertiesDialog::dialog  )  [inline]
 

Returns:
a pointer to the dialog
Deprecated:
KPropertiesDialog directly inherits from KDialogBase, so use this instead

Definition at line 273 of file kpropertiesdialog.h.

KDE_DEPRECATED const KDialogBase* KPropertiesDialog::dialog  )  const [inline]
 

Returns:
a pointer to the dialog
Deprecated:
KPropertiesDialog directly inherits from KDialogBase, so use this instead

Definition at line 278 of file kpropertiesdialog.h.

const KURL& KPropertiesDialog::currentDir  )  const [inline]
 

If the dialog is being built from a template, this method returns the current directory.

If no template, it returns QString::null. See the template form of the constructor.

Returns:
the current directory or QString::null

Definition at line 287 of file kpropertiesdialog.h.

Referenced by KFilePropsPlugin::KFilePropsPlugin().

const QString& KPropertiesDialog::defaultName  )  const [inline]
 

If the dialog is being built from a template, this method returns the default name.

If no template, it returns QString::null. See the template form of the constructor.

Returns:
the default name or QString::null

Definition at line 295 of file kpropertiesdialog.h.

Referenced by KFilePropsPlugin::KFilePropsPlugin().

void KPropertiesDialog::updateUrl const KURL _newUrl  ) 
 

Updates the item URL (either called by rename or because a global apps/mimelnk desktop file is being saved) Can only be called if the dialog applies to a single file or URL.

Parameters:
_newUrl the new URL

Definition at line 512 of file kpropertiesdialog.cpp.

References QPtrList::count(), QPtrListIterator::current(), endl(), QPtrList::first(), KURL::isEmpty(), kdDebug(), saveAs(), updateUrl(), and KURL::url().

Referenced by KFilePropsPlugin::applyChanges(), rename(), and updateUrl().

void KPropertiesDialog::rename const QString _name  ) 
 

Renames the item to the specified name.

This can only be called if the dialog applies to a single file or URL.

Parameters:
_name new filename, encoded.
See also:
FilePropsDlgPlugin::applyChanges

Definition at line 536 of file kpropertiesdialog.cpp.

References KURL::addPath(), QString::at(), QPtrList::count(), endl(), KURL::isEmpty(), kdDebug(), QString::length(), rename(), KURL::setFileName(), QString::truncate(), updateUrl(), and KURL::url().

Referenced by KFilePropsPlugin::applyChanges(), and rename().

void KPropertiesDialog::abortApplying  ) 
 

To abort applying changes.

Definition at line 559 of file kpropertiesdialog.cpp.

Referenced by KFilePropsPlugin::applyChanges(), and KFileSharePropsPlugin::applyChanges().

void KPropertiesDialog::showFileSharingPage  ) 
 

Shows the page that was previously set by setFileSharingPage(), or does nothing if no page was set yet.

See also:
setFileSharingPage
Since:
3.1

Definition at line 315 of file kpropertiesdialog.cpp.

void KPropertiesDialog::setFileSharingPage QWidget page  ) 
 

Sets the file sharing page.

This page is shown when calling showFileSharingPage().

Parameters:
page the page to set
See also:
showFileSharingPage
Since:
3.3

Definition at line 322 of file kpropertiesdialog.cpp.

References setFileSharingPage().

Referenced by setFileSharingPage().

void KPropertiesDialog::setFileNameReadOnly bool  ro  ) 
 

Call this to make the filename lineedit readonly, to prevent the user from renaming the file.

Parameters:
ro true if the lineedit should be read only
Since:
3.2

Definition at line 327 of file kpropertiesdialog.cpp.

References QPtrList< KPropsDlgPlugin >::first(), QPtrList< KPropsDlgPlugin >::next(), KFilePropsPlugin::setFileNameReadOnly(), and setFileNameReadOnly().

Referenced by setFileNameReadOnly().

void KPropertiesDialog::slotOk  )  [virtual, slot]
 

Called when the user presses 'Ok'.

Reimplemented from KDialogBase.

Definition at line 371 of file kpropertiesdialog.cpp.

References QDialog::accept(), applied(), KPropsDlgPlugin::applyChanges(), QObject::className(), endl(), QPtrList< KPropsDlgPlugin >::first(), KPropsDlgPlugin::isDirty(), kdDebug(), QPtrList< KPropsDlgPlugin >::next(), KFilePropsPlugin::postApplyChanges(), propertiesClosed(), and KPropsDlgPlugin::setDirty().

void KPropertiesDialog::slotCancel  )  [virtual, slot]
 

Called when the user presses 'Cancel'.

Reimplemented from KDialogBase.

Definition at line 416 of file kpropertiesdialog.cpp.

References canceled(), and propertiesClosed().

void KPropertiesDialog::propertiesClosed  )  [signal]
 

This signal is emitted when the Properties Dialog is closed (for example, with OK or Cancel buttons).

Referenced by slotCancel(), and slotOk().

void KPropertiesDialog::applied  )  [signal]
 

This signal is emitted when the properties changes are applied (for example, with the OK button).

Referenced by slotOk().

void KPropertiesDialog::canceled  )  [signal]
 

This signal is emitted when the properties changes are aborted (for example, with the Cancel button).

Referenced by slotCancel().

void KPropertiesDialog::saveAs const KURL oldUrl,
KURL newUrl
[signal]
 

Emitted before changes to oldUrl are saved as newUrl.

The receiver may change newUrl to point to an alternative save location.

Referenced by updateUrl().


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.4.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Tue Apr 12 23:15:07 2005 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003