22 #include <QMouseEvent> 29 :QWidget(parent), m_offset(0,0), m_last_rect(0,0,0,0),
30 m_image(), m_fit_width(fit_width), m_fit_height(fit_height),
31 m_scale_x(1.0), m_scale_y(1.0)
33 setCursor(Qt::CrossCursor);
34 setMouseTracking(
true);
54 if ((x > width()) || (x < 0))
return;
55 if ((y > height()) || (y < 0))
return;
62 (static_cast<double>(x) /
m_scale_x) : 0);
64 (static_cast<double>(y) /
m_scale_y) : 0);
113 QPixmap newmap = QPixmap::fromImage(
m_image,
114 Qt::ColorOnly | Qt::ThresholdDither | Qt::AvoidDither);
117 static_cast<double>(
m_image.width()) : 1.0;
119 static_cast<double>(
m_image.height()) : 1.0;
125 m_scale_y *
m_image.height() - height()));
128 QPixmap pixmap = newmap.transformed(matrix);
void sigCursorPos(const QPoint pos)
virtual ~ImageView() Q_DECL_OVERRIDE
void setHorizOffset(int offset)
ImageView(QWidget *parent=Q_NULLPTR, bool fit_width=true, bool fit_height=true)
virtual void mouseMoveEvent(QMouseEvent *e) Q_DECL_OVERRIDE
virtual void mousePressEvent(QMouseEvent *e) Q_DECL_OVERRIDE
virtual void paintEvent(QPaintEvent *) Q_DECL_OVERRIDE
void setVertOffset(int offset)
void setImage(QImage image)