• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.14.38 API Reference
  • KDE Home
  • Contact Us
 

KDEUI

  • kdeui
  • widgets
ktoolbar.h
Go to the documentation of this file.
1/* This file is part of the KDE libraries
2 Copyright (C) 2000 Reginald Stadlbauer (reggie@kde.org)
3 (C) 1997, 1998 Stephan Kulow (coolo@kde.org)
4 (C) 1997, 1998 Sven Radej (radej@kde.org)
5 (C) 1997, 1998 Mark Donohoe (donohoe@kde.org)
6 (C) 1997, 1998 Matthias Ettrich (ettrich@kde.org)
7 (C) 1999, 2000 Kurt Granroth (granroth@kde.org)
8 (C) 2005-2006 Hamish Rodda (rodda@kde.org)
9
10 This library is free software; you can redistribute it and/or
11 modify it under the terms of the GNU Library General Public
12 License version 2 as published by the Free Software Foundation.
13
14 This library is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 Library General Public License for more details.
18
19 You should have received a copy of the GNU Library General Public License
20 along with this library; see the file COPYING.LIB. If not, write to
21 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22 Boston, MA 02110-1301, USA.
23 */
24
25#ifndef KTOOLBAR_H
26#define KTOOLBAR_H
27
28#include <kdeui_export.h>
29
30#include <QtGui/QToolBar>
31
32class QDomElement;
33
34class KConfigGroup;
35class KConfig;
36class KMainWindow;
37class KXMLGUIClient;
38
53class KDEUI_EXPORT KToolBar : public QToolBar
54{
55 Q_OBJECT
56
57public:
72 explicit KToolBar(QWidget *parent, bool isMainToolBar = false, bool readConfig = true);
73 // KDE5: remove. The one below is preferred so that all debug output from init() shows the right objectName already,
74 // and so that isMainToolBar() and iconSizeDefault() return correct values during loading too.
75
91 explicit KToolBar(const QString& objectName, QWidget* parent, bool readConfig = true);
92
105 KToolBar(const QString& objectName, QMainWindow* parentWindow, Qt::ToolBarArea area, bool newLine = false,
106 bool isMainToolBar = false, bool readConfig = true); // KDE5: remove, I don't think anyone is using this.
107
111 virtual ~KToolBar();
112
116 KMainWindow* mainWindow() const;
117
121 void setIconDimensions( int size );
122
128 int iconSizeDefault() const; // KDE5: hide from public API. Doesn't make sense to export this, and it isn't used.
129
136#ifndef KDE_NO_DEPRECATED
137 KDE_DEPRECATED void setContextMenuEnabled( bool enable = true );
138#endif
139
145#ifndef KDE_NO_DEPRECATED
146 KDE_DEPRECATED bool contextMenuEnabled() const;
147#endif
148
152 void saveSettings( KConfigGroup &cg );
153
162 void applySettings( const KConfigGroup &cg, bool forceGlobal = false );
163
168#ifndef KDE_NO_DEPRECATED
169 KDE_DEPRECATED void setXMLGUIClient( KXMLGUIClient *client );
170#endif
171
176 void addXMLGUIClient( KXMLGUIClient *client );
177
182 void removeXMLGUIClient( KXMLGUIClient *client );
183
187 void loadState( const QDomElement &element );
188
192 void saveState( QDomElement &element ) const;
193
197 bool eventFilter( QObject* watched, QEvent* event );
198
203 static Qt::ToolButtonStyle toolButtonStyleSetting(); // KDE5: make private and file-static, nobody is calling this
204
208 static bool toolBarsEditable();
209
215 static void setToolBarsEditable( bool editable );
216
220 static bool toolBarsLocked();
221
225 static void setToolBarsLocked( bool locked );
226
227 protected Q_SLOTS:
228 virtual void slotMovableChanged(bool movable);
229
230 protected:
231 virtual void contextMenuEvent( QContextMenuEvent* );
232 virtual void actionEvent( QActionEvent* );
233
234 // Draggable toolbar configuration
235 virtual void dragEnterEvent( QDragEnterEvent* );
236 virtual void dragMoveEvent( QDragMoveEvent* );
237 virtual void dragLeaveEvent( QDragLeaveEvent* );
238 virtual void dropEvent( QDropEvent* );
239 virtual void mousePressEvent( QMouseEvent* );
240 virtual void mouseMoveEvent( QMouseEvent* );
241 virtual void mouseReleaseEvent( QMouseEvent* );
242
243 private:
244 class Private;
245 Private* const d;
246
247 Q_PRIVATE_SLOT( d, void slotAppearanceChanged() )
248 Q_PRIVATE_SLOT( d, void slotContextAboutToShow() )
249 Q_PRIVATE_SLOT( d, void slotContextAboutToHide() )
250 Q_PRIVATE_SLOT( d, void slotContextLeft() )
251 Q_PRIVATE_SLOT( d, void slotContextRight() )
252 Q_PRIVATE_SLOT( d, void slotContextShowText() )
253 Q_PRIVATE_SLOT( d, void slotContextTop() )
254 Q_PRIVATE_SLOT( d, void slotContextBottom() )
255 Q_PRIVATE_SLOT( d, void slotContextIcons() )
256 Q_PRIVATE_SLOT( d, void slotContextText() )
257 Q_PRIVATE_SLOT( d, void slotContextTextRight() )
258 Q_PRIVATE_SLOT( d, void slotContextTextUnder() )
259 Q_PRIVATE_SLOT( d, void slotContextIconSize() )
260 Q_PRIVATE_SLOT( d, void slotLockToolBars( bool ) )
261};
262
263#endif
KConfigGroup
KConfig
KMainWindow
KDE top level main window
Definition kmainwindow.h:107
KToolBar::applySettings
void applySettings(const KConfigGroup &cg, bool forceGlobal=false)
Read the toolbar settings from group configGroup in config and apply them.
Definition ktoolbar.cpp:1041
KToolBar::setContextMenuEnabled
void setContextMenuEnabled(bool enable=true)
This allows you to enable or disable the context menu.
Definition ktoolbar.cpp:815
KToolBar::dragEnterEvent
virtual void dragEnterEvent(QDragEnterEvent *)
Definition ktoolbar.cpp:1090
KToolBar::contextMenuEnabled
bool contextMenuEnabled() const
Returns the context menu enabled flag.
Definition ktoolbar.cpp:822
KToolBar::contextMenuEvent
virtual void contextMenuEvent(QContextMenuEvent *)
Definition ktoolbar.cpp:874
KToolBar::mousePressEvent
virtual void mousePressEvent(QMouseEvent *)
Definition ktoolbar.cpp:1207
KToolBar::addXMLGUIClient
void addXMLGUIClient(KXMLGUIClient *client)
Adds an XML gui client that uses this toolbar.
Definition ktoolbar.cpp:864
KToolBar::dropEvent
virtual void dropEvent(QDropEvent *)
Definition ktoolbar.cpp:1184
KToolBar::toolBarsEditable
static bool toolBarsEditable()
Returns whether the toolbars are currently editable (drag & drop of actions).
Definition ktoolbar.cpp:1405
KToolBar::toolBarsLocked
static bool toolBarsLocked()
Returns whether the toolbars are locked (i.e., moving of the toobars disallowed).
Definition ktoolbar.cpp:1430
KToolBar::setToolBarsEditable
static void setToolBarsEditable(bool editable)
Enable or disable toolbar editing via drag & drop of actions.
Definition ktoolbar.cpp:1410
KToolBar::dragMoveEvent
virtual void dragMoveEvent(QDragMoveEvent *)
Definition ktoolbar.cpp:1132
KToolBar::mainWindow
KMainWindow * mainWindow() const
Returns the main window that this toolbar is docked with.
Definition ktoolbar.cpp:1068
KToolBar::loadState
void loadState(const QDomElement &element)
Load state from an XML.
Definition ktoolbar.cpp:900
KToolBar::slotMovableChanged
virtual void slotMovableChanged(bool movable)
Definition ktoolbar.cpp:1084
KToolBar::setXMLGUIClient
void setXMLGUIClient(KXMLGUIClient *client)
Sets the XML gui client.
Definition ktoolbar.cpp:857
KToolBar::mouseMoveEvent
virtual void mouseMoveEvent(QMouseEvent *)
Definition ktoolbar.cpp:1221
KToolBar::eventFilter
bool eventFilter(QObject *watched, QEvent *event)
Reimplemented to support context menu activation on disabled tool buttons.
Definition ktoolbar.cpp:1272
KToolBar::setToolBarsLocked
static void setToolBarsLocked(bool locked)
Allows you to lock and unlock all toolbars (i.e., disallow/allow moving of the toobars).
Definition ktoolbar.cpp:1417
KToolBar::saveState
void saveState(QDomElement &element) const
Save state into an XML.
Definition ktoolbar.cpp:1008
KToolBar::KToolBar
KToolBar(QWidget *parent, bool isMainToolBar=false, bool readConfig=true)
Constructor.
Definition ktoolbar.cpp:766
KToolBar::dragLeaveEvent
virtual void dragLeaveEvent(QDragLeaveEvent *)
Definition ktoolbar.cpp:1169
KToolBar::mouseReleaseEvent
virtual void mouseReleaseEvent(QMouseEvent *)
Definition ktoolbar.cpp:1260
KToolBar::removeXMLGUIClient
void removeXMLGUIClient(KXMLGUIClient *client)
Removes an XML gui client that uses this toolbar.
Definition ktoolbar.cpp:869
KToolBar::setIconDimensions
void setIconDimensions(int size)
Convenience function to set icon size.
Definition ktoolbar.cpp:1073
KToolBar::saveSettings
void saveSettings(KConfigGroup &cg)
Save the toolbar settings to group configGroup in config.
Definition ktoolbar.cpp:828
KToolBar::actionEvent
virtual void actionEvent(QActionEvent *)
Definition ktoolbar.cpp:1369
KToolBar::iconSizeDefault
int iconSizeDefault() const
Returns the default size for this type of toolbar.
Definition ktoolbar.cpp:1079
KToolBar::toolButtonStyleSetting
static Qt::ToolButtonStyle toolButtonStyleSetting()
Returns the global setting for "Icon Text" for the main toolbar.
Definition ktoolbar.cpp:893
KXMLGUIClient
A KXMLGUIClient can be used with KXMLGUIFactory to create a GUI from actions and an XML document,...
Definition kxmlguiclient.h:47
QMainWindow
QObject
QToolBar
QWidget
kdeui_export.h
readConfig
TsConfig readConfig(const QString &fname)
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Tue Mar 25 2025 00:00:00 by doxygen 1.14.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KDEUI

Skip menu "KDEUI"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdelibs-4.14.38 API Reference

Skip menu "kdelibs-4.14.38 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal