0
0
mirror of https://github.com/fralx/LimeReport.git synced 2024-12-23 16:22:58 +03:00
LimeReport/limereport/lrgraphicsviewzoom.h

31 lines
721 B
C
Raw Normal View History

2017-09-27 13:04:56 +03:00
#ifndef LRGRAPHICSVIEWZOOM_H
#define LRGRAPHICSVIEWZOOM_H
#include <QGraphicsView>
#include <QObject>
namespace LimeReport {
class GraphicsViewZoomer: public QObject {
Q_OBJECT
public:
GraphicsViewZoomer(QGraphicsView* view);
void gentleZoom(double factor);
void setModifiers(Qt::KeyboardModifiers modifiers);
void setZoomFactorBase(double value);
void setView(QGraphicsView* view);
private:
QGraphicsView* m_view;
Qt::KeyboardModifiers m_modifiers;
double m_zoomFactorBase;
QPointF m_targetScenePos, m_targetViewportPos;
bool eventFilter(QObject* object, QEvent* event);
signals:
void zoomed(double factor);
};
} // namespace LimeReport
#endif // GRAPHICSVIEWZOOM_H