mirror of
https://github.com/fralx/LimeReport.git
synced 2025-10-03 12:04:05 +03:00
Image editor has been added
This commit is contained in:
70
limereport/items/lrimageitemeditor.cpp
Normal file
70
limereport/items/lrimageitemeditor.cpp
Normal file
@@ -0,0 +1,70 @@
|
||||
#include "lrimageitemeditor.h"
|
||||
#include "ui_lrimageitemeditor.h"
|
||||
#include "lrimageitem.h"
|
||||
|
||||
#include <QFileInfo>
|
||||
#include <QFileDialog>
|
||||
|
||||
ImageItemEditor::ImageItemEditor(LimeReport::ImageItem *item, QWidget *parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::ImageItemEditor), m_item(item)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
m_image = QPixmap::fromImage(m_item->image());
|
||||
ui->resourcePath->setText(m_item->resourcePath());
|
||||
updateImage();
|
||||
}
|
||||
|
||||
ImageItemEditor::~ImageItemEditor()
|
||||
{
|
||||
delete ui;
|
||||
}
|
||||
|
||||
void ImageItemEditor::updateImage()
|
||||
{
|
||||
ui->imageViewer->setPixmap(m_image);
|
||||
if (m_image.isNull() && !ui->resourcePath->text().isEmpty()){
|
||||
if (m_resourcePathImage.isNull())
|
||||
m_resourcePathImage = QPixmap(ui->resourcePath->text());
|
||||
ui->imageViewer->setPixmap(m_resourcePathImage);
|
||||
}
|
||||
}
|
||||
|
||||
void ImageItemEditor::on_tbLoadImage_clicked()
|
||||
{
|
||||
QString fileName = QFileDialog::getOpenFileName(this, tr("Select image file"));
|
||||
m_image = QPixmap(fileName);
|
||||
updateImage();
|
||||
}
|
||||
|
||||
void ImageItemEditor::on_tbClearImage_clicked()
|
||||
{
|
||||
m_image = QPixmap();
|
||||
updateImage();
|
||||
}
|
||||
|
||||
void ImageItemEditor::on_buttonBox_accepted()
|
||||
{
|
||||
m_item->setImage(m_image.toImage());
|
||||
m_item->setResourcePath(ui->resourcePath->text());
|
||||
this->close();
|
||||
}
|
||||
|
||||
void ImageItemEditor::on_buttonBox_rejected()
|
||||
{
|
||||
this->close();
|
||||
}
|
||||
|
||||
void ImageItemEditor::on_toolButton_clicked()
|
||||
{
|
||||
ui->resourcePath->setText(QFileDialog::getOpenFileName(this, tr("Select image file")));
|
||||
m_resourcePathImage = QPixmap(ui->resourcePath->text());
|
||||
if (!m_resourcePathImage.isNull() && m_image.isNull())
|
||||
ui->imageViewer->setPixmap(m_resourcePathImage);
|
||||
}
|
||||
|
||||
void ImageItemEditor::on_tbResourcePath_clicked()
|
||||
{
|
||||
ui->resourcePath->setText("");
|
||||
updateImage();
|
||||
}
|
Reference in New Issue
Block a user