Files
@ 1d12f68d4882
Branch filter:
Location: tempo-plotter/scalepicker.h - annotation
1d12f68d4882
1.8 KiB
text/plain
change color of the scale picker according to background
19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 1d12f68d4882 19375fc29267 07202c91eec0 19375fc29267 19375fc29267 19375fc29267 19375fc29267 6c305182bff3 19375fc29267 07202c91eec0 19375fc29267 19375fc29267 07202c91eec0 1d12f68d4882 07202c91eec0 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 19375fc29267 07202c91eec0 1d12f68d4882 19375fc29267 6c305182bff3 19375fc29267 6c305182bff3 6c305182bff3 07202c91eec0 1d12f68d4882 1d12f68d4882 1d12f68d4882 19375fc29267 19375fc29267 19375fc29267 | /*
Copyright © 2015 Hasan Yavuz Özderya
This file is part of serialplot.
serialplot is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
serialplot is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with serialplot. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef SCALEPICKER_H
#define SCALEPICKER_H
#include <QObject>
#include <QMouseEvent>
#include <QPen>
#include <qwt_scale_widget.h>
#include <qwt_widget_overlay.h>
class ScalePicker : public QObject
{
Q_OBJECT
public:
ScalePicker(QwtScaleWidget* scaleWidget, QWidget* canvas);
virtual bool eventFilter(QObject*, QEvent*);
void drawOverlay(QPainter*); // called from ScalePickerOverlay
void setPen(QPen pen);
signals:
void pickStarted(double pos);
void picking(double firstPos, double lastPos);
void picked(double firstPos, double lastPos);
private:
QwtScaleWidget* _scaleWidget;
QwtWidgetOverlay* pickerOverlay; // ScalePickerOverlay
QPen _pen;
bool pressed;
bool started;
double firstPos; // converted to plot coordinates
double firstPosPx; // pixel coordinates
double currentPosPx; // current position in pixel coordinates
double position(QMouseEvent*); // returns the axis mouse position relative to plot coordinates
double positionPx(QMouseEvent*); // returns the axis mouse position in pixels
};
#endif // SCALEPICKER_H
|