.TH "QwtPicker" 3 "Sun Jul 18 2021" "Version 6.2.0" "Qwt User's Guide" \" -*- nroff -*- .ad l .nh .SH NAME QwtPicker \- \fBQwtPicker\fP provides selections on a widget\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits QObject, and \fBQwtEventPattern\fP\&. .PP Inherited by \fBQwtPlotPicker\fP, and \fBQwtPolarPicker\fP\&. .SS "Public Types" .in +1c .ti -1c .RI "enum \fBRubberBand\fP { \fBNoRubberBand\fP = 0, \fBHLineRubberBand\fP, \fBVLineRubberBand\fP, \fBCrossRubberBand\fP, \fBRectRubberBand\fP, \fBEllipseRubberBand\fP, \fBPolygonRubberBand\fP, \fBUserRubberBand\fP = 100 }" .br .ti -1c .RI "enum \fBDisplayMode\fP { \fBAlwaysOff\fP, \fBAlwaysOn\fP, \fBActiveOnly\fP }" .br .RI "Display mode\&. " .ti -1c .RI "enum \fBResizeMode\fP { \fBStretch\fP, \fBKeepSize\fP }" .br .in -1c .SS "Public Slots" .in +1c .ti -1c .RI "void \fBsetEnabled\fP (bool)" .br .RI "En/disable the picker\&. " .in -1c .SS "Signals" .in +1c .ti -1c .RI "void \fBactivated\fP (bool on)" .br .ti -1c .RI "void \fBselected\fP (const QPolygon &polygon)" .br .ti -1c .RI "void \fBappended\fP (const QPoint &pos)" .br .ti -1c .RI "void \fBmoved\fP (const QPoint &pos)" .br .ti -1c .RI "void \fBremoved\fP (const QPoint &pos)" .br .ti -1c .RI "void \fBchanged\fP (const QPolygon &\fBselection\fP)" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBQwtPicker\fP (QWidget *parent)" .br .ti -1c .RI "\fBQwtPicker\fP (\fBRubberBand\fP \fBrubberBand\fP, \fBDisplayMode\fP \fBtrackerMode\fP, QWidget *)" .br .ti -1c .RI "virtual \fB~QwtPicker\fP ()" .br .RI "Destructor\&. " .ti -1c .RI "void \fBsetStateMachine\fP (\fBQwtPickerMachine\fP *)" .br .ti -1c .RI "const \fBQwtPickerMachine\fP * \fBstateMachine\fP () const" .br .ti -1c .RI "\fBQwtPickerMachine\fP * \fBstateMachine\fP ()" .br .ti -1c .RI "void \fBsetRubberBand\fP (\fBRubberBand\fP)" .br .ti -1c .RI "\fBRubberBand\fP \fBrubberBand\fP () const" .br .ti -1c .RI "void \fBsetTrackerMode\fP (\fBDisplayMode\fP)" .br .RI "Set the display mode of the tracker\&. " .ti -1c .RI "\fBDisplayMode\fP \fBtrackerMode\fP () const" .br .ti -1c .RI "void \fBsetResizeMode\fP (\fBResizeMode\fP)" .br .RI "Set the resize mode\&. " .ti -1c .RI "\fBResizeMode\fP \fBresizeMode\fP () const" .br .ti -1c .RI "void \fBsetRubberBandPen\fP (const QPen &)" .br .ti -1c .RI "QPen \fBrubberBandPen\fP () const" .br .ti -1c .RI "void \fBsetTrackerPen\fP (const QPen &)" .br .ti -1c .RI "QPen \fBtrackerPen\fP () const" .br .ti -1c .RI "void \fBsetTrackerFont\fP (const QFont &)" .br .ti -1c .RI "QFont \fBtrackerFont\fP () const" .br .ti -1c .RI "bool \fBisEnabled\fP () const" .br .ti -1c .RI "bool \fBisActive\fP () const" .br .ti -1c .RI "virtual bool \fBeventFilter\fP (QObject *, QEvent *) override" .br .RI "Event filter\&. " .ti -1c .RI "QWidget * \fBparentWidget\fP ()" .br .RI "Return the parent widget, where the selection happens\&. " .ti -1c .RI "const QWidget * \fBparentWidget\fP () const" .br .RI "Return the parent widget, where the selection happens\&. " .ti -1c .RI "virtual QPainterPath \fBpickArea\fP () const" .br .ti -1c .RI "virtual void \fBdrawRubberBand\fP (QPainter *) const" .br .ti -1c .RI "virtual void \fBdrawTracker\fP (QPainter *) const" .br .ti -1c .RI "virtual QRegion \fBtrackerMask\fP () const" .br .ti -1c .RI "virtual QRegion \fBrubberBandMask\fP () const" .br .ti -1c .RI "virtual \fBQwtText\fP \fBtrackerText\fP (const QPoint &pos) const" .br .RI "Return the label for a position\&. " .ti -1c .RI "QPoint \fBtrackerPosition\fP () const" .br .ti -1c .RI "virtual QRect \fBtrackerRect\fP (const QFont &) const" .br .ti -1c .RI "QPolygon \fBselection\fP () const" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "virtual QPolygon \fBadjustedPoints\fP (const QPolygon &) const" .br .RI "Map the \fBpickedPoints()\fP into a \fBselection()\fP " .ti -1c .RI "virtual void \fBtransition\fP (const QEvent *)" .br .ti -1c .RI "virtual void \fBbegin\fP ()" .br .ti -1c .RI "virtual void \fBappend\fP (const QPoint &)" .br .ti -1c .RI "virtual void \fBmove\fP (const QPoint &)" .br .ti -1c .RI "virtual void \fBremove\fP ()" .br .ti -1c .RI "virtual bool \fBend\fP (bool ok=true)" .br .RI "Close a selection setting the state to inactive\&. " .ti -1c .RI "virtual bool \fBaccept\fP (QPolygon &) const" .br .RI "Validate and fix up the selection\&. " .ti -1c .RI "virtual void \fBreset\fP ()" .br .ti -1c .RI "virtual void \fBwidgetMousePressEvent\fP (QMouseEvent *)" .br .ti -1c .RI "virtual void \fBwidgetMouseReleaseEvent\fP (QMouseEvent *)" .br .ti -1c .RI "virtual void \fBwidgetMouseDoubleClickEvent\fP (QMouseEvent *)" .br .ti -1c .RI "virtual void \fBwidgetMouseMoveEvent\fP (QMouseEvent *)" .br .ti -1c .RI "virtual void \fBwidgetWheelEvent\fP (QWheelEvent *)" .br .ti -1c .RI "virtual void \fBwidgetKeyPressEvent\fP (QKeyEvent *)" .br .ti -1c .RI "virtual void \fBwidgetKeyReleaseEvent\fP (QKeyEvent *)" .br .ti -1c .RI "virtual void \fBwidgetEnterEvent\fP (QEvent *)" .br .ti -1c .RI "virtual void \fBwidgetLeaveEvent\fP (QEvent *)" .br .ti -1c .RI "virtual void \fBstretchSelection\fP (const QSize &oldSize, const QSize &newSize)" .br .ti -1c .RI "virtual void \fBupdateDisplay\fP ()" .br .RI "Update the state of rubber band and tracker label\&. " .ti -1c .RI "const \fBQwtWidgetOverlay\fP * \fBrubberBandOverlay\fP () const" .br .ti -1c .RI "const \fBQwtWidgetOverlay\fP * \fBtrackerOverlay\fP () const" .br .ti -1c .RI "const QPolygon & \fBpickedPoints\fP () const" .br .in -1c .SH "Detailed Description" .PP \fBQwtPicker\fP provides selections on a widget\&. \fBQwtPicker\fP filters all enter, leave, mouse and keyboard events of a widget and translates them into an array of selected points\&. .PP The way how the points are collected depends on type of state machine that is connected to the picker\&. Qwt offers a couple of predefined state machines for selecting: .PP .IP "\(bu" 2 Nothing .br \fBQwtPickerTrackerMachine\fP .IP "\(bu" 2 Single points .br \fBQwtPickerClickPointMachine\fP, \fBQwtPickerDragPointMachine\fP .IP "\(bu" 2 Rectangles .br \fBQwtPickerClickRectMachine\fP, \fBQwtPickerDragRectMachine\fP .IP "\(bu" 2 Polygons .br \fBQwtPickerPolygonMachine\fP .PP .PP While these state machines cover the most common ways to collect points it is also possible to implement individual machines as well\&. .PP \fBQwtPicker\fP translates the picked points into a selection using the \fBadjustedPoints()\fP method\&. \fBadjustedPoints()\fP is intended to be reimplemented to fix up the selection according to application specific requirements\&. (F\&.e\&. when an application accepts rectangles of a fixed aspect ratio only\&.) .PP Optionally \fBQwtPicker\fP support the process of collecting points by a rubber band and tracker displaying a text for the current mouse position\&. .PP \fBExample\fP .RS 4 .PP .nf #include #include QwtPicker *picker = new QwtPicker(widget); picker->setStateMachine(new QwtPickerDragRectMachine); picker->setTrackerMode(QwtPicker::ActiveOnly); picker->setRubberBand(QwtPicker::RectRubberBand); .fi .PP .RE .PP The state machine triggers the following commands: .PP .IP "\(bu" 2 \fBbegin()\fP .br Activate/Initialize the selection\&. .IP "\(bu" 2 \fBappend()\fP .br Add a new point .IP "\(bu" 2 \fBmove()\fP .br Change the position of the last point\&. .IP "\(bu" 2 \fBremove()\fP .br Remove the last point\&. .IP "\(bu" 2 \fBend()\fP .br Terminate the selection and call accept to validate the picked points\&. .PP .PP The picker is active (\fBisActive()\fP), between \fBbegin()\fP and \fBend()\fP\&. In active state the rubber band is displayed, and the tracker is visible in case of trackerMode is ActiveOnly or AlwaysOn\&. .PP The cursor can be moved using the arrow keys\&. All selections can be aborted using the abort key\&. (\fBQwtEventPattern::KeyPatternCode\fP) .PP \fBWarning\fP .RS 4 In case of QWidget::NoFocus the focus policy of the observed widget is set to QWidget::WheelFocus and mouse tracking will be manipulated while the picker is active, or if \fBtrackerMode()\fP is AlwayOn\&. .RE .PP .PP Definition at line 103 of file qwt_picker\&.h\&. .SH "Member Enumeration Documentation" .PP .SS "enum \fBQwtPicker::DisplayMode\fP" .PP Display mode\&. .PP \fBSee also\fP .RS 4 \fBsetTrackerMode()\fP, \fBtrackerMode()\fP, \fBisActive()\fP .RE .PP .PP \fBEnumerator\fP .in +1c .TP \fB\fIAlwaysOff \fP\fP Display never\&. .TP \fB\fIAlwaysOn \fP\fP Display always\&. .TP \fB\fIActiveOnly \fP\fP Display only when the selection is active\&. .PP Definition at line 161 of file qwt_picker\&.h\&. .SS "enum \fBQwtPicker::ResizeMode\fP" Controls what to do with the selected points of an active selection when the observed widget is resized\&. .PP The default value is \fBQwtPicker::Stretch\fP\&. .PP \fBSee also\fP .RS 4 \fBsetResizeMode()\fP .RE .PP .PP \fBEnumerator\fP .in +1c .TP \fB\fIStretch \fP\fP All points are scaled according to the new size,\&. .TP \fB\fIKeepSize \fP\fP All points remain unchanged\&. .PP Definition at line 181 of file qwt_picker\&.h\&. .SS "enum \fBQwtPicker::RubberBand\fP" Rubber band style .PP The default value is \fBQwtPicker::NoRubberBand\fP\&. .PP \fBSee also\fP .RS 4 \fBsetRubberBand()\fP, \fBrubberBand()\fP .RE .PP .PP \fBEnumerator\fP .in +1c .TP \fB\fINoRubberBand \fP\fP No rubberband\&. .TP \fB\fIHLineRubberBand \fP\fP A horizontal line ( only for \fBQwtPickerMachine::PointSelection\fP ) .TP \fB\fIVLineRubberBand \fP\fP A vertical line ( only for \fBQwtPickerMachine::PointSelection\fP ) .TP \fB\fICrossRubberBand \fP\fP A crosshair ( only for \fBQwtPickerMachine::PointSelection\fP ) .TP \fB\fIRectRubberBand \fP\fP A rectangle ( only for \fBQwtPickerMachine::RectSelection\fP ) .TP \fB\fIEllipseRubberBand \fP\fP An ellipse ( only for \fBQwtPickerMachine::RectSelection\fP ) .TP \fB\fIPolygonRubberBand \fP\fP A polygon ( only for \fBQwtPickerMachine::PolygonSelection\fP ) .TP \fB\fIUserRubberBand \fP\fP Values >= UserRubberBand can be used to define additional rubber bands\&. .PP Definition at line 127 of file qwt_picker\&.h\&. .SH "Constructor & Destructor Documentation" .PP .SS "QwtPicker::QwtPicker (QWidget * parent)\fC [explicit]\fP" Constructor .PP Creates an picker that is enabled, but without a state machine\&. rubber band and tracker are disabled\&. .PP \fBParameters\fP .RS 4 \fIparent\fP Parent widget, that will be observed .RE .PP .PP Definition at line 168 of file qwt_picker\&.cpp\&. .SS "QwtPicker::QwtPicker (\fBRubberBand\fP rubberBand, \fBDisplayMode\fP trackerMode, QWidget * parent)\fC [explicit]\fP" Constructor .PP \fBParameters\fP .RS 4 \fIrubberBand\fP Rubber band style .br \fItrackerMode\fP Tracker mode .br \fIparent\fP Parent widget, that will be observed .RE .PP .PP Definition at line 181 of file qwt_picker\&.cpp\&. .SH "Member Function Documentation" .PP .SS "bool QwtPicker::accept (QPolygon & selection) const\fC [protected]\fP, \fC [virtual]\fP" .PP Validate and fix up the selection\&. Accepts all selections unmodified .PP \fBParameters\fP .RS 4 \fIselection\fP Selection to validate and fix up .RE .PP \fBReturns\fP .RS 4 true, when accepted, false otherwise .RE .PP .PP Reimplemented in \fBQwtPlotZoomer\fP\&. .PP Definition at line 1383 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::activated (bool on)\fC [signal]\fP" A signal indicating, when the picker has been activated\&. Together with \fBsetEnabled()\fP it can be used to implement selections with more than one picker\&. .PP \fBParameters\fP .RS 4 \fIon\fP True, when the picker has been activated .RE .PP .SS "QPolygon QwtPicker::adjustedPoints (const QPolygon & points) const\fC [protected]\fP, \fC [virtual]\fP" .PP Map the \fBpickedPoints()\fP into a \fBselection()\fP \fBadjustedPoints()\fP maps the points, that have been collected on the \fBparentWidget()\fP into a \fBselection()\fP\&. The default implementation simply returns the points unmodified\&. .PP The reason, why a \fBselection()\fP differs from the picked points depends on the application requirements\&. F\&.e\&. : .PP .IP "\(bu" 2 A rectangular selection might need to have a specific aspect ratio only\&. .IP "\(bu" 2 A selection could accept non intersecting polygons only\&. .IP "\(bu" 2 \&.\&.\&. .PP .PP The example below is for a rectangular selection, where the first point is the center of the selected rectangle\&. .PP \fBExample\fP .RS 4 .PP .nf QPolygon MyPicker::adjustedPoints( const QPolygon &points ) const { QPolygon adjusted; if ( points\&.size() == 2 ) { const int width = qAbs( points[1]\&.x() - points[0]\&.x() ); const int height = qAbs( points[1]\&.y() - points[0]\&.y() ); QRect rect( 0, 0, 2 * width, 2 * height ); rect\&.moveCenter( points[0] ); adjusted += rect\&.topLeft(); adjusted += rect\&.bottomRight(); } return adjusted; } .fi .PP .RE .PP \fBParameters\fP .RS 4 \fIpoints\fP Selected points .RE .PP \fBReturns\fP .RS 4 Selected points unmodified .RE .PP .PP Definition at line 783 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::append (const QPoint & pos)\fC [protected]\fP, \fC [virtual]\fP" Append a point to the selection and update rubber band and tracker\&. The \fBappended()\fP signal is emitted\&. .PP \fBParameters\fP .RS 4 \fIpos\fP Additional point .RE .PP \fBSee also\fP .RS 4 \fBisActive()\fP, \fBbegin()\fP, \fBend()\fP, \fBmove()\fP, \fBappended()\fP .RE .PP .PP Reimplemented in \fBQwtPolarPicker\fP, and \fBQwtPlotPicker\fP\&. .PP Definition at line 1320 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::appended (const QPoint & pos)\fC [signal]\fP" A signal emitted when a point has been appended to the selection .PP \fBParameters\fP .RS 4 \fIpos\fP Position of the appended point\&. .RE .PP \fBSee also\fP .RS 4 \fBappend()\fP\&. \fBmoved()\fP .RE .PP .SS "void QwtPicker::begin ()\fC [protected]\fP, \fC [virtual]\fP" Open a selection setting the state to active .PP \fBSee also\fP .RS 4 \fBisActive()\fP, \fBend()\fP, \fBappend()\fP, \fBmove()\fP .RE .PP .PP Reimplemented in \fBQwtPlotZoomer\fP\&. .PP Definition at line 1239 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::changed (const QPolygon & selection)\fC [signal]\fP" A signal emitted when the active selection has been changed\&. This might happen when the observed widget is resized\&. .PP \fBParameters\fP .RS 4 \fIselection\fP Changed selection .RE .PP \fBSee also\fP .RS 4 \fBstretchSelection()\fP .RE .PP .SS "void QwtPicker::drawRubberBand (QPainter * painter) const\fC [virtual]\fP" Draw a rubber band, depending on \fBrubberBand()\fP .PP \fBParameters\fP .RS 4 \fIpainter\fP Painter, initialized with a clip region .RE .PP \fBSee also\fP .RS 4 \fBrubberBand()\fP, \fBRubberBand\fP .RE .PP .PP Definition at line 637 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::drawTracker (QPainter * painter) const\fC [virtual]\fP" Draw the tracker .PP \fBParameters\fP .RS 4 \fIpainter\fP Painter .RE .PP \fBSee also\fP .RS 4 \fBtrackerRect()\fP, \fBtrackerText()\fP .RE .PP .PP Definition at line 732 of file qwt_picker\&.cpp\&. .SS "bool QwtPicker::end (bool ok = \fCtrue\fP)\fC [protected]\fP, \fC [virtual]\fP" .PP Close a selection setting the state to inactive\&. The selection is validated and maybe fixed by \fBaccept()\fP\&. .PP \fBParameters\fP .RS 4 \fIok\fP If true, complete the selection and emit a selected signal otherwise discard the selection\&. .RE .PP \fBReturns\fP .RS 4 true if the selection is accepted, false otherwise .RE .PP \fBSee also\fP .RS 4 \fBisActive()\fP, \fBbegin()\fP, \fBappend()\fP, \fBmove()\fP, \fBselected()\fP, \fBaccept()\fP .RE .PP .PP Reimplemented in \fBQwtPolarPicker\fP, \fBQwtPlotZoomer\fP, and \fBQwtPlotPicker\fP\&. .PP Definition at line 1272 of file qwt_picker\&.cpp\&. .SS "bool QwtPicker::eventFilter (QObject * object, QEvent * event)\fC [override]\fP, \fC [virtual]\fP" .PP Event filter\&. When \fBisEnabled()\fP is true all events of the observed widget are filtered\&. Mouse and keyboard events are translated into widgetMouse- and widgetKey- and widgetWheel-events\&. Paint and Resize events are handled to keep rubber band and tracker up to date\&. .PP \fBParameters\fP .RS 4 \fIobject\fP Object to be filtered .br \fIevent\fP Event .RE .PP \fBReturns\fP .RS 4 Always false\&. .RE .PP \fBSee also\fP .RS 4 \fBwidgetEnterEvent()\fP, \fBwidgetLeaveEvent()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP, QObject::installEventFilter(), QObject::event() .RE .PP .PP Definition at line 893 of file qwt_picker\&.cpp\&. .SS "bool QwtPicker::isActive () const" A picker is active between \fBbegin()\fP and \fBend()\fP\&. .PP \fBReturns\fP .RS 4 true if the selection is active\&. .RE .PP .PP Definition at line 1393 of file qwt_picker\&.cpp\&. .SS "bool QwtPicker::isEnabled () const" .PP \fBReturns\fP .RS 4 true when enabled, false otherwise .RE .PP \fBSee also\fP .RS 4 \fBsetEnabled()\fP, \fBeventFilter()\fP .RE .PP .PP Definition at line 399 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::move (const QPoint & pos)\fC [protected]\fP, \fC [virtual]\fP" Move the last point of the selection The \fBmoved()\fP signal is emitted\&. .PP \fBParameters\fP .RS 4 \fIpos\fP New position .RE .PP \fBSee also\fP .RS 4 \fBisActive()\fP, \fBbegin()\fP, \fBend()\fP, \fBappend()\fP .RE .PP .PP Reimplemented in \fBQwtPolarPicker\fP, and \fBQwtPlotPicker\fP\&. .PP Definition at line 1338 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::moved (const QPoint & pos)\fC [signal]\fP" A signal emitted whenever the last appended point of the selection has been moved\&. .PP \fBParameters\fP .RS 4 \fIpos\fP Position of the moved last point of the selection\&. .RE .PP \fBSee also\fP .RS 4 \fBmove()\fP, \fBappended()\fP .RE .PP .SS "QPainterPath QwtPicker::pickArea () const\fC [virtual]\fP" Find the area of the observed widget, where selection might happen\&. .PP \fBReturns\fP .RS 4 \fBparentWidget()\fP->contentsRect() .RE .PP .PP Reimplemented in \fBQwtPolarPicker\fP\&. .PP Definition at line 1474 of file qwt_picker\&.cpp\&. .SS "const QPolygon & QwtPicker::pickedPoints () const\fC [protected]\fP" Return the points, that have been collected so far\&. The \fBselection()\fP is calculated from the \fBpickedPoints()\fP in \fBadjustedPoints()\fP\&. .PP \fBReturns\fP .RS 4 Picked points .RE .PP .PP Definition at line 1403 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::remove ()\fC [protected]\fP, \fC [virtual]\fP" Remove the last point of the selection The \fBremoved()\fP signal is emitted\&. .PP \fBSee also\fP .RS 4 \fBisActive()\fP, \fBbegin()\fP, \fBend()\fP, \fBappend()\fP, \fBmove()\fP .RE .PP .PP Definition at line 1359 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::removed (const QPoint & pos)\fC [signal]\fP" A signal emitted whenever the last appended point of the selection has been removed\&. .PP \fBParameters\fP .RS 4 \fIpos\fP Position of the point, that has been removed .RE .PP \fBSee also\fP .RS 4 \fBremove()\fP, \fBappended()\fP .RE .PP .SS "void QwtPicker::reset ()\fC [protected]\fP, \fC [virtual]\fP" Reset the state machine and terminate ( end(false) ) the selection .PP Definition at line 1303 of file qwt_picker\&.cpp\&. .SS "\fBQwtPicker::ResizeMode\fP QwtPicker::resizeMode () const" .PP \fBReturns\fP .RS 4 Resize mode .RE .PP \fBSee also\fP .RS 4 \fBsetResizeMode()\fP, \fBResizeMode\fP .RE .PP .PP Definition at line 361 of file qwt_picker\&.cpp\&. .SS "\fBQwtPicker::RubberBand\fP QwtPicker::rubberBand () const" .PP \fBReturns\fP .RS 4 Rubber band style .RE .PP \fBSee also\fP .RS 4 \fBsetRubberBand()\fP, \fBRubberBand\fP, \fBrubberBandPen()\fP .RE .PP .PP Definition at line 298 of file qwt_picker\&.cpp\&. .SS "QRegion QwtPicker::rubberBandMask () const\fC [virtual]\fP" Calculate the mask for the rubber band overlay .PP \fBReturns\fP .RS 4 Region for the mask .RE .PP \fBSee also\fP .RS 4 QWidget::setMask() .RE .PP .PP Definition at line 525 of file qwt_picker\&.cpp\&. .SS "const \fBQwtWidgetOverlay\fP * QwtPicker::rubberBandOverlay () const\fC [protected]\fP" .PP \fBReturns\fP .RS 4 Overlay displaying the rubber band .RE .PP .PP Definition at line 1581 of file qwt_picker\&.cpp\&. .SS "QPen QwtPicker::rubberBandPen () const" .PP \fBReturns\fP .RS 4 Rubber band pen .RE .PP \fBSee also\fP .RS 4 \fBsetRubberBandPen()\fP, \fBrubberBand()\fP .RE .PP .PP Definition at line 472 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::selected (const QPolygon & polygon)\fC [signal]\fP" A signal emitting the selected points, at the end of a selection\&. .PP \fBParameters\fP .RS 4 \fIpolygon\fP Selected points .RE .PP .SS "QPolygon QwtPicker::selection () const" .PP \fBReturns\fP .RS 4 Selected points .RE .PP \fBSee also\fP .RS 4 \fBpickedPoints()\fP, \fBadjustedPoints()\fP .RE .PP .PP Definition at line 792 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setEnabled (bool enabled)\fC [slot]\fP" .PP En/disable the picker\&. When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed\&. .PP \fBParameters\fP .RS 4 \fIenabled\fP true or false .RE .PP \fBSee also\fP .RS 4 \fBisEnabled()\fP, \fBeventFilter()\fP .RE .PP .PP Definition at line 375 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setResizeMode (\fBResizeMode\fP mode)" .PP Set the resize mode\&. The resize mode controls what to do with the selected points of an active selection when the observed widget is resized\&. .PP Stretch means the points are scaled according to the new size, KeepSize means the points remain unchanged\&. .PP The default mode is Stretch\&. .PP \fBParameters\fP .RS 4 \fImode\fP Resize mode .RE .PP \fBSee also\fP .RS 4 \fBresizeMode()\fP, \fBResizeMode\fP .RE .PP .PP Definition at line 351 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setRubberBand (\fBRubberBand\fP rubberBand)" Set the rubber band style .PP \fBParameters\fP .RS 4 \fIrubberBand\fP Rubber band style The default value is NoRubberBand\&. .RE .PP \fBSee also\fP .RS 4 \fBrubberBand()\fP, \fBRubberBand\fP, \fBsetRubberBandPen()\fP .RE .PP .PP Definition at line 289 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setRubberBandPen (const QPen & pen)" Set the pen for the rubberband .PP \fBParameters\fP .RS 4 \fIpen\fP Rubber band pen .RE .PP \fBSee also\fP .RS 4 \fBrubberBandPen()\fP, \fBsetRubberBand()\fP .RE .PP .PP Definition at line 459 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setStateMachine (\fBQwtPickerMachine\fP * stateMachine)" Set a state machine and delete the previous one .PP \fBParameters\fP .RS 4 \fIstateMachine\fP State machine .RE .PP \fBSee also\fP .RS 4 \fBstateMachine()\fP .RE .PP .PP Definition at line 229 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setTrackerFont (const QFont & font)" Set the font for the tracker .PP \fBParameters\fP .RS 4 \fIfont\fP Tracker font .RE .PP \fBSee also\fP .RS 4 \fBtrackerFont()\fP, \fBsetTrackerMode()\fP, \fBsetTrackerPen()\fP .RE .PP .PP Definition at line 410 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setTrackerMode (\fBDisplayMode\fP mode)" .PP Set the display mode of the tracker\&. A tracker displays information about current position of the cursor as a string\&. The display mode controls if the tracker has to be displayed whenever the observed widget has focus and cursor (AlwaysOn), never (AlwaysOff), or only when the selection is active (ActiveOnly)\&. .PP \fBParameters\fP .RS 4 \fImode\fP Tracker display mode .RE .PP \fBWarning\fP .RS 4 In case of AlwaysOn, mouseTracking will be enabled for the observed widget\&. .RE .PP \fBSee also\fP .RS 4 \fBtrackerMode()\fP, \fBDisplayMode\fP .RE .PP .PP Definition at line 319 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::setTrackerPen (const QPen & pen)" Set the pen for the tracker .PP \fBParameters\fP .RS 4 \fIpen\fP Tracker pen .RE .PP \fBSee also\fP .RS 4 \fBtrackerPen()\fP, \fBsetTrackerMode()\fP, \fBsetTrackerFont()\fP .RE .PP .PP Definition at line 435 of file qwt_picker\&.cpp\&. .SS "\fBQwtPickerMachine\fP * QwtPicker::stateMachine ()" .PP \fBReturns\fP .RS 4 Assigned state machine .RE .PP \fBSee also\fP .RS 4 \fBsetStateMachine()\fP .RE .PP .PP Definition at line 247 of file qwt_picker\&.cpp\&. .SS "const \fBQwtPickerMachine\fP * QwtPicker::stateMachine () const" .PP \fBReturns\fP .RS 4 Assigned state machine .RE .PP \fBSee also\fP .RS 4 \fBsetStateMachine()\fP .RE .PP .PP Definition at line 256 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::stretchSelection (const QSize & oldSize, const QSize & newSize)\fC [protected]\fP, \fC [virtual]\fP" Scale the selection by the ratios of oldSize and newSize The \fBchanged()\fP signal is emitted\&. .PP \fBParameters\fP .RS 4 \fIoldSize\fP Previous size .br \fInewSize\fP Current size .RE .PP \fBSee also\fP .RS 4 \fBResizeMode\fP, \fBsetResizeMode()\fP, \fBresizeMode()\fP .RE .PP .PP Definition at line 1417 of file qwt_picker\&.cpp\&. .SS "QFont QwtPicker::trackerFont () const" .PP \fBReturns\fP .RS 4 Tracker font .RE .PP \fBSee also\fP .RS 4 \fBsetTrackerFont()\fP, \fBtrackerMode()\fP, \fBtrackerPen()\fP .RE .PP .PP Definition at line 424 of file qwt_picker\&.cpp\&. .SS "QRegion QwtPicker::trackerMask () const\fC [virtual]\fP" Calculate the mask for the tracker overlay .PP \fBReturns\fP .RS 4 Region with one rectangle: trackerRect( trackerFont() ); .RE .PP \fBSee also\fP .RS 4 QWidget::setMask(), \fBtrackerRect()\fP .RE .PP .PP Definition at line 514 of file qwt_picker\&.cpp\&. .SS "\fBQwtPicker::DisplayMode\fP QwtPicker::trackerMode () const" .PP \fBReturns\fP .RS 4 Tracker display mode .RE .PP \fBSee also\fP .RS 4 \fBsetTrackerMode()\fP, \fBDisplayMode\fP .RE .PP .PP Definition at line 332 of file qwt_picker\&.cpp\&. .SS "const \fBQwtWidgetOverlay\fP * QwtPicker::trackerOverlay () const\fC [protected]\fP" .PP \fBReturns\fP .RS 4 Overlay displaying the tracker text .RE .PP .PP Definition at line 1587 of file qwt_picker\&.cpp\&. .SS "QPen QwtPicker::trackerPen () const" .PP \fBReturns\fP .RS 4 Tracker pen .RE .PP \fBSee also\fP .RS 4 \fBsetTrackerPen()\fP, \fBtrackerMode()\fP, \fBtrackerFont()\fP .RE .PP .PP Definition at line 448 of file qwt_picker\&.cpp\&. .SS "QPoint QwtPicker::trackerPosition () const" .PP \fBReturns\fP .RS 4 Current position of the tracker .RE .PP .PP Definition at line 798 of file qwt_picker\&.cpp\&. .SS "QRect QwtPicker::trackerRect (const QFont & font) const\fC [virtual]\fP" Calculate the bounding rectangle for the tracker text from the current position of the tracker .PP \fBParameters\fP .RS 4 \fIfont\fP Font of the tracker text .RE .PP \fBReturns\fP .RS 4 Bounding rectangle of the tracker text .RE .PP \fBSee also\fP .RS 4 \fBtrackerPosition()\fP .RE .PP .PP Definition at line 812 of file qwt_picker\&.cpp\&. .SS "\fBQwtText\fP QwtPicker::trackerText (const QPoint & pos) const\fC [virtual]\fP" .PP Return the label for a position\&. In case of HLineRubberBand the label is the value of the y position, in case of VLineRubberBand the value of the x position\&. Otherwise the label contains x and y position separated by a ',' \&. .PP The format for the string conversion is '%d'\&. .PP \fBParameters\fP .RS 4 \fIpos\fP Position .RE .PP \fBReturns\fP .RS 4 Converted position as string .RE .PP .PP Reimplemented in \fBQwtPolarPicker\fP, and \fBQwtPlotPicker\fP\&. .PP Definition at line 490 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::transition (const QEvent * event)\fC [protected]\fP, \fC [virtual]\fP" Passes an event to the state machine and executes the resulting commands\&. Append and Move commands use the current position of the cursor ( QCursor::pos() )\&. .PP \fBParameters\fP .RS 4 \fIevent\fP Event .RE .PP .PP Definition at line 1176 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetEnterEvent (QEvent * event)\fC [protected]\fP, \fC [virtual]\fP" Handle a enter event for the observed widget\&. .PP \fBParameters\fP .RS 4 \fIevent\fP Qt event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP .RE .PP .PP Definition at line 1018 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetKeyPressEvent (QKeyEvent * keyEvent)\fC [protected]\fP, \fC [virtual]\fP" Handle a key press event for the observed widget\&. .PP Selections can be completely done by the keyboard\&. The arrow keys move the cursor, the abort key aborts a selection\&. All other keys are handled by the current state machine\&. .PP \fBParameters\fP .RS 4 \fIkeyEvent\fP Key event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyReleaseEvent()\fP, \fBstateMachine()\fP, \fBQwtEventPattern::KeyPatternCode\fP .RE .PP .PP Reimplemented in \fBQwtPlotZoomer\fP\&. .PP Definition at line 1112 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetKeyReleaseEvent (QKeyEvent * keyEvent)\fC [protected]\fP, \fC [virtual]\fP" Handle a key release event for the observed widget\&. .PP Passes the event to the state machine\&. .PP \fBParameters\fP .RS 4 \fIkeyEvent\fP Key event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBstateMachine()\fP .RE .PP .PP Definition at line 1164 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetLeaveEvent (QEvent * event)\fC [protected]\fP, \fC [virtual]\fP" Handle a leave event for the observed widget\&. .PP \fBParameters\fP .RS 4 \fIevent\fP Qt event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP .RE .PP .PP Definition at line 1032 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetMouseDoubleClickEvent (QMouseEvent * mouseEvent)\fC [protected]\fP, \fC [virtual]\fP" Handle mouse double click event for the observed widget\&. .PP \fBParameters\fP .RS 4 \fImouseEvent\fP Mouse event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP .RE .PP .PP Definition at line 1064 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetMouseMoveEvent (QMouseEvent * mouseEvent)\fC [protected]\fP, \fC [virtual]\fP" Handle a mouse move event for the observed widget\&. .PP \fBParameters\fP .RS 4 \fImouseEvent\fP Mouse event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP .RE .PP .PP Definition at line 996 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetMousePressEvent (QMouseEvent * mouseEvent)\fC [protected]\fP, \fC [virtual]\fP" Handle a mouse press event for the observed widget\&. .PP \fBParameters\fP .RS 4 \fImouseEvent\fP Mouse event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP .RE .PP .PP Definition at line 982 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetMouseReleaseEvent (QMouseEvent * mouseEvent)\fC [protected]\fP, \fC [virtual]\fP" Handle a mouse release event for the observed widget\&. .PP \fBParameters\fP .RS 4 \fImouseEvent\fP Mouse event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetWheelEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP .RE .PP .PP Reimplemented in \fBQwtPlotZoomer\fP\&. .PP Definition at line 1050 of file qwt_picker\&.cpp\&. .SS "void QwtPicker::widgetWheelEvent (QWheelEvent * wheelEvent)\fC [protected]\fP, \fC [virtual]\fP" Handle a wheel event for the observed widget\&. .PP Move the last point of the selection in case of \fBisActive()\fP == true .PP \fBParameters\fP .RS 4 \fIwheelEvent\fP Wheel event .RE .PP \fBSee also\fP .RS 4 \fBeventFilter()\fP, \fBwidgetMousePressEvent()\fP, \fBwidgetMouseReleaseEvent()\fP, \fBwidgetMouseDoubleClickEvent()\fP, \fBwidgetMouseMoveEvent()\fP, \fBwidgetKeyPressEvent()\fP, \fBwidgetKeyReleaseEvent()\fP .RE .PP .PP Definition at line 1081 of file qwt_picker\&.cpp\&. .SH "Author" .PP Generated automatically by Doxygen for Qwt User's Guide from the source code\&.