KToolBar Class Reference
Floatable toolbar with auto resize. More...
#include <ktoolbar.h>
Inheritance diagram for KToolBar:


Public Types | |
enum | IconText { IconOnly = 0, IconTextRight, TextOnly, IconTextBottom } |
enum | BarStatus { Toggle, Show, Hide } |
enum | BarPosition { Unmanaged, Floating, Top, Bottom, Right, Left, Flat } |
Public Slots | |
virtual void | setIconText (const QString &txt) |
Signals | |
void | clicked (int id) |
void | doubleClicked (int id) |
void | pressed (int) |
void | released (int) |
void | toggled (int) |
void | highlighted (int id, bool isHighlighted) |
void | highlighted (int id) |
void | moved (BarPosition) |
void | modechange () |
void | toolbarDestroyed () |
Public Member Functions | |
KToolBar (QWidget *parent, const char *name=0, bool honorStyle=false, bool readConfig=true) | |
KToolBar (QMainWindow *parentWindow, QMainWindow::ToolBarDock dock, bool newLine=false, const char *name=0, bool honorStyle=false, bool readConfig=true) | |
KToolBar (QMainWindow *parentWindow, QWidget *dock, bool newLine=false, const char *name=0, bool honorStyle=false, bool readConfig=true) | |
virtual | ~KToolBar () |
int | insertButton (const QString &icon, int id, bool enabled=true, const QString &text=QString::null, int index=-1, KInstance *_instance=KGlobal::instance()) |
int | insertButton (const QString &icon, int id, const char *signal, const QObject *receiver, const char *slot, bool enabled=true, const QString &text=QString::null, int index=-1, KInstance *_instance=KGlobal::instance()) |
int | insertButton (const QPixmap &pixmap, int id, bool enabled=true, const QString &text=QString::null, int index=-1) |
int | insertButton (const QPixmap &pixmap, int id, const char *signal, const QObject *receiver, const char *slot, bool enabled=true, const QString &text=QString::null, int index=-1) |
int | insertButton (const QString &icon, int id, QPopupMenu *popup, bool enabled, const QString &_text, int index=-1) |
int | insertButton (const QPixmap &pixmap, int id, QPopupMenu *popup, bool enabled, const QString &_text, int index=-1) |
int | insertLined (const QString &text, int id, const char *signal, const QObject *receiver, const char *slot, bool enabled=true, const QString &toolTipText=QString::null, int size=70, int index=-1) |
int | insertCombo (const QStringList &list, int id, bool writable, const char *signal, const QObject *receiver, const char *slot, bool enabled=true, const QString &tooltiptext=QString::null, int size=70, int index=-1, QComboBox::Policy policy=QComboBox::AtBottom) |
int | insertCombo (const QString &text, int id, bool writable, const char *signal, QObject *receiver, const char *slot, bool enabled=true, const QString &tooltiptext=QString::null, int size=70, int index=-1, QComboBox::Policy policy=QComboBox::AtBottom) |
int | insertSeparator (int index=-1, int id=-1) |
int | insertLineSeparator (int index=-1, int id=-1) |
int | insertWidget (int id, int width, QWidget *_widget, int index=-1) |
int | insertAnimatedWidget (int id, QObject *receiver, const char *slot, const QString &icons, int index=-1) |
KAnimWidget * | animatedWidget (int id) |
void | addConnection (int id, const char *signal, const QObject *receiver, const char *slot) |
void | setItemEnabled (int id, bool enabled) |
void | setButtonIcon (int id, const QString &_icon) |
void | setButtonPixmap (int id, const QPixmap &_pixmap) |
void | setButtonIconSet (int id, const QIconSet &iconset) |
void | setDelayedPopup (int id, QPopupMenu *_popup, bool toggle=false) |
void | setAutoRepeat (int id, bool flag=true) |
void | setToggle (int id, bool flag=true) |
void | toggleButton (int id) |
void | setButton (int id, bool flag) |
bool | isButtonOn (int id) const |
void | setLinedText (int id, const QString &text) |
QString | getLinedText (int id) const |
void | insertComboItem (int id, const QString &text, int index) |
void | insertComboList (int id, const QStringList &list, int index) |
void | removeComboItem (int id, int index) |
void | setCurrentComboItem (int id, int index) |
void | changeComboItem (int id, const QString &text, int index=-1) |
void | clearCombo (int id) |
QString | getComboItem (int id, int index=-1) const |
KComboBox * | getCombo (int id) |
KLineEdit * | getLined (int id) |
KToolBarButton * | getButton (int id) |
void | alignItemRight (int id, bool right=true) |
QWidget * | getWidget (int id) |
void | setItemAutoSized (int id, bool yes=true) |
void | clear () |
void | removeItem (int id) |
void | removeItemDelayed (int id) |
void | hideItem (int id) |
void | showItem (int id) |
int | itemIndex (int id) |
int | idAt (int index) |
void | setFullSize (bool flag=true) |
bool | fullSize () const |
void | enableMoving (bool flag=true) KDE_DEPRECATED |
void | setBarPos (BarPosition bpos) |
BarPosition | barPos () const |
bool | enable (BarStatus stat) KDE_DEPRECATED |
void | setMaxHeight (int h) KDE_DEPRECATED |
int | maxHeight () KDE_DEPRECATED |
void | setMaxWidth (int dw) KDE_DEPRECATED |
int | maxWidth () KDE_DEPRECATED |
void | setTitle (const QString &_title) |
void | enableFloating (bool flag) KDE_DEPRECATED |
void | setIconText (IconText it) |
void | setIconText (IconText it, bool update) |
IconText | iconText () const |
void | setIconSize (int size) |
void | setIconSize (int size, bool update) |
int | iconSize () const |
void | setEnableContextMenu (bool enable=true) |
bool | contextMenuEnabled () const |
void | setItemNoStyle (int id, bool no_style=true) |
void | setFlat (bool flag) |
int | count () const |
void | saveState () |
void | saveSettings (KConfig *config, const QString &configGroup) |
void | applySettings (KConfig *config, const QString &configGroup, bool force) |
void | applySettings (KConfig *config, const QString &configGroup) |
void | setXMLGUIClient (KXMLGUIClient *client) |
void | setText (const QString &txt) |
QString | text () const |
void | setStretchableWidget (QWidget *w) |
QSizePolicy | sizePolicy () const |
bool | highlight () const |
QSize | sizeHint () const |
QSize | minimumSizeHint () const |
QSize | minimumSize () const |
void | hide () |
void | show () |
void | updateRects (bool=false) |
void | loadState (const QDomElement &e) |
void | saveState (QDomElement &e) |
void | positionYourself (bool force=false) |
Static Public Member Functions | |
bool | highlightSetting () |
bool | transparentSetting () |
IconText | iconTextSetting () |
Protected Member Functions | |
void | mousePressEvent (QMouseEvent *) |
void | childEvent (QChildEvent *e) |
void | showEvent (QShowEvent *e) |
void | resizeEvent (QResizeEvent *e) |
bool | event (QEvent *e) |
void | applyAppearanceSettings (KConfig *config, const QString &_configGroup, bool forceGlobal=false) |
QString | settingsGroup () const |
virtual void | virtual_hook (int id, void *data) |
Properties | |
IconText | iconText |
BarPosition | barPos |
bool | fullSize |
int | iconSize |
QString | text |
Detailed Description
Floatable toolbar with auto resize.A KDE-style toolbar.
KToolBar can be dragged around in and between different docks.
A KToolBar can contain all sorts of widgets.
KToolBar can be used as a standalone widget, but KMainWindow provides easy factories and management of one or more toolbars. Once you have a KToolBar object, you can insert items into it with the insert... methods, or remove them with the removeItem() method. This can be done at any time; the toolbar will be automatically updated. There are also many methods to set per-child properties like alignment and toggle behavior.
KToolBar uses a global config group to load toolbar settings on construction. It will reread this config group on a KApplication::appearanceChanged() signal.
- Version:
- Id
- ktoolbar.h,v 1.179 2004/07/09 09:40:15 waba Exp
- Author:
- Reginald Stadlbauer <reggie@kde.org>, Stephan Kulow <coolo@kde.org>, Sven Radej <radej@kde.org>.
Definition at line 103 of file ktoolbar.h.
Member Enumeration Documentation
|
The state of the status bar. Definition at line 119 of file ktoolbar.h. |
|
Possible bar positions. Definition at line 123 of file ktoolbar.h. |
Constructor & Destructor Documentation
|
Normal constructor. This constructor is used by the XML-GUI. If you use it, you need to call QMainWindow::addToolBar to specify the position of the toolbar. So it's simpler to use the other constructor.
The toolbar will read in various global config settings for things like icon size and text position, etc. However, some of the settings will be honored only if
|
|
Constructor for non-XML-GUI applications.
The toolbar will read in various global config settings for things like icon size and text position, etc. However, some of the settings will be honored only if
|
|
Constructor for non-XML-GUI applications.
The toolbar will read in various global config settings for things like icon size and text position, etc. However, some of the settings will be honored only if
|
|
Destructor. Definition at line 225 of file ktoolbar.cpp. References toolbarDestroyed(). |
Member Function Documentation
|
Insert a button (a KToolBarButton) with a pixmap. The pixmap is loaded by the button itself based on the global icon settings.
You should connect to one or more signals in KToolBar: clicked() , pressed() , released() , or highlighted() and if the button is a toggle button ( setToggle() ) toggled() . Those signals have
Referenced by KPasteTextAction::plug(), KToolBarPopupAction::plug(), KActionMenu::plug(), KRecentFilesAction::plug(), and KAction::plug(). |
|
This is the same as above, but with specified signals and slots to which this button will be connected. You can add more signals with addConnection().
|
|
Inserts a button (a KToolBarButton) with the specified pixmap. This pixmap will be used as the "active" one and the disabled and default ones will be autogenerated. It is recommended that you use the insertButton function that allows you to specify the icon name rather then the pixmap itself. Specifying the icon name is much more flexible.
You should connect to one or more signals in KToolBar: clicked() , pressed() , released() , or highlighted() and if the button is a toggle button ( setToggle() ) toggled() . Those signals have
|
|
This is the same as above, but with specified signals and slots to which this button will be connected. You can add more signals with addConnection().
|
|
Inserts a button with popupmenu.
Button will have small triangle. You have to connect to popup's signals. The signals KButton::pressed(), KButton::released(), KButton::clicked() or KButton::doubleClicked() are References KToolBarButton::setPopup(). |
|
Inserts a button with popupmenu.
Button will have small triangle. You have to connect to popup's signals. The signals KButton::pressed(), KButton::released(), KButton::clicked() or KButton::doubleClicked() are References KToolBarButton::setPopup(). |
|
Inserts a KLineEdit. You have to specify signals and slots to which KLineEdit will be connected. KLineEdit has all slots QLineEdit has, plus signals KLineEdit::completion and KLineEdit::textRotation KLineEdit can be set to autoresize itself to full free width in toolbar, that is to last right aligned item. For that, toolbar must be set to full width (which it is by default).
References KLineEdit::setText(). |
|
Inserts a KComboBox with list. Can be writable, but cannot contain pixmaps. By default inserting policy is AtBottom, i.e. typed items are placed at the bottom of the list. Can be autosized. If the size argument is specified as -1, the width of the combobox is automatically computed.
Referenced by KSelectAction::plug(). |
|
Insert a KComboBox with text. The rest is the same as above.
|
|
Inserts a separator into the toolbar with the given
|
|
Inserts a line separator into the toolbar with the given
|
|
Inserts a user-defined widget.
The widget Widget must have a QWidget for base class. Widget can be autosized to full width. If you forget about it, you can get a pointer to this widget with getWidget().
Referenced by KWidgetAction::plug(). |
|
Inserts an animated widget. A KAnimWidget will be created internally using the icon name you provide. This will emit a signal (clicked()) whenever the animation widget is clicked.
References clicked(). |
|
This will return a pointer to the animated widget with the given
|
|
Adds connections to items.
It is important that you know the References getWidget(). |
|
Enables/disables item. Definition at line 473 of file ktoolbar.cpp. References getWidget(). |
|
Sets the icon for a button. Can be used while button is visible. Definition at line 489 of file ktoolbar.cpp. References getButton(), and KToolBarButton::setIcon(). |
|
Sets button pixmap. Can be used while button is visible. Definition at line 481 of file ktoolbar.cpp. References getButton(), and KToolBarButton::setPixmap(). |
|
Sets a button icon from a QIconSet. Can be used while button is visible. Definition at line 496 of file ktoolbar.cpp. References getButton(), and KToolBarButton::setIconSet(). |
|
Sets a delayed popup for a button. Delayed popup is what you see in Netscape Navigator's Previous and Next buttons: If you click them you go back or forth. If you press them long enough, you get a history-menu. This is exactly what we do here. You will insert a normal button with connection (or use signals from toolbar): bar->insertButton(icon, id, SIGNAL(clicked ()), this, SLOT (slotClick()), true, "click or wait for popup"); bar->setDelayedPopup (id, historyPopup);
Don't add delayed popups to buttons which have normal popups. You may add popups which are derived from QPopupMenu. You may add popups that are already in the menu bar or are submenus of other popups. Definition at line 504 of file ktoolbar.cpp. References getButton(), and KToolBarButton::setDelayedPopup(). Referenced by KPasteTextAction::plug(), KToolBarPopupAction::plug(), KActionMenu::plug(), and KRecentFilesAction::plug(). |
|
Turns a button into an autorepeat button. Toggle buttons, buttons with menus, or buttons with delayed menus cannot be made into autorepeat buttons. Moreover, you can and will receive only the signal clicked(), but not pressed() or released(). When the user presses this button, you will receive the signal clicked(), and if the button is still pressed after some time, you will receive more clicked() signals separated by regular intervals. Since this uses QButton::setAutoRepeat() , I can't quantify 'some'. Definition at line 512 of file ktoolbar.cpp. References getButton(). |
|
Turns button into a toggle button if Definition at line 520 of file ktoolbar.cpp. References getButton(), and KToolBarButton::setToggle(). Referenced by KToggleAction::plug(). |
|
Toggles a togglebutton.
If the button is a toggle button (see setToggle()) the button state will be toggled. This will also cause the toolbar to emit the signal KButton::toggled() with parameter References getButton(), and KToolBarButton::toggle(). |
|
Sets a toggle button state. If the button is a toggle button (see setToggle()) this will set its state flag. This will also emit the signal KButton::toggled().
References getButton(), and KToolBarButton::on(). Referenced by KToggleAction::plug(). |
|
Returns
|
|
Sets the text of a line editor. Cursor is set at end of text. Definition at line 551 of file ktoolbar.cpp. References getLined(), and KLineEdit::setText(). |
|
Returns the line editor text.
|
|
Inserts Definition at line 566 of file ktoolbar.cpp. References getCombo(). |
|
Inserts Definition at line 573 of file ktoolbar.cpp. References getCombo(). |
|
Removes item Definition at line 581 of file ktoolbar.cpp. References getCombo(). |
|
Sets item Definition at line 589 of file ktoolbar.cpp. References getCombo(), and KComboBox::setCurrentItem(). |
|
Changes item
References getCombo(). |
|
Clears the combobox Does not delete it or hide it. Definition at line 605 of file ktoolbar.cpp. References getCombo(). |
|
Returns text of item
index = -1 refers to current item. Definition at line 613 of file ktoolbar.cpp. |
|
Returns a pointer to the combobox with
KComboBox *combo = toolbar->getCombo(combo_id); Referenced by changeComboItem(), clearCombo(), insertComboItem(), insertComboList(), KSelectAction::plug(), removeComboItem(), and setCurrentComboItem(). |
|
Returns a pointer to KToolBarLined with
KLineEdit * lined = toolbar->getKToolBarLined(lined_id); Referenced by setLinedText(). |
|
Returns a pointer to KToolBarButton. Example: KToolBarButton * button = toolbar->getButton(button_id); Using this method is not recommended. Definition at line 638 of file ktoolbar.cpp. Referenced by KToolBarRadioGroup::addButton(), KPasteTextAction::plug(), KToolBarPopupAction::plug(), KActionMenu::plug(), KRecentFilesAction::plug(), KAction::plug(), setAutoRepeat(), setButton(), setButtonIcon(), setButtonIconSet(), setButtonPixmap(), setDelayedPopup(), setItemNoStyle(), setToggle(), and toggleButton(). |
|
Align item to the right. This works only if toolbar is set to full width.
|
|
Returns a pointer to the widget corresponding to
Referenced by addConnection(), hideItem(), itemIndex(), setItemAutoSized(), setItemEnabled(), and showItem(). |
|
Set item autosized.
This works only if the toolbar is set to full width. Only
References getWidget(). Referenced by KWidgetAction::plug(). |
|
Remove all items. The toolbar is redrawn after it. Definition at line 674 of file ktoolbar.cpp. |
|
Remove item Item is deleted. Toolbar is redrawn after it. Definition at line 682 of file ktoolbar.cpp. |
|
Remove item Item is deleted when toolbar is redrawn. Definition at line 698 of file ktoolbar.cpp. References endl(), and kdDebug(). Referenced by KAction::unplug(). |
|
Hide item Definition at line 717 of file ktoolbar.cpp. References getWidget(). |
|
Show item Definition at line 725 of file ktoolbar.cpp. References getWidget(). |
|
Returns the index of the item
References getWidget(). |
|
Returns the id of the item at the given index.
|
|
Set toolbar to full parent size (default). In full size mode the bar extends over the parent's full width or height. If the mode is disabled the toolbar tries to take as much space as it needs without wrapping, but it does not exceed the parent box. You can force a certain width or height with setMaxWidth() or setMaxHeight(). If you want to use right-aligned items or auto-sized items you must use full size mode. Definition at line 745 of file ktoolbar.cpp. |
|
Returns the full-size mode enabled flag.
|
|
Enable or disable moving of toolbar.
|
|
Set position of toolbar.
|
|
Returns the toolbar position.
|
|
Show, hide, or toggle toolbar. This method is provided for compatibility only, please use show() and/or hide() instead.
|
|
Use setMaximumHeight() instead. Definition at line 801 of file ktoolbar.cpp. |
|
Returns the value set with setMaxHeight().
|
|
Use setMaximumWidth() instead. Set maximal width of horizontal (top or bottom) toolbar. Definition at line 812 of file ktoolbar.cpp. |
|
Returns the value set with setMaxWidth(). Use maximumWidth() instead.
|
|
Set title for toolbar when it floats. Titles are however not (yet) visible. You can't change toolbar's title while it's floating. Definition at line 824 of file ktoolbar.cpp. |
|
Use setMovingEnabled(bool) instead. Definition at line 830 of file ktoolbar.cpp. |
|
Set the kind of painting for buttons. Choose from:
|
|
Similar to setIconText(IconText it) but allows you to disable or enable updating.
If |
|
Returns the current text style for buttons.
|
|
Set the icon size to load. Usually you should not call this, the icon size is taken care of by KIconLoader and globally configured. By default, the toolbar will load icons of size 32 for main toolbars and 22 for other toolbars
|
|
Same as setIconText(int size) but allows you to disable the toolbar update.
|
|
Returns the current icon size for buttons.
Referenced by saveSettings(). |
|
This allows you to enable or disable the context menu.
|
|
Returns the context menu enabled flag.
|
|
This will inform a toolbar button to ignore certain style changes. Specifically, it will ignore IconText (always IconOnly) and will not allow image effects to apply.
References getButton(), and KToolBarButton::setNoStyle(). |
|
Returns the total number of items in the toolbar.
|
|
Instruct the toolbar to save it's current state to either the app config file or to the XML-GUI resource file (whichever has precedence). Definition at line 962 of file ktoolbar.cpp. References KGlobal::config(), saveSettings(), and KConfigBase::sync(). Referenced by KXMLGUIBuilder::removeContainer(). |
|
Save the toolbar settings to group Definition at line 1043 of file ktoolbar.cpp. References KConfigBase::hasDefault(), iconSize(), KConfigBase::revertToDefault(), and KConfigBase::writeEntry(). Referenced by KMainWindow::saveMainWindowSettings(), and saveState(). |
|
Read the toolbar settings from group
Even default settings are re-applied if References KConfigBase::hasGroup(), KConfigBase::readBoolEntry(), KConfigBase::readEntry(), KConfigBase::readNumEntry(), and KGlobal::staticQString(). Referenced by KMainWindow::applyMainWindowSettings(). |
|
Assign a (translated) text to this toolbar. This is used for the tooltip on the handle, and when listing the toolbars. Definition at line 1134 of file ktoolbar.cpp. |
|
Returns the toolbar's text.
|
|
Emitted when button
Referenced by insertAnimatedWidget(). |
|
Emitted when button Note: you will always recive two clicked() , pressed() and released() signals. There is no way to avoid it - at least no easy way. If you need to resolve this all you can do is set up timers which wait for QApplication::doubleClickInterval() to expire. If in that time you don't get this signal, you may belive that button was only clicked and not double-clicked. And please note that butons with popup menus do not emit this signal, but those with delayed popup do. |
|
Emitted when button
|
|
Emits when button
|
|
Emitted when a toggle button changes state. Emitted also if you change state with setButton() or toggleButton() If you make a button normal again, with setToggle(false), this signal won't be emitted. |
|
This signal is emitted when item
Note that this signal is emitted from all buttons (normal, disabled and toggle) even when there is no visible change in buttons (i.e., buttons do not raise when mouse enters). The parameter |
|
This signal is emitted when item Note that this signal is emitted from all buttons (normal, disabled and toggle) even when there is no visible change in buttons (i.e., buttons do not raise when mouse enters). |
|
Emitted when toolbar changes position, or when an item is removed from toolbar. If you subclass KMainWindow and reimplement KMainWindow::resizeEvent() be sure to connect to this signal. Note: You can connect this signal to a slot that doesn't take parameter. |
|
This signal is emitted when toolbar detects changing of following parameters: highlighting, button-size, button-mode. This signal is internal, aimed to buttons. |
|
This signal is emitted when the toolbar is getting deleted, and before ~KToolbar finishes (so it's still time to remove widgets from the toolbar). Used by KWidgetAction.
Referenced by ~KToolBar(). |
|
Returns the global setting for "Highlight buttons under mouse".
References KGlobal::config(), and KConfigBase::readBoolEntry(). |
|
Returns the global setting for "Toolbars transparent when moving".
References KGlobal::config(), and KConfigBase::readBoolEntry(). |
|
Returns the global setting for "Icon Text".
References KGlobal::config(), and KConfigBase::readEntry(). |
The documentation for this class was generated from the following files: