Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.trolltech.qt.gui
Class QSplitterHandle

    java.lang.Object
      com.trolltech.qt.internal.QSignalEmitterInternal
          com.trolltech.qt.QSignalEmitter
              com.trolltech.qt.QtJambiObject
                  com.trolltech.qt.core.QObject
                      com.trolltech.qt.gui.QWidget
                          com.trolltech.qt.gui.QSplitterHandle

All Implemented Interfaces:
  QPaintDeviceInterface, QtJambiInterface

    public class QSplitterHandle

extends QWidget

The `QSplitterHandle` class provides handle functionality of the splitter. `QSplitterHandle` is typically what people think about when they think about a splitter. It is the handle that is used to resize the widgets.

A typical developer using `QSplitter` will never have to worry about `QSplitterHandle`. It is provided for developers who want splitter handles that provide extra features, such as popup menus.

The typical way one would create splitter handles is to subclass `QSplitter` then reimplement `QSplitter::createHandle()` to instantiate the custom splitter handle. For example, a minimum `QSplitter` subclass might look like this:

    public class Splitter extends QSplitter
    {

        public Splitter(Qt.Orientation orientation, QWidget parent)
        {
            ...
        }

        protected QSplitterHandle createHandle()
        {
            ...
        }
    };

The `createHandle()` implementation simply constructs a custom splitter handle, called `Splitter` in this example:

        protected QSplitterHandle createHandle()
        {
            return new SplitterHandle(orientation(), this);
        }

Information about a given handle can be obtained using functions like `orientation()` and `opaqueResize()`, and is retrieved from its parent splitter. Details like these can be used to give custom handles different appearances depending on the splitter's orientation.

The complexity of a custom handle subclass depends on the tasks that it needs to perform. A simple subclass might only provide a `paintEvent()` implementation:

        protected void paintEvent(QPaintEvent event)
        {
            QPainter painter = new QPainter(this);

            if (orientation().equals(Qt.Orientation.Horizontal)) {
                gradient.setStart(rect().left(), rect().height() / 2);
                gradient.setFinalStop(rect().right(), rect().height() / 2);
            } else {
                gradient.setStart(rect().width() / 2, rect().top());
                gradient.setFinalStop(rect().width() / 2, rect().bottom());
            }
            painter.fillRect(event.rect(), new QBrush(gradient));
        }

In this example, a predefined gradient is set up differently depending on the orientation of the handle. `QSplitterHandle` provides a reasonable size hint for the handle, so the subclass does not need to provide a reimplementation of `sizeHint()` unless the handle has special size requirements.

See also:
  `QSplitter`.

Nested Class Summary

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.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

Fields inherited from class com.trolltech.qt.gui.QWidget
`customContextMenuRequested`

Fields inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
`currentSender`

Constructor Summary
`QSplitterHandle(Qt.Orientation o, QSplitter parent)` Creates a `QSplitter` handle with the given `orientation` and `QSplitter` `parent`.

Method Summary
`protected int` | `closestLegalPosition(int p)` Returns the closest legal position to `pos` of the splitter handle.
`protected void` | `moveSplitter(int p)` Tells the splitter to move this handle to position `pos`, which is the distance from the left or top edge of the widget.
`boolean` | `opaqueResize()` Returns true if widgets are resized dynamically (opaquely), otherwise returns false.
`Qt.Orientation` | `orientation()` Returns the handle's orientation.
`void` | `setOrientation(Qt.Orientation o)` Sets the orientation of the splitter handle to `orientation`.
`QSplitter` | `splitter()` Returns the splitter associated with this splitter handle.

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, 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, 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`

Constructor Detail

### QSplitterHandle

    public QSplitterHandle(Qt.Orientation o,
                           QSplitter parent)

  Creates a `QSplitter` handle with the given `orientation` and `QSplitter` `parent`.

Method Detail

### closestLegalPosition

    protected final int closestLegalPosition(int p)

  Returns the closest legal position to `pos` of the splitter handle. The positions are measured from the left or top edge of the splitter, even for right-to-left languages.

See also:
  `QSplitter::closestLegalPosition()`, and `moveSplitter()`.

### moveSplitter

    protected final void moveSplitter(int p)

  Tells the splitter to move this handle to position `pos`, which is the distance from the left or top edge of the widget.

  Note that `pos` is also measured from the left (or top) for right-to-left languages. This function will map `pos` to the appropriate position before calling `QSplitter::moveSplitter()`.

See also:
  `QSplitter::moveSplitter()`, and `closestLegalPosition()`.

### opaqueResize

    public final boolean opaqueResize()

  Returns true if widgets are resized dynamically (opaquely), otherwise returns false. This value is controlled by the `QSplitter`.

See also:
  `QSplitter::opaqueResize()`.

### orientation

    public final Qt.Orientation orientation()

  Returns the handle's orientation. This is usually propagated from the `QSplitter`.

See also:
  `setOrientation()`, and `QSplitter::orientation()`.

### setOrientation

    public final void setOrientation(Qt.Orientation o)

  Sets the orientation of the splitter handle to `orientation`. This is usually propogated from the `QSplitter`.

See also:
  `orientation()`, and `QSplitter::setOrientation()`.

### splitter

    public final QSplitter splitter()

  Returns the splitter associated with this splitter handle.

See also:
  `QSplitter::handle()`.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD