QWT API (English) 7.3.0
Qt Widget Library for Technical Applications - English API Documentation
Loading...
Searching...
No Matches
Classes | Public Slots | Signals | Public Member Functions | Protected Member Functions | List of all members
QwtPlotPanner Class Reference

QwtPlotPanner provides panning of a plot canvas. More...

#include <qwt_plot_panner.h>

Inheritance diagram for QwtPlotPanner:
QwtPicker QwtEventPattern

Classes

class  PrivateData
 

Public Slots

void moveCanvas (int dx, int dy)
 Move the canvas by the specified offset.
 
- Public Slots inherited from QwtPicker
void setEnabled (bool)
 Enable or disable the picker.
 

Signals

void panned (int dx, int dy)
 Signal emitted after the canvas has been panned.
 
- Signals inherited from QwtPicker
void activated (bool on)
 Signal indicating when the picker has been activated.
 
void selected (const QPolygon &polygon)
 Signal emitting the selected points at the end of a selection.
 
void appended (const QPoint &pos)
 Signal emitted when a point has been appended to the selection.
 
void moved (const QPoint &pos)
 Signal emitted whenever the last appended point of the selection has been moved.
 
void removed (const QPoint &pos)
 Signal emitted whenever the last appended point of the selection has been removed.
 
void changed (const QPolygon &selection)
 Signal emitted when the active selection has been changed.
 

Public Member Functions

 QwtPlotPanner (QWidget *canvas)
 Constructor.
 
QWidget * canvas ()
 Get the canvas widget.
 
const QWidget * canvas () const
 Get the canvas widget (const version)
 
QwtPlotplot ()
 Get the plot widget.
 
const QwtPlotplot () const
 Get the plot widget (const version)
 
void setOrientations (Qt::Orientations)
 Set the orientations for panning.
 
Qt::Orientations orientations () const
 Get the orientations for panning.
 
bool isOrientationEnabled (Qt::Orientation) const
 Check if an orientation is enabled.
 
void setMouseButton (Qt::MouseButton button, Qt::KeyboardModifiers modifiers=Qt::NoModifier)
 Set the mouse button and modifiers for panning.
 
void getMouseButton (Qt::MouseButton &button, Qt::KeyboardModifiers &modifiers) const
 Get the mouse button and modifiers for panning.
 
- Public Member Functions inherited from QwtPicker
 QwtPicker (QWidget *parent)
 Constructor.
 
 QwtPicker (RubberBand rubberBand, DisplayMode trackerMode, QWidget *)
 
void setStateMachine (QwtPickerMachine *)
 Set a state machine and delete the previous one.
 
const QwtPickerMachinestateMachine () const
 Return the assigned state machine (const)
 
QwtPickerMachinestateMachine ()
 Return the assigned state machine.
 
void setRubberBand (RubberBand)
 Set the rubber band style.
 
RubberBand rubberBand () const
 Return the rubber band style.
 
void setTrackerMode (DisplayMode)
 Set the display mode of the tracker.
 
DisplayMode trackerMode () const
 Return the tracker display mode.
 
void setResizeMode (ResizeMode)
 Set the resize mode.
 
ResizeMode resizeMode () const
 Return the resize mode.
 
void setRubberBandPen (const QPen &)
 Set the pen for the rubber band.
 
QPen rubberBandPen () const
 Return the rubber band pen.
 
void setTrackerPen (const QPen &)
 Set the pen for the tracker.
 
QPen trackerPen () const
 Return the tracker pen.
 
void setTrackerFont (const QFont &)
 Set the font for the tracker.
 
QFont trackerFont () const
 Return the tracker font.
 
bool isEnabled () const
 Return true when enabled, false otherwise.
 
bool isActive () const
 A picker is active between begin() and end()
 
virtual bool eventFilter (QObject *, QEvent *) override
 Event filter for handling events.
 
QWidget * parentWidget ()
 Return the parent widget, where the selection happens.
 
const QWidget * parentWidget () const
 Return the parent widget, where the selection happens (const)
 
virtual QPainterPath pickArea () const
 Find the area of the observed widget, where selection might happen.
 
virtual void drawRubberBand (QPainter *) const
 Draw a rubber band, depending on rubberBand()
 
virtual void drawTracker (QPainter *) const
 Draw the tracker.
 
virtual QRegion trackerMask () const
 Calculate the mask for the tracker overlay.
 
virtual QRegion rubberBandMask () const
 Calculate the mask for the rubber band overlay.
 
virtual QwtText trackerText (const QPoint &pos) const
 Return the label for a position.
 
virtual QRect trackerRect (const QFont &) const
 Calculate the bounding rectangle for the tracker text from the current position of the tracker.
 
virtual void setTrackerPosition (const QPoint &pos)
 Set the tracker position manually.
 
QPoint trackerPosition () const
 Return the current position of the tracker.
 
QPolygon selection () const
 Return the selected points.
 
void update ()
 
void setActive (bool on)
 
- Public Member Functions inherited from QwtEventPattern
 QwtEventPattern ()
 Constructor.
 
virtual ~QwtEventPattern ()
 Destructor.
 
void initMousePattern (int numButtons)
 Set default mouse patterns depending on the number of mouse buttons.
 
void initKeyPattern ()
 Set default key patterns.
 
void setMousePattern (MousePatternCode, Qt::MouseButton button, Qt::KeyboardModifiers=Qt::NoModifier)
 Change one mouse pattern.
 
void setKeyPattern (KeyPatternCode, int key, Qt::KeyboardModifiers modifiers=Qt::NoModifier)
 Change one key pattern.
 
void setMousePattern (const QVector< MousePattern > &)
 Change the mouse event patterns.
 
void setKeyPattern (const QVector< KeyPattern > &)
 Change the key event patterns.
 
const QVector< MousePattern > & mousePattern () const
 Return the mouse pattern vector.
 
const QVector< KeyPattern > & keyPattern () const
 Return the key pattern vector.
 
QVector< MousePattern > & mousePattern ()
 Return the mouse pattern vector.
 
QVector< KeyPattern > & keyPattern ()
 Return the key pattern vector.
 
bool mouseMatch (MousePatternCode, const QMouseEvent *) const
 Compare a mouse event with an event pattern.
 
bool keyMatch (KeyPatternCode, const QKeyEvent *) const
 Compare a key event with an event pattern.
 

Protected Member Functions

virtual void widgetMousePressEvent (QMouseEvent *mouseEvent) override
 Handle mouse press events.
 
virtual void move (const QPoint &) override
 Move the selection.
 
virtual bool end (bool ok=true) override
 End the panning operation.
 
- Protected Member Functions inherited from QwtPicker
virtual QPolygon adjustedPoints (const QPolygon &) const
 Map the pickedPoints() into a selection()
 
virtual void transition (const QEvent *)
 Passes an event to the state machine and executes the resulting commands.
 
virtual void begin ()
 Open a selection setting the state to active.
 
virtual void append (const QPoint &)
 Append a point to the selection and update rubber band and tracker.
 
virtual void remove ()
 Remove the last point of the selection The removed() signal is emitted.
 
virtual bool accept (QPolygon &) const
 Validate and fix up the selection.
 
virtual void reset ()
 Reset the state machine and terminate ( end(false) ) the selection.
 
virtual void widgetMouseReleaseEvent (QMouseEvent *)
 Handle a mouse release event for the observed widget.
 
virtual void widgetMouseDoubleClickEvent (QMouseEvent *)
 Handle mouse double click event for the observed widget.
 
virtual void widgetMouseMoveEvent (QMouseEvent *)
 Handle a mouse move event for the observed widget.
 
virtual void widgetWheelEvent (QWheelEvent *)
 Handle a wheel event for the observed widget.
 
virtual void widgetKeyPressEvent (QKeyEvent *)
 Handle a key press event for the observed widget.
 
virtual void widgetKeyReleaseEvent (QKeyEvent *)
 Handle a key release event for the observed widget.
 
virtual void widgetEnterEvent (QEvent *)
 Handle a enter event for the observed widget.
 
virtual void widgetLeaveEvent (QEvent *)
 Handle a leave event for the observed widget.
 
virtual void stretchSelection (const QSize &oldSize, const QSize &newSize)
 Scale the selection by the ratios of oldSize and newSize The changed() signal is emitted.
 
virtual void updateDisplay ()
 Update the state of rubber band and tracker label.
 
const QwtWidgetOverlayrubberBandOverlay () const
 Return the overlay displaying the rubber band.
 
const QwtWidgetOverlaytrackerOverlay () const
 Return the overlay displaying the tracker text.
 
const QPolygon & pickedPoints () const
 Return the points that have been collected so far.
 
- Protected Member Functions inherited from QwtEventPattern
virtual bool mouseMatch (const MousePattern &, const QMouseEvent *) const
 Compare a mouse event with an event pattern.
 
virtual bool keyMatch (const KeyPattern &, const QKeyEvent *) const
 Compare a key event with an event pattern.
 

Additional Inherited Members

- Public Types inherited from QwtPicker
enum  RubberBand {
  NoRubberBand = 0 , HLineRubberBand , VLineRubberBand , CrossRubberBand ,
  RectRubberBand , EllipseRubberBand , PolygonRubberBand , UserRubberBand = 100
}
 Rubber band style. More...
 
enum  DisplayMode { AlwaysOff , AlwaysOn , ActiveOnly }
 Display mode. More...
 
enum  ResizeMode { Stretch , KeepSize }
 Controls what to do with the selected points when the observed widget is resized. More...
 
- Public Types inherited from QwtEventPattern
enum  MousePatternCode {
  MouseSelect1 , MouseSelect2 , MouseSelect3 , MouseSelect4 ,
  MouseSelect5 , MouseSelect6 , MousePatternCount
}
 Symbolic mouse input codes. More...
 
enum  KeyPatternCode {
  KeySelect1 , KeySelect2 , KeyAbort , KeyLeft ,
  KeyRight , KeyUp , KeyDown , KeyRedo ,
  KeyUndo , KeyHome , KeyPatternCount
}
 Symbolic keyboard input codes. More...
 
- Properties inherited from QwtPicker
bool isEnabled
 
ResizeMode resizeMode
 
DisplayMode trackerMode
 
QPen trackerPen
 
QFont trackerFont
 
RubberBand rubberBand
 
QPen rubberBandPen
 

Detailed Description

QwtPlotPanner provides panning of a plot canvas.

QwtPlotPanner is a QwtPicker that translates all pixel coordinates into plot coordinates and provides panning functionality for the plot canvas.

Constructor & Destructor Documentation

◆ QwtPlotPanner()

QwtPlotPanner::QwtPlotPanner ( QWidget *  canvas)
explicit

Constructor.

Parameters
[in]canvasThe plot canvas widget to attach the panner to

Creates a panner attached to the specified canvas widget. The panner is automatically enabled and configured to use left mouse button for panning operations.

Destructor

Member Function Documentation

◆ canvas() [1/2]

QWidget * QwtPlotPanner::canvas ( )

Get the canvas widget.

Returns
Pointer to the canvas widget, or nullptr if not attached

Returns the canvas widget that this panner is attached to. The canvas must inherit from QwtPlotCanvas.

◆ canvas() [2/2]

const QWidget * QwtPlotPanner::canvas ( ) const

Get the canvas widget (const version)

Returns
Const pointer to the canvas widget, or nullptr if not attached

Returns the canvas widget that this panner is attached to. The canvas must inherit from QwtPlotCanvas.

◆ end()

bool QwtPlotPanner::end ( bool  ok = true)
overrideprotectedvirtual

End the panning operation.

Reimplemented from QwtPicker.

◆ getMouseButton()

void QwtPlotPanner::getMouseButton ( Qt::MouseButton &  button,
Qt::KeyboardModifiers &  modifiers 
) const

Get the mouse button and modifiers for panning.

Parameters
[out]buttonThe currently configured mouse button
[out]modifiersThe currently configured keyboard modifiers

Retrieves the mouse button and keyboard modifiers currently configured for panning operations.

◆ isOrientationEnabled()

bool QwtPlotPanner::isOrientationEnabled ( Qt::Orientation  o) const

Check if an orientation is enabled.

Parameters
[in]oThe orientation to check
Returns
True if the orientation is enabled, false otherwise

Tests whether panning is enabled in the specified direction.

◆ move()

void QwtPlotPanner::move ( const QPoint &  pos)
overrideprotectedvirtual

Move the selection.

Reimplemented from QwtPicker.

◆ moveCanvas

void QwtPlotPanner::moveCanvas ( int  dx,
int  dy 
)
slot

Move the canvas by the specified offset.

Parameters
[in]dxHorizontal offset in pixels
[in]dyVertical offset in pixels

Moves the canvas content by the specified pixel offsets. This method can be called programmatically to pan the plot. It handles parasite plots correctly by updating all plots in the plot list in the correct order.

Note
For parasite plots that share axes with the host plot, the host plot is updated last so its changes propagate correctly to the parasite plots.

◆ orientations()

Qt::Orientations QwtPlotPanner::orientations ( ) const

Get the orientations for panning.

Returns
Combination of Qt::Horizontal and Qt::Vertical flags

Returns the currently enabled panning directions.

◆ panned

void QwtPlotPanner::panned ( int  dx,
int  dy 
)
signal

Signal emitted after the canvas has been panned.

Parameters
dxOffset in x-direction
dyOffset in y-direction

◆ plot() [1/2]

QwtPlot * QwtPlotPanner::plot ( )

Get the plot widget.

Returns
Pointer to the plot widget, or nullptr if not attached

Returns the QwtPlot widget that owns the canvas. This is a convenience method to access the parent plot.

◆ plot() [2/2]

const QwtPlot * QwtPlotPanner::plot ( ) const

Get the plot widget (const version)

Returns
Const pointer to the plot widget, or nullptr if not attached

Returns the QwtPlot widget that owns the canvas. This is a convenience method to access the parent plot.

◆ setMouseButton()

void QwtPlotPanner::setMouseButton ( Qt::MouseButton  button,
Qt::KeyboardModifiers  modifiers = Qt::NoModifier 
)

Set the mouse button and modifiers for panning.

Parameters
[in]buttonThe mouse button to use for panning
[in]modifiersKeyboard modifiers (default: Qt::NoModifier)

Configures the mouse button and optional keyboard modifiers that trigger panning operations. By default, the left mouse button with no modifiers is used.

// Use middle mouse button
panner->setMouseButton(Qt::MiddleButton);
// Use left mouse button with Ctrl key
panner->setMouseButton(Qt::LeftButton, Qt::ControlModifier);

◆ setOrientations()

void QwtPlotPanner::setOrientations ( Qt::Orientations  o)

Set the orientations for panning.

Parameters
[in]oCombination of Qt::Horizontal and Qt::Vertical flags

Sets the directions in which panning is enabled. By default, both horizontal and vertical panning are enabled. Use Qt::Horizontal for left-right panning, Qt::Vertical for up-down panning, or both for unrestricted panning.

◆ widgetMousePressEvent()

void QwtPlotPanner::widgetMousePressEvent ( QMouseEvent *  mouseEvent)
overrideprotectedvirtual

Handle mouse press events.

Reimplemented from QwtPicker.


The documentation for this class was generated from the following files: