CuteLogger
Fast and simple logging solution for Qt based applications
imageproducerwidget.h
1/*
2 * Copyright (c) 2012-2021 Meltytech, LLC
3 *
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#ifndef IMAGEPRODUCERWIDGET_H
19#define IMAGEPRODUCERWIDGET_H
20
21#include <QWidget>
22#include "abstractproducerwidget.h"
23#include "mltcontroller.h"
24
25namespace Ui {
26class ImageProducerWidget;
27}
28
29class ImageProducerWidget : public QWidget, public AbstractProducerWidget
30{
31 Q_OBJECT
32
33public:
34 explicit ImageProducerWidget(QWidget *parent = 0);
35 ~ImageProducerWidget();
36
37 // AbstractProducerWidget overrides
38 Mlt::Producer *newProducer(Mlt::Profile &);
39 virtual void setProducer(Mlt::Producer *);
40
41signals:
42 void producerChanged(Mlt::Producer *);
43 void producerReopened(bool play);
44 void modified();
45
46public slots:
47 void updateDuration();
48 void rename();
49
50private slots:
51 void on_resetButton_clicked();
52
53 void on_aspectNumSpinBox_valueChanged(int );
54
55 void on_aspectDenSpinBox_valueChanged(int );
56
57 void on_durationSpinBox_editingFinished();
58
59 void on_sequenceCheckBox_clicked(bool checked);
60
61 void on_repeatSpinBox_editingFinished();
62
63 void on_defaultDurationButton_clicked();
64
65 void on_notesTextEdit_textChanged();
66
67 void on_menuButton_clicked();
68
69 void on_actionCopyFullFilePath_triggered();
70
71 void on_actionOpenFolder_triggered();
72
73 void on_actionSetFileDate_triggered();
74
75 void on_filenameLabel_editingFinished();
76
77 void on_actionDisableProxy_triggered(bool checked);
78
79 void on_actionMakeProxy_triggered();
80
81 void on_actionDeleteProxy_triggered();
82
83 void on_actionCopyHashCode_triggered();
84
85 void on_proxyButton_clicked();
86
87private:
88 Ui::ImageProducerWidget *ui;
89 int m_defaultDuration;
90
91 void reopen(Mlt::Producer *p);
92 void recreateProducer();
93};
94
95#endif // IMAGEPRODUCERWIDGET_H