Olive
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
newsequencedialog.h
Go to the documentation of this file.
1 /***
2 
3  Olive - Non-Linear Video Editor
4  Copyright (C) 2019 Olive Team
5 
6  This program is free software: you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18 
19 ***/
20 
21 #ifndef NEWSEQUENCEDIALOG_H
22 #define NEWSEQUENCEDIALOG_H
23 
24 #include <QDialog>
25 #include <QComboBox>
26 #include <QSpinBox>
27 #include <QLineEdit>
28 
29 #include "panels/project.h"
30 #include "project/media.h"
31 #include "timeline/sequence.h"
32 
38 class NewSequenceDialog : public QDialog
39 {
40  Q_OBJECT
41 public:
59  explicit NewSequenceDialog(QWidget *parent = nullptr, Media* existing = nullptr, Sequence* iexisting_sequence = nullptr);
60 
74  void set_sequence_name(const QString& s);
75 
85  void SetNameEditable(bool enabled);
86 
87 private slots:
91  virtual void accept() override;
92 
102  void preset_changed(int index);
103 
104 private:
109 
114 
118  void setup_ui();
119 
123  QComboBox* preset_combobox;
124 
128  QSpinBox* height_numeric;
129 
133  QSpinBox* width_numeric;
134 
138  QComboBox* par_combobox;
139 
144 
149 
154 
161 
165  QLineEdit* sequence_name_edit;
166 };
167 
168 #endif // NEWSEQUENCEDIALOG_H
NewSequenceDialog(QWidget *parent=nullptr, Media *existing=nullptr, Sequence *iexisting_sequence=nullptr)
NewSequenceDialog constructor.
Definition: newsequencedialog.cpp:48
QComboBox * frame_rate_combobox
ComboBox to set the frame rate.
Definition: newsequencedialog.h:148
QSpinBox * height_numeric
SpinBox to set the Sequence height.
Definition: newsequencedialog.h:128
QLineEdit * sequence_name_edit
Line edit to set the Sequence&#39;s name.
Definition: newsequencedialog.h:165
void setup_ui()
Internal function to create the dialog&#39;s UI.
Definition: newsequencedialog.cpp:201
The NewSequenceDialog class.
Definition: newsequencedialog.h:38
Sequence * existing_sequence
Internal reference to an existing Sequence (if one was provided to the constructor) ...
Definition: newsequencedialog.h:113
void set_sequence_name(const QString &s)
Set the name for the new Sequence.
Definition: newsequencedialog.cpp:86
void SetNameEditable(bool enabled)
Set whether the Sequence&#39;s name can be edited.
Definition: newsequencedialog.cpp:90
QComboBox * preset_combobox
ComboBox to set the preset.
Definition: newsequencedialog.h:123
Media * existing_item
Internal reference to an existing Media wrapper (if one was provided to the constructor) ...
Definition: newsequencedialog.h:108
QSpinBox * width_numeric
SpinBox to set the Sequence width.
Definition: newsequencedialog.h:133
Definition: media.h:45
virtual void accept() override
Override accept function to create/edit a Sequence.
Definition: newsequencedialog.cpp:96
QLabel * sequence_name_label
Label marker for setting the Sequence&#39;s name.
Definition: newsequencedialog.h:160
QComboBox * par_combobox
ComboBox to set the pixel aspect ratio.
Definition: newsequencedialog.h:138
QComboBox * audio_frequency_combobox
ComboBox to set the audio frequence.
Definition: newsequencedialog.h:153
Definition: sequence.h:31
QComboBox * interlacing_combobox
ComboBox to set the interlacing mode.
Definition: newsequencedialog.h:143
void preset_changed(int index)
Slot when the user changes the preset.
Definition: newsequencedialog.cpp:156