forked from GustavoKatel/ImageMorph
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmainwindow.h
126 lines (83 loc) · 2.58 KB
/
mainwindow.h
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include "imagewrapper.h"
#include "imagehighlight.h"
#include <QMainWindow>
#include <QLabel>
#include <QProgressBar>
#include <QTimer>
#include <QDir>
#include <QFile>
#include <QtConcurrent/QtConcurrent>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
public slots:
void slot_clear_all(QAction *action=0);
void slot_imager_redraw();
void slot_image1_newSegment(QPair<QPointF, QPointF> &segment);
void slot_image2_newSegment(QPair<QPointF, QPointF> &segment);
void slot_image1_update();
void slot_image2_update();
void slot_play_timer_timeout();
private slots:
void on_image1_load_button_clicked();
void on_image2_load_button_clicked();
void on_image1_clearSeg_button_clicked();
void on_image2_clearSeg_button_clicked();
void on_actionAbout_Qt_triggered();
void on_actionAbout_triggered();
void on_a_value_spin_editingFinished();
void on_b_value_spin_editingFinished();
void on_p_value_spin_editingFinished();
void slot_progress(int progress, int total);
void on_image1_save_button_clicked();
void on_image2_save_button_clicked();
void on_image_weight_slider_sliderReleased();
void on_image2_morph_check_toggled(bool checked);
void on_image1_morph_check_toggled(bool checked);
void on_play_button_clicked();
void on_stop_button_clicked();
void on_record_button_toggled(bool checked);
void on_repeat_button_toggled(bool checked);
void on_duration_spin_editingFinished();
void on_trasitions_spin_editingFinished();
void on_outside_color_button_clicked();
void on_image1_segments_edit_button_clicked();
void on_image2_segments_edit_button_clicked();
void on_actionSave_result_triggered();
private:
Ui::MainWindow *ui;
//
QProgressBar *progress;
//
ImageWrapper *image1, *image2, *imager, *image1t2, *image2t1;
ImageHighlight *image1_widget, *image2_widget;
bool image1_ready, image2_ready;
QColor outside_color;
QTimer *play_timer;
bool isRecording, isRepeating;
QDir rec_temp_dir;
QFile *rec_output;
int recordCount;
int fps;
virtual void resizeEvent(QResizeEvent *event);
QFuture<void> _dm;
void doMorph();
void _doMorph();
void updateImage1Segments();
void updateImage2Segments();
void play();
void stop();
void record_tick();
void record_finish();
void doFPS();
void doFFMPEG();
};
#endif // MAINWINDOW_H