LMMS
Loading...
Searching...
No Matches
ExportProjectDialog.h
Go to the documentation of this file.
1/*
2 * ExportProjectDialog.h - declaration of class ExportProjectDialog which is
3 * responsible for exporting project
4 *
5 * Copyright (c) 2004-2012 Tobias Doerffel <tobydox/at/users.sourceforge.net>
6 *
7 * This file is part of LMMS - https://lmms.io
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public
11 * License as published by the Free Software Foundation; either
12 * version 2 of the License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public
20 * License along with this program (see COPYING); if not, write to the
21 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22 * Boston, MA 02110-1301 USA.
23 *
24 */
25
26#ifndef LMMS_GUI_EXPORT_PROJECT_DIALOG_H
27#define LMMS_GUI_EXPORT_PROJECT_DIALOG_H
28
29#include <QDialog>
30
31#include "RenderManager.h"
32
33class QString;
34class QLabel;
35class QProgressBar;
36class QCheckBox;
37class QComboBox;
38class QSpinBox;
39class QFormLayout;
40class QGroupBox;
41
42namespace lmms::gui {
43
44class ExportProjectDialog : public QDialog
45{
46public:
47 enum class Mode
48 {
51 };
52
53 ExportProjectDialog(const QString& path, Mode mode, QWidget* parent = nullptr);
54
55private:
56 void accept() override;
57 void reject() override;
58 void onFileFormatChanged(int index);
60 void updateTitleBar(int prog);
61
62 QLabel* m_fileFormatLabel = nullptr;
63 QComboBox* m_fileFormatComboBox = nullptr;
64
65 QLabel* m_sampleRateLabel = nullptr;
66 QComboBox* m_sampleRateComboBox = nullptr;
67
68 QLabel* m_bitRateLabel = nullptr;
69 QComboBox* m_bitRateComboBox = nullptr;
70
71 QLabel* m_bitDepthLabel = nullptr;
72 QComboBox* m_bitDepthComboBox = nullptr;
73
74 QLabel* m_stereoModeLabel = nullptr;
75 QComboBox* m_stereoModeComboBox = nullptr;
76
77 QLabel* m_compressionLevelLabel = nullptr;
78 QComboBox* m_compressionLevelComboBox = nullptr;
79
80 QGroupBox* m_fileFormatSettingsGroupBox = nullptr;
81 QFormLayout* m_fileFormatSettingsLayout = nullptr;
82
83 QCheckBox* m_exportAsLoopBox = nullptr;
84 QCheckBox* m_exportBetweenLoopMarkersBox = nullptr;
85 QLabel* m_loopRepeatLabel = nullptr;
86 QSpinBox* m_loopRepeatBox = nullptr;
87 QPushButton* m_startButton = nullptr;
88 QPushButton* m_cancelButton = nullptr;
89 QProgressBar* m_progressBar = nullptr;
90
91 QString m_path;
93 std::unique_ptr<RenderManager> m_renderManager;
94};
95
96} // namespace lmms::gui
97
98#endif // LMMS_GUI_EXPORT_PROJECT_DIALOG_H
Mode
Definition ExportProjectDialog.h:48
@ ExportProject
Definition ExportProjectDialog.h:49
@ ExportTracks
Definition ExportProjectDialog.h:50
QLabel * m_loopRepeatLabel
Definition ExportProjectDialog.h:85
QLabel * m_compressionLevelLabel
Definition ExportProjectDialog.h:77
QProgressBar * m_progressBar
Definition ExportProjectDialog.h:89
QLabel * m_fileFormatLabel
Definition ExportProjectDialog.h:62
QCheckBox * m_exportBetweenLoopMarkersBox
Definition ExportProjectDialog.h:84
ExportProjectDialog(const QString &path, Mode mode, QWidget *parent=nullptr)
Definition ExportProjectDialog.cpp:54
void updateTitleBar(int prog)
Definition ExportProjectDialog.cpp:291
QLabel * m_bitDepthLabel
Definition ExportProjectDialog.h:71
void accept() override
Definition ExportProjectDialog.cpp:278
QPushButton * m_startButton
Definition ExportProjectDialog.h:87
QFormLayout * m_fileFormatSettingsLayout
Definition ExportProjectDialog.h:81
std::unique_ptr< RenderManager > m_renderManager
Definition ExportProjectDialog.h:93
void onStartButtonClicked()
Definition ExportProjectDialog.cpp:244
void reject() override
Definition ExportProjectDialog.cpp:284
QComboBox * m_fileFormatComboBox
Definition ExportProjectDialog.h:63
QLabel * m_stereoModeLabel
Definition ExportProjectDialog.h:74
QComboBox * m_stereoModeComboBox
Definition ExportProjectDialog.h:75
QComboBox * m_bitDepthComboBox
Definition ExportProjectDialog.h:72
QComboBox * m_sampleRateComboBox
Definition ExportProjectDialog.h:66
QLabel * m_sampleRateLabel
Definition ExportProjectDialog.h:65
QLabel * m_bitRateLabel
Definition ExportProjectDialog.h:68
QPushButton * m_cancelButton
Definition ExportProjectDialog.h:88
QGroupBox * m_fileFormatSettingsGroupBox
Definition ExportProjectDialog.h:80
QCheckBox * m_exportAsLoopBox
Definition ExportProjectDialog.h:83
void onFileFormatChanged(int index)
Definition ExportProjectDialog.cpp:203
QString m_path
Definition ExportProjectDialog.h:91
Mode m_mode
Definition ExportProjectDialog.h:92
QComboBox * m_bitRateComboBox
Definition ExportProjectDialog.h:69
QSpinBox * m_loopRepeatBox
Definition ExportProjectDialog.h:86
QComboBox * m_compressionLevelComboBox
Definition ExportProjectDialog.h:78
static uintptr_t parent
Definition pugl.h:1644
Definition AudioPortAudio.cpp:223
png_structrp int mode
Definition png.h:1139