QwtPanner (3) - Linux Manuals
NAME
QwtPanner -
QwtPanner provides panning of a widget.
SYNOPSIS
#include <qwt_panner.h>
Inherits QWidget.
Signals
void panned (int dx, int dy)
void moved (int dx, int dy)
Public Member Functions
QwtPanner (QWidget *parent)
virtual ~QwtPanner ()
Destructor.
void setEnabled (bool)
En/disable the panner.
bool isEnabled () const
void setMouseButton (Qt::MouseButton, Qt::KeyboardModifiers=Qt::NoModifier)
void getMouseButton (Qt::MouseButton &button, Qt::KeyboardModifiers &) const
Get mouse button and modifiers used for panning.
void setAbortKey (int key, Qt::KeyboardModifiers=Qt::NoModifier)
void getAbortKey (int &key, Qt::KeyboardModifiers &) const
Get the abort key and modifiers.
void setCursor (const QCursor &)
const QCursor cursor () const
void setOrientations (Qt::Orientations)
Qt::Orientations orientations () const
Return the orientation, where paning is enabled.
bool isOrientationEnabled (Qt::Orientation) const
virtual bool eventFilter (QObject *, QEvent *)
Event filter.
Protected Member Functions
virtual void widgetMousePressEvent (QMouseEvent *)
virtual void widgetMouseReleaseEvent (QMouseEvent *)
virtual void widgetMouseMoveEvent (QMouseEvent *)
virtual void widgetKeyPressEvent (QKeyEvent *)
virtual void widgetKeyReleaseEvent (QKeyEvent *)
virtual void paintEvent (QPaintEvent *)
Paint event.
virtual QBitmap contentsMask () const
Calculate a mask for the contents of the panned widget.
virtual QPixmap grab () const
Detailed Description
QwtPanner provides panning of a widget.
QwtPanner grabs the contents of a widget, that can be dragged in all directions. The offset between the start and the end position is emitted by the panned signal.
QwtPanner grabs the content of the widget into a pixmap and moves the pixmap around, without initiating any repaint events for the widget. Areas, that are not part of content are not painted while panning. This makes panning fast enough for widgets, where repaints are too slow for mouse movements.
For widgets, where repaints are very fast it might be better to implement panning manually by mapping mouse events into paint events.
Constructor & Destructor Documentation
QwtPanner::QwtPanner (QWidget *parent)
Creates an panner that is enabled for the left mouse button.Parameters:
- parent Parent widget to be panned
Member Function Documentation
QBitmap QwtPanner::contentsMask () const [protected], [virtual]
Calculate a mask for the contents of the panned widget. Sometimes only parts of the contents of a widget should be panned. F.e. for a widget with a styled background with rounded borders only the area inside of the border should be panned.
Returns:
- An empty bitmap, indicating no mask
Reimplemented in QwtPlotPanner.
const QCursor QwtPanner::cursor () const
Returns:
- Cursor that is active while panning
See Also:
- setCursor()
bool QwtPanner::eventFilter (QObject *object, QEvent *event) [virtual]
Event filter. When isEnabled() is true mouse events of the observed widget are filtered.
Parameters:
-
object Object to be filtered
event Event
Returns:
- Always false, beside for paint events for the parent widget.
See Also:
- widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseMoveEvent()
QPixmap QwtPanner::grab () const [protected], [virtual]
Grab the widget into a pixmap.Returns:
- Grabbed pixmap
Reimplemented in QwtPlotPanner.
bool QwtPanner::isEnabled () const
Returns:
- true when enabled, false otherwise
See Also:
- setEnabled, eventFilter()
bool QwtPanner::isOrientationEnabled (Qt::Orientationo) const
Returns:
- True if an orientation is enabled
See Also:
- orientations(), setOrientations()
void QwtPanner::moved (intdx, intdy) [signal]
Signal emitted, while the widget moved, but panning is not finished.Parameters:
-
dx Offset in horizontal direction
dy Offset in vertical direction
void QwtPanner::paintEvent (QPaintEvent *pe) [protected], [virtual]
Paint event. Repaint the grabbed pixmap on its current position and fill the empty spaces by the background of the parent widget.
Parameters:
- pe Paint event
void QwtPanner::panned (intdx, intdy) [signal]
Signal emitted, when panning is doneParameters:
-
dx Offset in horizontal direction
dy Offset in vertical direction
void QwtPanner::setAbortKey (intkey, Qt::KeyboardModifiersmodifiers = Qt::NoModifier)
Change the abort key The defaults are Qt::Key_Escape and Qt::NoModifiersParameters:
-
key Key ( See Qt::Keycode )
modifiers Keyboard modifiers
void QwtPanner::setCursor (const QCursor &cursor)
Change the cursor, that is active while panning The default is the cursor of the parent widget.Parameters:
- cursor New cursor
See Also:
- setCursor()
void QwtPanner::setEnabled (boolon)
En/disable the panner. When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed.
Parameters:
- on true or false
See Also:
- isEnabled(), eventFilter()
void QwtPanner::setMouseButton (Qt::MouseButtonbutton, Qt::KeyboardModifiersmodifiers = Qt::NoModifier)
Change the mouse button and modifiers used for panning The defaults are Qt::LeftButton and Qt::NoModifiervoid QwtPanner::setOrientations (Qt::Orientationso)
Set the orientations, where panning is enabled The default value is in both directions: Qt::Horizontal | Qt::Verticalvoid QwtPanner::widgetKeyPressEvent (QKeyEvent *keyEvent) [protected], [virtual]
Handle a key press event for the observed widget.Parameters:
- keyEvent Key event
See Also:
- eventFilter(), widgetKeyReleaseEvent()
void QwtPanner::widgetKeyReleaseEvent (QKeyEvent *keyEvent) [protected], [virtual]
Handle a key release event for the observed widget.Parameters:
- keyEvent Key event
See Also:
- eventFilter(), widgetKeyReleaseEvent()
void QwtPanner::widgetMouseMoveEvent (QMouseEvent *mouseEvent) [protected], [virtual]
Handle a mouse move event for the observed widget.Parameters:
- mouseEvent Mouse event
See Also:
- eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent()
void QwtPanner::widgetMousePressEvent (QMouseEvent *mouseEvent) [protected], [virtual]
Handle a mouse press event for the observed widget.Parameters:
- mouseEvent Mouse event
See Also:
- eventFilter(), widgetMouseReleaseEvent(), widgetMouseMoveEvent(),
void QwtPanner::widgetMouseReleaseEvent (QMouseEvent *mouseEvent) [protected], [virtual]
Handle a mouse release event for the observed widget.Parameters:
- mouseEvent Mouse event
See Also:
- eventFilter(), widgetMousePressEvent(), widgetMouseMoveEvent(),
Author
Generated automatically by Doxygen for Qwt User's Guide from the source code.