This repository has been archived on 2020-09-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
libs/qad/widgets/image_view.h

47 lines
931 B
C++

#ifndef IMAGE_VIEW_H
#define IMAGE_VIEW_H
#include <QGraphicsView>
#include <QGraphicsPixmapItem>
class ImageView: public QGraphicsView
{
Q_OBJECT
Q_PROPERTY(QPixmap pixmap READ pixmap WRITE setPixmap)
public:
ImageView(QWidget * parent = 0);
~ImageView();
void setImage(const QImage & i);
void setImage(const QByteArray & i);
QByteArray image() const {return im_data;}
QPixmap pixmap() const;
void clear();
private:
void mouseDoubleClickEvent(QMouseEvent * e);
void mousePressEvent(QMouseEvent * e);
void mouseMoveEvent(QMouseEvent * e);
void wheelEvent(QWheelEvent * e);
bool eventFilter(QObject * o, QEvent * e);
void adjustView();
QGraphicsPixmapItem item;
QByteArray im_data;
QPoint prev_pos;
bool autofit_;
public slots:
void autofit();
void setPixmap(QPixmap pixmap);
signals:
void clicked(QPointF, Qt::MouseButtons);
};
#endif // IMAGE_VIEW_H