LimeReport/limereport/lrgraphicsviewzoom.h
2016-06-10 19:05:18 +04:00

30 lines
693 B
C++

#ifndef GRAPHICSVIEWZOOM_H
#define GRAPHICSVIEWZOOM_H
#include <QObject>
#include <QGraphicsView>
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