com.trolltech.qt.gui
Class QToolButton

java.lang.Object
  extended by com.trolltech.qt.internal.QSignalEmitterInternal
      extended by com.trolltech.qt.QSignalEmitter
          extended by com.trolltech.qt.QtJambiObject
              extended by com.trolltech.qt.core.QObject
                  extended by com.trolltech.qt.gui.QWidget
                      extended by com.trolltech.qt.gui.QAbstractButton
                          extended by com.trolltech.qt.gui.QToolButton
All Implemented Interfaces:
QPaintDeviceInterface, QtJambiInterface

public class QToolButton
extends QAbstractButton

The QToolButton class provides a quick-access button to commands or options, usually used inside a QToolBar. A tool button is a special button that provides quick-access to specific commands or options. As opposed to a normal command button, a tool button usually doesn't show a text label, but shows an icon instead.

Tool buttons are normally created when new QAction instances are created with QToolBar::addAction() or existing actions are added to a toolbar with QToolBar::addAction(). It is also possible to construct tool buttons in the same way as any other widget, and arrange them alongside other widgets in layouts.

One classic use of a tool button is to select tools; for example, the "pen" tool in a drawing program. This would be implemented by using a QToolButton as a toggle button (see setToggleButton()).

QToolButton supports auto-raising. In auto-raise mode, the button draws a 3D frame only when the mouse points at it. The feature is automatically turned on when a button is used inside a QToolBar. Change it with setAutoRaise().

A tool button's icon is set as QIcon. This makes it possible to specify different pixmaps for the disabled and active state. The disabled pixmap is used when the button's functionality is not available. The active pixmap is displayed when the button is auto-raised because the mouse pointer is hovering over it.

The button's look and dimension is adjustable with setToolButtonStyle() and setIconSize(). When used inside a QToolBar in a QMainWindow, the button automatically adjusts to QMainWindow's settings (see QMainWindow::setToolButtonStyle() and QMainWindow::setIconSize()). Instead of an icon, a tool button can also display an arrow symbol, specified with arrowType.

A tool button can offer additional choices in a popup menu. The popup menu can be set using setMenu(). Use setPopupMode() to configure the different modes available for tool buttons with a menu set. The default mode is DelayedPopupMode which is sometimes used with the "Back" button in a web browser. After pressing and holding the button down for a while, a menu pops up showing a list of possible pages to jump to. The default delay is 600 ms; you can adjust it with setPopupDelay().



Qt Assistant's toolbar contains tool buttons that are associated with actions used in other parts of the main window.

See also:
QPushButton, QToolBar, QMainWindow, QAction, and GUI Design Handbook: Push Button.


Nested Class Summary
static class QToolButton.ToolButtonPopupMode
          Describes how a menu should be popped up for tool buttons that has a menu set or contains a list of actions.
 
Nested classes/interfaces inherited from class com.trolltech.qt.gui.QWidget
QWidget.RenderFlag, QWidget.RenderFlags
 
Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter
QSignalEmitter.AbstractSignal, QSignalEmitter.PrivateSignal0, QSignalEmitter.PrivateSignal1, QSignalEmitter.PrivateSignal2, QSignalEmitter.PrivateSignal3, QSignalEmitter.PrivateSignal4, QSignalEmitter.PrivateSignal5, QSignalEmitter.PrivateSignal6, QSignalEmitter.PrivateSignal7, QSignalEmitter.PrivateSignal8, QSignalEmitter.PrivateSignal9, QSignalEmitter.Signal0, QSignalEmitter.Signal1, QSignalEmitter.Signal2, QSignalEmitter.Signal3, QSignalEmitter.Signal4, QSignalEmitter.Signal5, QSignalEmitter.Signal6, QSignalEmitter.Signal7, QSignalEmitter.Signal8, QSignalEmitter.Signal9
 
Nested classes/interfaces inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
com.trolltech.qt.internal.QSignalEmitterInternal.AbstractSignalInternal
 
Field Summary
 QSignalEmitter.Signal1 triggered
          This signal takes 1 generic argument(s).
 
Fields inherited from class com.trolltech.qt.gui.QAbstractButton
clicked, pressed, released, toggled
 
Fields inherited from class com.trolltech.qt.gui.QWidget
customContextMenuRequested
 
Fields inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
currentSender
 
Constructor Summary
QToolButton()
          Constructs an empty tool button with parent parent.
QToolButton(QWidget parent)
          Constructs an empty tool button with parent parent.
 
Method Summary
 Qt.ArrowType arrowType()
          This property holds whether the button displays an arrow instead of a normal icon.
 boolean autoRaise()
          This property holds whether auto-raising is enabled or not.
 QAction defaultAction()
          Returns the default action.
protected  void initStyleOption(QStyleOptionToolButton option)
          Initialize option with the values from this QToolButton.
 QMenu menu()
          Returns the associated menu, or 0 if no menu has been defined.
 QToolButton.ToolButtonPopupMode popupMode()
          This property describes the way that popup menus are used with tool buttons.
 void setArrowType(Qt.ArrowType type)
          This property holds whether the button displays an arrow instead of a normal icon.
 void setAutoRaise(boolean enable)
          This property holds whether auto-raising is enabled or not.
 void setDefaultAction(QAction arg__1)
          Sets the default action to action.
 void setMenu(QMenu menu)
          Associates the given menu with this tool button.
 void setPopupMode(QToolButton.ToolButtonPopupMode mode)
          This property describes the way that popup menus are used with tool buttons.
 void setToolButtonStyle(Qt.ToolButtonStyle style)
          This property holds whether the tool button displays an icon only, text only, or text beside/below the icon.
 void showMenu()
          Shows (pops up) the associated popup menu.
 Qt.ToolButtonStyle toolButtonStyle()
          This property holds whether the tool button displays an icon only, text only, or text beside/below the icon.
 
Methods inherited from class com.trolltech.qt.gui.QAbstractButton
animateClick, animateClick, autoExclusive, autoRepeat, autoRepeatDelay, autoRepeatInterval, checkStateSet, click, group, hitButton, icon, iconSize, isCheckable, isChecked, isDown, nextCheckState, setAutoExclusive, setAutoRepeat, setAutoRepeatDelay, setAutoRepeatInterval, setCheckable, setChecked, setDown, setIcon, setIconSize, setShortcut, setShortcut, setShortcut, setText, shortcut, text, toggle
 
Methods inherited from class com.trolltech.qt.gui.QWidget
acceptDrops, accessibleDescription, accessibleName, actionEvent, actions, activateWindow, addAction, addActions, adjustSize, autoFillBackground, backgroundRole, baseSize, changeEvent, childAt, childAt, childrenRect, childrenRegion, clearFocus, clearMask, close, closeEvent, contentsRect, contextMenuEvent, contextMenuPolicy, cursor, depth, destroy, destroy, destroy, dragEnterEvent, dragLeaveEvent, dragMoveEvent, dropEvent, effectiveWinId, ensurePolished, enterEvent, focusInEvent, focusNextChild, focusNextPrevChild, focusOutEvent, focusPolicy, focusPreviousChild, focusProxy, focusWidget, font, fontInfo, fontMetrics, foregroundRole, frameGeometry, frameSize, geometry, getContentsMargins, grabKeyboard, grabMouse, grabMouse, grabShortcut, grabShortcut, graphicsProxyWidget, hasFocus, hasMouseTracking, height, heightForWidth, heightMM, hide, hideEvent, inputContext, inputMethodEvent, inputMethodQuery, insertAction, insertActions, isActiveWindow, isAncestorOf, isEnabled, isEnabledTo, isFullScreen, isHidden, isMaximized, isMinimized, isModal, isVisible, isVisibleTo, isWindow, isWindowModified, keyboardGrabber, keyPressEvent, keyReleaseEvent, languageChange, layout, layoutDirection, leaveEvent, locale, logicalDpiX, logicalDpiY, lower, mapFrom, mapFromGlobal, mapFromParent, mapTo, mapToGlobal, mapToParent, mask, maximumHeight, maximumSize, maximumWidth, metric, minimumHeight, minimumSize, minimumSizeHint, minimumWidth, mouseDoubleClickEvent, mouseGrabber, mouseMoveEvent, mousePressEvent, mouseReleaseEvent, move, move, moveEvent, nativeParentWidget, nextInFocusChain, normalGeometry, numColors, overrideWindowFlags, overrideWindowFlags, overrideWindowState, paintEngine, paintEvent, paintingActive, palette, parentWidget, physicalDpiX, physicalDpiY, pos, raise, rect, releaseKeyboard, releaseMouse, releaseShortcut, removeAction, render, render, render, render, render, render, render, render, render, repaint, repaint, repaint, repaint, resetInputContext, resize, resize, resizeEvent, restoreGeometry, saveGeometry, scroll, scroll, setAcceptDrops, setAccessibleDescription, setAccessibleName, setAttribute, setAttribute, setAutoFillBackground, setBackgroundRole, setBaseSize, setBaseSize, setContentsMargins, setContentsMargins, setContextMenuPolicy, setCursor, setDisabled, setEnabled, setFixedHeight, setFixedSize, setFixedSize, setFixedWidth, setFocus, setFocus, setFocusPolicy, setFocusProxy, setFont, setForegroundRole, setGeometry, setGeometry, setHidden, setInputContext, setLayout, setLayoutDirection, setLocale, setMask, setMask, setMaximumHeight, setMaximumSize, setMaximumSize, setMaximumWidth, setMinimumHeight, setMinimumSize, setMinimumSize, setMinimumWidth, setMouseTracking, setPalette, setParent, setParent, setParent, setShortcutAutoRepeat, setShortcutAutoRepeat, setShortcutEnabled, setShortcutEnabled, setSizeIncrement, setSizeIncrement, setSizePolicy, setSizePolicy, setStatusTip, setStyle, setStyleSheet, setTabOrder, setToolTip, setUpdatesEnabled, setVisible, setWhatsThis, setWindowFilePath, setWindowFlags, setWindowFlags, setWindowIcon, setWindowIconText, setWindowModality, setWindowModified, setWindowOpacity, setWindowRole, setWindowState, setWindowState, setWindowTitle, show, showEvent, showFullScreen, showMaximized, showMinimized, showNormal, size, sizeHint, sizeIncrement, sizePolicy, stackUnder, statusTip, style, styleSheet, tabletEvent, testAttribute, toolTip, underMouse, unsetCursor, unsetLayoutDirection, unsetLocale, update, update, update, update, updateGeometry, updateMicroFocus, updatesEnabled, visibleRegion, whatsThis, wheelEvent, width, widthMM, window, windowFilePath, windowFlags, windowIcon, windowIconText, windowModality, windowOpacity, windowRole, windowState, windowTitle, windowType, winId, x, y
 
Methods inherited from class com.trolltech.qt.core.QObject
childEvent, children, connectSlotsByName, customEvent, disposeLater, dumpObjectInfo, dumpObjectTree, dynamicPropertyNames, event, eventFilter, findChild, findChild, findChild, findChildren, findChildren, findChildren, findChildren, indexOfProperty, installEventFilter, isWidgetType, killTimer, moveToThread, objectName, parent, properties, property, removeEventFilter, setObjectName, setParent, setProperty, startTimer, timerEvent, toString, userProperty
 
Methods inherited from class com.trolltech.qt.QtJambiObject
dispose, disposed, equals, finalize, reassignNativeResources, tr, tr, tr
 
Methods inherited from class com.trolltech.qt.QSignalEmitter
blockSignals, disconnect, disconnect, signalsBlocked, signalSender, thread
 
Methods inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
__qt_signalInitialization
 
Methods inherited from class java.lang.Object
clone, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.trolltech.qt.QtJambiInterface
disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership
 

Field Detail

triggered

public final QSignalEmitter.Signal1 triggered

This signal takes 1 generic argument(s). We list their type and the name they go by in the description of this signal. <com.trolltech.qt.gui.QAction(named: action)>:

This signal is emitted when the given action is triggered.

The action may also be associated with other parts of the user interface, such as menu items and keyboard shortcuts. Sharing actions in this way helps make the user interface more consistent and is often less work to implement.

Constructor Detail

QToolButton

public QToolButton()
Constructs an empty tool button with parent parent.


QToolButton

public QToolButton(QWidget parent)
Constructs an empty tool button with parent parent.

Method Detail

arrowType

public final Qt.ArrowType arrowType()
This property holds whether the button displays an arrow instead of a normal icon. This displays an arrow as the icon for the QToolButton.

By default, this property is set to Qt::NoArrow .


autoRaise

public final boolean autoRaise()
This property holds whether auto-raising is enabled or not. The default is disabled (i.e. false).

This property is currently ignored on Mac OS X when using QMacStyle.


defaultAction

public final QAction defaultAction()
Returns the default action.

See also:
setDefaultAction().


menu

public final QMenu menu()
Returns the associated menu, or 0 if no menu has been defined.

See also:
setMenu().


popupMode

public final QToolButton.ToolButtonPopupMode popupMode()
This property describes the way that popup menus are used with tool buttons. By default, this property is set to DelayedPopup .


setArrowType

public final void setArrowType(Qt.ArrowType type)
This property holds whether the button displays an arrow instead of a normal icon. This displays an arrow as the icon for the QToolButton.

By default, this property is set to Qt::NoArrow .


setAutoRaise

public final void setAutoRaise(boolean enable)
This property holds whether auto-raising is enabled or not. The default is disabled (i.e. false).

This property is currently ignored on Mac OS X when using QMacStyle.


setDefaultAction

public final void setDefaultAction(QAction arg__1)
Sets the default action to action.

If a tool button has a default action, the action defines the button's properties like text, icon, tool tip, etc.

See also:
defaultAction().


setMenu

public final void setMenu(QMenu menu)
Associates the given menu with this tool button.

The menu will be shown according to the button's popupMode.

Ownership of the menu is not transferred to the tool button.

See also:
menu().


setPopupMode

public final void setPopupMode(QToolButton.ToolButtonPopupMode mode)
This property describes the way that popup menus are used with tool buttons. By default, this property is set to DelayedPopup .


setToolButtonStyle

public final void setToolButtonStyle(Qt.ToolButtonStyle style)
This property holds whether the tool button displays an icon only, text only, or text beside/below the icon. The default is Qt::ToolButtonIconOnly .

QToolButton automatically connects this slot to the relevant signal in the QMainWindow in which is resides.


showMenu

public final void showMenu()
Shows (pops up) the associated popup menu. If there is no such menu, this function does nothing. This function does not return until the popup menu has been closed by the user.


toolButtonStyle

public final Qt.ToolButtonStyle toolButtonStyle()
This property holds whether the tool button displays an icon only, text only, or text beside/below the icon. The default is Qt::ToolButtonIconOnly .

QToolButton automatically connects this slot to the relevant signal in the QMainWindow in which is resides.


initStyleOption

protected final void initStyleOption(QStyleOptionToolButton option)
Initialize option with the values from this QToolButton. This method is useful for subclasses when they need a QStyleOptionToolButton, but don't want to fill in all the information themselves.