Zoomer(int xAxis, int yAxis, QWidget *canvas): #else Zoomer(int xAxis, int yAxis, QwtPlotCanvas *canvas): #endif QwtPlotZoomer(xAxis, yAxis, canvas) { #if QWT_VERSION >= 0x060000 setStateMachine(new QwtPickerDragRectMachine()); #else setSelectionFlags(QwtPicker::DragSelection | QwtPicker::CornerToCorner); #endif // setTrackerMode(QwtPlotZoomer::AlwaysOn); // setTrackerMode(QwtPicker::AlwaysOff); // setRubberBand(QwtPicker::NoRubberBand); QPen pen = rubberBandPen(); pen.setColor(Qt::black); setRubberBandPen(pen); setTrackerPen(pen); // RightButton: zoom out by 1 // Ctrl+RightButton: zoom out to full size setMousePattern(QwtEventPattern::MouseSelect2, Qt::RightButton, Qt::ControlModifier); setMousePattern(QwtEventPattern::MouseSelect3, Qt::RightButton); }
//! Init the picker, used by the constructors void QwtPicker::init(QWidget *parent, int selectionFlags, RubberBand rubberBand, DisplayMode trackerMode) { d_data = new PrivateData; d_data->rubberBandWidget = NULL; d_data->textLabelWidget = NULL; d_data->rubberBand = rubberBand; d_data->enabled = false; d_data->resizeMode = Stretch; d_data->trackerMode = AlwaysOff; d_data->isActive = false; d_data->labelPosition = QPoint(-1, -1); d_data->mouseTracking = false; d_data->stateMachine = NULL; setSelectionFlags(selectionFlags); if ( parent ) { #if QT_VERSION >= 0x040000 if ( parent->focusPolicy() == Qt::NoFocus ) parent->setFocusPolicy(Qt::WheelFocus); #else if ( parent->focusPolicy() == QWidget::NoFocus ) parent->setFocusPolicy(QWidget::WheelFocus); #endif d_data->trackerFont = parent->font(); d_data->mouseTracking = parent->hasMouseTracking(); setEnabled(true); } setTrackerMode(trackerMode); }
int QwtPicker::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QObject::qt_metacall(_c, _id, _a); if (_id < 0) return _id; if (_c == QMetaObject::InvokeMetaMethod) { switch (_id) { case 0: selected((*reinterpret_cast< const QwtPicker::SelectedPoints(*)>(_a[1]))); break; case 1: appended((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 2: moved((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 3: changed((*reinterpret_cast< const SelectedPoints(*)>(_a[1]))); break; } _id -= 4; } #ifndef QT_NO_PROPERTIES else if (_c == QMetaObject::ReadProperty) { void *_v = _a[0]; switch (_id) { case 0: *reinterpret_cast< int*>(_v) = selectionFlags(); break; case 1: *reinterpret_cast< DisplayMode*>(_v) = trackerMode(); break; case 2: *reinterpret_cast< QFont*>(_v) = trackerFont(); break; case 3: *reinterpret_cast< RubberBand*>(_v) = rubberBand(); break; case 4: *reinterpret_cast< ResizeMode*>(_v) = resizeMode(); break; case 5: *reinterpret_cast< bool*>(_v) = isEnabled(); break; case 6: *reinterpret_cast< QPen*>(_v) = trackerPen(); break; case 7: *reinterpret_cast< QPen*>(_v) = rubberBandPen(); break; } _id -= 8; } else if (_c == QMetaObject::WriteProperty) { void *_v = _a[0]; switch (_id) { case 0: setSelectionFlags(*reinterpret_cast< int*>(_v)); break; case 1: setTrackerMode(*reinterpret_cast< DisplayMode*>(_v)); break; case 2: setTrackerFont(*reinterpret_cast< QFont*>(_v)); break; case 3: setRubberBand(*reinterpret_cast< RubberBand*>(_v)); break; case 4: setResizeMode(*reinterpret_cast< ResizeMode*>(_v)); break; case 5: setEnabled(*reinterpret_cast< bool*>(_v)); break; case 6: setTrackerPen(*reinterpret_cast< QPen*>(_v)); break; case 7: setRubberBandPen(*reinterpret_cast< QPen*>(_v)); break; } _id -= 8; } else if (_c == QMetaObject::ResetProperty) { _id -= 8; } else if (_c == QMetaObject::QueryPropertyDesignable) { _id -= 8; } else if (_c == QMetaObject::QueryPropertyScriptable) { _id -= 8; } else if (_c == QMetaObject::QueryPropertyStored) { _id -= 8; } else if (_c == QMetaObject::QueryPropertyEditable) { _id -= 8; } else if (_c == QMetaObject::QueryPropertyUser) { _id -= 8; } #endif // QT_NO_PROPERTIES return _id; }
void CustomPicker::widgetMouseMoveEvent(QMouseEvent *e) { if (!isActive()) { setSelectionFlags(QwtPicker::PointSelection); begin(); append(e->pos()); } QwtPlotPicker::widgetMouseMoveEvent(e); }
//! Init the zoomer, used by the constructors void QwtPlotZoomer::init(int selectionFlags, DisplayMode trackerMode) { d_data = new PrivateData; d_data->maxStackDepth = -1; setSelectionFlags(selectionFlags); setTrackerMode(trackerMode); setRubberBand(RectRubberBand); setZoomBase(scaleRect()); }
Zoomer(int xAxis, int yAxis, QwtPlotCanvas *canvas): QwtPlotZoomer(xAxis, yAxis, canvas) { setSelectionFlags(QwtPicker::DragSelection | QwtPicker::CornerToCorner); setTrackerMode(QwtPicker::AlwaysOff); setRubberBand(QwtPicker::NoRubberBand); // RightButton: zoom out by 1 // Ctrl+RightButton: zoom out to full size setMousePattern(QwtEventPattern::MouseSelect2, Qt::RightButton, Qt::ControlModifier); setMousePattern(QwtEventPattern::MouseSelect3, Qt::RightButton); }
CustomPicker::CustomPicker(int xAxis, int yAxis, QwtPlotCanvas *canvas) : QwtPlotPicker(xAxis, yAxis, 0, CrossRubberBand, AlwaysOn, canvas) { setSelectionFlags(QwtPicker::PointSelection); setRubberBand(QwtPicker::CrossRubberBand); canvas->setMouseTracking(true); }