CuteLogger
Fast and simple logging solution for Qt based applications
transcodedialog.h
1 /*
2  * Copyright (c) 2017-2024 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 TRANSCODEDIALOG_H
19 #define TRANSCODEDIALOG_H
20 
21 #include <QDialog>
22 
23 namespace Ui {
24 class TranscodeDialog;
25 }
26 
27 class TranscodeDialog : public QDialog
28 {
29  Q_OBJECT
30 
31 public:
32  explicit TranscodeDialog(const QString &message, bool isProgressive, QWidget *parent = nullptr);
33  ~TranscodeDialog();
34  int format() const
35  {
36  return m_format;
37  }
38  void showCheckBox();
39  bool isCheckBoxChecked() const
40  {
41  return m_isChecked;
42  }
43  bool deinterlace() const;
44  bool fpsOverride() const;
45  double fps() const;
46  QString frc() const;
47  bool get709Convert();
48  void set709Convert(bool enable);
49  QString sampleRate() const;
50  void showSubClipCheckBox();
51  bool isSubClip() const;
52  void setSubClipChecked(bool checked);
53  void setFrameRate(double fps);
54 
55 private slots:
56  void on_horizontalSlider_valueChanged(int position);
57 
58  void on_checkBox_clicked(bool checked);
59 
60  void on_advancedCheckBox_clicked(bool checked);
61 
62 private:
63  Ui::TranscodeDialog *ui;
64  int m_format;
65  bool m_isChecked;
66  bool m_isProgressive;
67 };
68 
69 #endif // TRANSCODEDIALOG_H