diff --git a/cimageviewer.cpp b/cimageviewer.cpp new file mode 100644 index 0000000..6d25f47 --- /dev/null +++ b/cimageviewer.cpp @@ -0,0 +1,21 @@ +#include "cimageviewer.h" +#include "ui_cimageviewer.h" + + +cImageViewer::cImageViewer(QWidget *parent) : + QDialog(parent), + ui(new Ui::cImageViewer) +{ + ui->setupUi(this); + ui->m_lpImage->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored); +} + +cImageViewer::~cImageViewer() +{ + delete ui; +} + +void cImageViewer::setImage(cImage* lpImage) +{ + ui->m_lpImage->setImage(lpImage); +} diff --git a/cimageviewer.h b/cimageviewer.h new file mode 100644 index 0000000..f92061a --- /dev/null +++ b/cimageviewer.h @@ -0,0 +1,27 @@ +#ifndef CIMAGEVIEWER_H +#define CIMAGEVIEWER_H + + +#include "cimage.h" + +#include + + +namespace Ui { +class cImageViewer; +} + +class cImageViewer : public QDialog +{ + Q_OBJECT + +public: + explicit cImageViewer(QWidget *parent = nullptr); + ~cImageViewer(); + + void setImage(cImage* lpImage); +private: + Ui::cImageViewer* ui; +}; + +#endif // CIMAGEVIEWER_H diff --git a/cimageviewer.ui b/cimageviewer.ui new file mode 100644 index 0000000..9f4fbff --- /dev/null +++ b/cimageviewer.ui @@ -0,0 +1,62 @@ + + + cImageViewer + + + + 0 + 0 + 400 + 300 + + + + Dialog + + + + + + true + + + + + 0 + 0 + 380 + 280 + + + + + + + + 20 + + + + loading... + + + Qt::AlignCenter + + + + + + + + + + + + cLabel + QLabel +
clabel.h
+
+
+ + +
diff --git a/clabel.cpp b/clabel.cpp new file mode 100644 index 0000000..3959e19 --- /dev/null +++ b/clabel.cpp @@ -0,0 +1,25 @@ +#include "clabel.h" + +#include + + +cLabel::cLabel(QWidget *parent, Qt::WindowFlags f) : + QLabel(parent, f) +{ +} + +cLabel::cLabel(const QString &text, QWidget *parent, Qt::WindowFlags f) : + QLabel(text, parent, f) +{ +} + +void cLabel::setImage(cImage* lpImage) +{ + m_lpImage = lpImage; +} + +void cLabel::resizeEvent(QResizeEvent* e) +{ + QLabel::resizeEvent(e); + setPixmap(QPixmap::fromImage(m_lpImage->scaled(width(), height(), Qt::AspectRatioMode::KeepAspectRatio, Qt::TransformationMode::SmoothTransformation))); +} diff --git a/clabel.h b/clabel.h new file mode 100644 index 0000000..b608b86 --- /dev/null +++ b/clabel.h @@ -0,0 +1,24 @@ +#ifndef CLABEL_H +#define CLABEL_H + + +#include + +#include "cimage.h" + + +class cLabel : public QLabel +{ +public: + cLabel(QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags()); + cLabel(const QString &text, QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags()); + + void setImage(cImage* lpImage); +private: + cImage* m_lpImage; + +protected: + void resizeEvent(QResizeEvent* e); +}; + +#endif // CLABEL_H