2021-11-25 10:20:56 +01:00
|
|
|
#include "qt_filefield.hpp"
|
|
|
|
|
#include "ui_qt_filefield.h"
|
|
|
|
|
|
|
|
|
|
#include <QFileDialog>
|
|
|
|
|
|
|
|
|
|
FileField::FileField(QWidget *parent) :
|
|
|
|
|
QWidget(parent),
|
|
|
|
|
ui(new Ui::FileField)
|
|
|
|
|
{
|
|
|
|
|
ui->setupUi(this);
|
2022-02-03 23:00:39 +06:00
|
|
|
|
|
|
|
|
connect(ui->label, &QLineEdit::editingFinished, this, [this] () { emit fileSelected(ui->label->text()); });
|
2021-11-25 10:20:56 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FileField::~FileField()
|
|
|
|
|
{
|
|
|
|
|
delete ui;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FileField::setFileName(const QString &fileName) {
|
|
|
|
|
fileName_ = fileName;
|
|
|
|
|
ui->label->setText(fileName);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FileField::on_pushButton_clicked() {
|
|
|
|
|
QString fileName;
|
|
|
|
|
if (createFile_) {
|
2022-01-07 01:58:18 +06:00
|
|
|
fileName = QFileDialog::getSaveFileName(this, QString(), QString(), filter_, &selectedFilter_);
|
2021-11-25 10:20:56 +01:00
|
|
|
} else {
|
2022-01-07 01:58:18 +06:00
|
|
|
fileName = QFileDialog::getOpenFileName(this, QString(), QString(), filter_, &selectedFilter_);
|
2021-11-25 10:20:56 +01:00
|
|
|
}
|
|
|
|
|
|
2022-02-05 01:35:26 +06:00
|
|
|
if (!fileName.isNull()) {
|
|
|
|
|
fileName_ = fileName;
|
|
|
|
|
ui->label->setText(fileName);
|
|
|
|
|
emit fileSelected(fileName);
|
|
|
|
|
}
|
2021-11-25 10:20:56 +01:00
|
|
|
}
|