kio Library: KURLBar Class Reference (kio Library)

| # kio Library API Documentation
Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KURLBar Class Reference

KURLBar is a widget that displays icons together with a description. A URL-bar widget, as used in the KFileDialog. More...

`#include <kurlbar.h>`

Inheritance diagram for KURLBar:

[legend]
Collaboration diagram for KURLBar:

[legend]
List of all members.

## Public Slots
virtual void | setCurrentItem (const KURL &url)
## Signals
void | activated (const KURL &url)
## Public Member Functions
| KURLBar (bool useGlobalItems, QWidget *parent=0, const char *name=0, WFlags f=0)
| ~KURLBar ()
virtual KURLBarItem * | insertItem (const KURL &url, const QString &description, bool applicationLocal=true, const QString &icon=QString::null, KIcon::Group group=KIcon::Panel)
virtual KURLBarItem * | insertDynamicItem (const KURL &url, const QString &description, const QString &icon=QString::null, KIcon::Group group=KIcon::Panel)
virtual void | setOrientation (Qt::Orientation orient)
Orientation | orientation () const
virtual void | setListBox (KURLBarListBox *)
KURLBarListBox * | listBox () const
virtual void | setIconSize (int size)
int | iconSize () const
virtual void | clear ()
virtual QSize | sizeHint () const
virtual QSize | minimumSizeHint () const
virtual void | readConfig (KConfig *config, const QString &itemGroup)
virtual void | writeConfig (KConfig *config, const QString &itemGroup)
virtual void | readItem (int i, KConfig *config, bool applicationLocal)
virtual void | writeItem (KURLBarItem *item, int i, KConfig *, bool global)
KURLBarItem * | currentItem () const
KURL | currentURL () const
bool | isModified () const
bool | isImmutable () const
bool | isVertical () const
## Protected Slots
virtual void | slotContextMenuRequested (QListBoxItem *, const QPoint &pos)
virtual void | slotSelected (QListBoxItem *)
virtual void | slotDropped (QDropEvent *)
## Protected Member Functions
virtual bool | addNewItem ()
virtual bool | editItem (KURLBarItem *item)
virtual void | resizeEvent (QResizeEvent *)
virtual void | paletteChange (const QPalette &)
virtual void | virtual_hook (int id, void *data)
## Protected Attributes
KURLBarItem * | m_activeItem
bool | m_useGlobal:1
bool | m_isModified:1
bool | m_isImmutable:1

## Detailed Description

KURLBar is a widget that displays icons together with a description. A URL-bar widget, as used in the KFileDialog.

They can be arranged either horizontally or vertically. Clicking on an item will cause the activated() signal to be emitted. The user can edit existing items by choosing "Edit entry" in the contextmenu. He can also remove or add new entries (via drag&drop or the context menu).

KURLBar offers the methods readConfig() and writeConfig() to read and write the configuration of all the entries. It can differentiate between global and local entries -- global entries will be saved in the global configuration (kdeglobals), while local entries will be saved in your application's KConfig object.

Due to the configurability, you usually only insert some default entries once and then solely use the read and writeConfig methods to preserve the user's configuration.

The widget has a "current" item, that is visualized to differentiate it from others.

Author:
  Carsten Pfeiffer <pfeiffer@kde.org>

Definition at line 230 of file kurlbar.h.

## Constructor & Destructor Documentation

KURLBar::KURLBar | ( | bool | useGlobalItems,
|  | QWidget * | parent = `0`,
|  | const char * | name = `0`,
|  | WFlags | f = `0`
| ) |

| Constructs a KURLBar. Set `useGlobalItems` to true if you want to allow global/local item separation. Definition at line 330 of file kurlbar.cpp. References QWhatsThis::add(), isVertical(), m_activeItem, m_isImmutable, m_isModified, m_useGlobal, and setListBox().

KURLBar::~KURLBar | ( |  | ) |

| Destroys the KURLBar. Definition at line 353 of file kurlbar.cpp.

## Member Function Documentation

KURLBarItem * KURLBar::insertItem | ( | const KURL & | url,
|  | const QString & | description,
|  | bool | applicationLocal = `true`,
|  | const QString & | icon = `QString::null`,
|  | KIcon::Group | group = `KIcon::Panel`
| ) | `[virtual]`

| Inserts a new item into the KURLBar and returns the created KURLBarItem. `url` the url of the item `description` the description of the item (shown in the view) `applicationLocal` whether this should be a global or a local item `icon` an icon -- if empty, the default icon for the url will be used `group` the icon-group for using icon-effects Definition at line 358 of file kurlbar.cpp. References QListBox::insertItem(), and KURLBarItem::setApplicationLocal(). Referenced by readItem(), and slotDropped().

KURLBarItem * KURLBar::insertDynamicItem | ( | const KURL & | url,
|  | const QString & | description,
|  | const QString & | icon = `QString::null`,
|  | KIcon::Group | group = `KIcon::Panel`
| ) | `[virtual]`

| Inserts a new dynamic item into the KURLBar and returns the created KURLBarItem. `url` the url of the item `description` the description of the item (shown in the view) `icon` an icon -- if empty, the default icon for the url will be used `group` the icon-group for using icon-effects Since: 3.2 Definition at line 368 of file kurlbar.cpp. References QListBox::insertItem().

void KURLBar::setOrientation | ( | Qt::Orientation | orient | ) | `[virtual]`

| The items can be arranged either vertically in one column or horizontally in one row. See also: orientation Definition at line 376 of file kurlbar.cpp. References isVertical(), and KURLBarListBox::setOrientation(). Referenced by setListBox().

Qt::Orientation KURLBar::orientation | ( |  | ) | const

| Returns: the current orientation mode. See also: setOrientation Definition at line 387 of file kurlbar.cpp. References KURLBarListBox::orientation().

void KURLBar::setListBox | ( | KURLBarListBox * |  | ) | `[virtual]`

| Allows to set a custom KURLBarListBox. Note: The previous listbox will be deleted. Items of the previous listbox will not be moved to the new box. See also: listBox Definition at line 392 of file kurlbar.cpp. References setOrientation(), QListBox::setSelectionMode(), slotContextMenuRequested(), slotDropped(), and slotSelected(). Referenced by KURLBar().

KURLBarListBox* KURLBar::listBox | ( |  | ) | const`[inline]`

| Returns: the KURLBarListBox that is used. See also: setListBox Definition at line 298 of file kurlbar.h.

void KURLBar::setIconSize | ( | int | size | ) | `[virtual]`

| Sets the default iconsize to be used for items inserted with insertItem. By default KIcon::SizeMedium. See also: iconsize Definition at line 422 of file kurlbar.cpp. References QListBox::firstItem(), KURLBarItem::icon(), KURLBarItem::iconGroup(), KURLBarItem::setIcon(), and sizeHint(). Referenced by slotContextMenuRequested().

int KURLBar::iconSize | ( |  | ) | const`[inline]`

| Returns: the default iconsize used for items inserted with insertItem. By default KIcon::SizeMedium See also: setIconSize Definition at line 311 of file kurlbar.h. Referenced by KURLBarItem::sizeHint().

void KURLBar::clear | ( |  | ) | `[virtual]`

| Clears the view, removes all items. Definition at line 440 of file kurlbar.cpp. References QListBox::clear().

QSize KURLBar::sizeHint | ( |  | ) | const`[virtual]`

| Returns: a proper sizehint, depending on the orientation and the number of items available. Definition at line 467 of file kurlbar.cpp. References QListBox::firstItem(), QSize::height(), isVertical(), KURLBarItem::sizeHint(), and QSize::width(). Referenced by minimumSizeHint(), and setIconSize().

QSize KURLBar::minimumSizeHint | ( |  | ) | const`[virtual]`

| Returns: a proper minimum size (reimplemented) Definition at line 509 of file kurlbar.cpp. References QSize::height(), sizeHint(), and QSize::width().

void KURLBar::readConfig | ( | KConfig * | config,
|  | const QString & | itemGroup
| ) | `[virtual]`

| Call this method to read a saved configuration from `config`, inside the group `itemGroup`. All items in there will be restored. The reading of every item is delegated to the readItem() method. Definition at line 578 of file kurlbar.cpp. References KGlobal::config(), m_isImmutable, m_useGlobal, readItem(), and KConfigBase::readNumEntry().

void KURLBar::writeConfig | ( | KConfig * | config,
|  | const QString & | itemGroup
| ) | `[virtual]`

| Call this method to save the current configuration into `config`, inside the group `iconGroup`. The writeItem() method is used to save each item. Definition at line 616 of file kurlbar.cpp. References KURLBarItem::applicationLocal(), QListBox::firstItem(), KURLBarItem::isPersistent(), m_isModified, m_useGlobal, and writeItem().

void KURLBar::readItem | ( | int | i,
|  | KConfig * | config,
|  | bool | applicationLocal
| ) | `[virtual]`

| Called from readConfig() to read the i'th from `config`. After reading a KURLBarItem is created and initialized with the read values (as well as the given `applicationLocal`). Definition at line 601 of file kurlbar.cpp. References KURL::fromPathOrURL(), insertItem(), KProtocolInfo::isKnownProtocol(), KURL::isValid(), and QString::number(). Referenced by readConfig().

void KURLBar::writeItem | ( | KURLBarItem * | item,
|  | int | i,
|  | KConfig * | ,
|  | bool | global
| ) | `[virtual]`

| Called from writeConfig() to save the KURLBarItem `item` as the i'th entry in the config-object. `global` tell whether it should be saved in the global configuration or not (using KConfig::writeEntry( key, value, true, global ) ). Definition at line 675 of file kurlbar.cpp. References QString::number(). Referenced by writeConfig().

KURLBarItem * KURLBar::currentItem | ( |  | ) | const

| Returns: the current KURLBarItem, or 0L if none. See also: setCurrentItem currentURL Definition at line 564 of file kurlbar.cpp. References QListBox::currentItem(), and QListBox::item(). Referenced by currentURL().

KURL KURLBar::currentURL | ( |  | ) | const

| Returns: the url of the current item or an invalid url, if there is no current item. See also: currentItem setCurrentItem Definition at line 572 of file kurlbar.cpp. References currentItem(), and KURLBarItem::url().

bool KURLBar::isModified | ( |  | ) | const`[inline]`

| Returns: true when the urlbar was modified by the user (e.g. by editing/adding/removing one or more entries). Will be reset to false after calling writeConfig(). Definition at line 375 of file kurlbar.h.

bool KURLBar::isImmutable | ( |  | ) | const`[inline]`

| Returns: true when the urlbar may not be modified by the user Definition at line 380 of file kurlbar.h.

bool KURLBar::isVertical | ( |  | ) | const`[inline]`

| Returns: true if the bar is in vertical mode. Definition at line 385 of file kurlbar.h. Referenced by KURLBar(), setOrientation(), and sizeHint().

void KURLBar::setCurrentItem | ( | const KURL & | url | ) | `[virtual, slot]`

| Makes the item with the url `url` the current item. Does nothing if no item with that url is available. See also: currentItem currentURL Definition at line 536 of file kurlbar.cpp. References QListBox::clearSelection(), QListBox::firstItem(), m_activeItem, QListBox::setCurrentItem(), QListBox::setSelected(), KURL::url(), and KURLBarItem::url(). Referenced by slotContextMenuRequested().

void KURLBar::activated | ( | const KURL & | url | ) | `[signal]`

| This signal is emitted when the user activated an item, e.g., by clicking on it. Referenced by slotSelected().

bool KURLBar::addNewItem | ( |  | ) | `[protected, virtual]`

| Pops up a KURLBarItemDialog to let the user add a new item. Uses editItem() to do the job. Returns: false if the user aborted the dialog and no item is added. Definition at line 773 of file kurlbar.cpp. References editItem(), and QListBox::insertItem(). Referenced by slotContextMenuRequested().

bool KURLBar::editItem | ( | KURLBarItem * | item | ) | `[protected, virtual]`

| Pops up a KURLBarItemDialog to let the user edit the properties of `item`. Invoked e.g. by addNewItem(), when the user drops a url onto the bar or from the contextmenu. Returns: false if the user aborted the dialog and `item` is not changed. Definition at line 786 of file kurlbar.cpp. References m_isModified, m_useGlobal, QListBox::triggerUpdate(), and KURLBarItem::url(). Referenced by addNewItem(), and slotContextMenuRequested().

void KURLBar::slotContextMenuRequested | ( | QListBoxItem * | ,
|  | const QPoint & | pos
| ) | `[protected, virtual, slot]`

| Reimplemented to show a contextmenu, allowing the user to add, edit or remove items, or change the iconsize. Definition at line 713 of file kurlbar.cpp. References addNewItem(), editItem(), QPopupMenu::exec(), QPopupMenu::insertItem(), QPopupMenu::insertSeparator(), KURLBarItem::isPersistent(), m_activeItem, m_isImmutable, m_isModified, setCurrentItem(), setIconSize(), QListBox::triggerUpdate(), and KURLBarItem::url(). Referenced by setListBox().

void KURLBar::slotSelected | ( | QListBoxItem * |  | ) | `[protected, virtual, slot]`

| Called when an item has been selected. Emits the activated() signal. Definition at line 525 of file kurlbar.cpp. References activated(), m_activeItem, QListBox::setCurrentItem(), and KURLBarItem::url(). Referenced by setListBox().

void KURLBar::slotDropped | ( | QDropEvent * |  | ) | `[protected, virtual, slot]`

| Called when a url was dropped onto the bar to show a KURLBarItemDialog. Definition at line 695 of file kurlbar.cpp. References QValueList::begin(), QValueList::end(), insertItem(), and m_isModified. Referenced by setListBox().

## Member Data Documentation

KURLBarItem* KURLBar::m_activeItem`[protected]`

| The currently active item. Definition at line 426 of file kurlbar.h. Referenced by KURLBar(), setCurrentItem(), slotContextMenuRequested(), and slotSelected().

bool KURLBar::m_useGlobal`[protected]`

| Whether we support global entries or just local ones. Definition at line 430 of file kurlbar.h. Referenced by editItem(), KURLBar(), readConfig(), and writeConfig().

bool KURLBar::m_isModified`[protected]`

| Whether the urlbar was modified by the user (e.g. by editing/adding/removing an item). Definition at line 436 of file kurlbar.h. Referenced by editItem(), KURLBar(), slotContextMenuRequested(), slotDropped(), and writeConfig().

bool KURLBar::m_isImmutable`[protected]`

| Whether the urlbar may be modified by the user. If immutable is true, the urlbar can not be modified. Definition at line 442 of file kurlbar.h. Referenced by KURLBar(), readConfig(), and slotContextMenuRequested().

The documentation for this class was generated from the following files:

- kurlbar.h
- kurlbar.cpp

This file is part of the documentation for kio Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:25:34 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003