forked from FLAME-HPC/flame_visualiser
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathimagesdialog.cpp
88 lines (73 loc) · 2.15 KB
/
imagesdialog.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*!
* \file imagesdialog.cpp
* \author Simon Coakley
* \date 2012
* \copyright Copyright (c) 2012 University of Sheffield
* \brief Implementation of images dialog
*/
#include <QDebug>
#include <QFileDialog>
#include "./imagesdialog.h"
#include "./ui_imagesdialog.h"
ImagesDialog::ImagesDialog(QWidget *parent)
: QDialog(parent), ui(new Ui::ImagesDialog) {
ui->setupUi(this);
ui->plainTextEdit->appendPlainText("Images saved with be listed here...");
connect(ui->checkBox, SIGNAL(clicked(bool)),
this, SLOT(takeAnimationSlot(bool)));
connect(ui->lineEdit, SIGNAL(textChanged(QString)),
this, SIGNAL(updateImagesLocation(QString)));
}
ImagesDialog::~ImagesDialog() {
delete ui;
}
void ImagesDialog::closeEvent(QCloseEvent *event) {
emit(takeAnimationSignal(false));
emit(image_dialog_closed());
QDialog::closeEvent(event);
}
void ImagesDialog::on_pushButton_Close_clicked() {
close();
}
void ImagesDialog::sendImageAniUpdate() {
emit(takeAnimationSignal(ui->checkBox->isChecked()));
}
void ImagesDialog::setLocation(QString l) {
ui->lineEdit->setText(l);
}
void ImagesDialog::on_pushButton_Snapshot_clicked() {
emit(take_snapshot());
}
void ImagesDialog::keyPressEvent(QKeyEvent* event) {
switch (event->key()) {
case Qt::Key_Escape:
close();
break;
default:
event->ignore();
break;
}
}
void ImagesDialog::imageStatus(QString s) {
ui->plainTextEdit->appendPlainText(s);
}
void ImagesDialog::takeAnimationSlot(bool b) {
emit(takeAnimationSignal(b));
}
void ImagesDialog::on_pushButton_Find_clicked() {
QString s;
s.append(*configpath);
s.append("/");
s.append(ui->lineEdit->text());
/* Provide dialog to select folder */
QString filepath = QFileDialog::getExistingDirectory(this,
tr("Open images location"), s, QFileDialog::ShowDirsOnly);
if (filepath.isEmpty())
return;
/* Return relative path from currentPath to location */
QDir dir(*configpath);
s = dir.canonicalPath();
QDir dir2(s);
s = dir2.relativeFilePath(filepath);
ui->lineEdit->setText(s);
}