many changes, mostly to export

This commit is contained in:
itsmattkc
2018-06-06 03:30:22 -07:00
parent 81bf111037
commit 0ea7c43e53
26 changed files with 404 additions and 206 deletions
+23 -1
View File
@@ -302,6 +302,16 @@ void ExportDialog::on_pushButton_2_clicked()
close();
}
void ExportDialog::render_thread_finished() {
prep_ui_for_render(false);
}
void ExportDialog::prep_ui_for_render(bool rendering) {
ui->pushButton->setEnabled(!rendering);
ui->pushButton_2->setEnabled(!rendering);
ui->renderCancel->setEnabled(rendering);
}
void ExportDialog::on_pushButton_clicked()
{
QString ext;
@@ -399,15 +409,20 @@ void ExportDialog::on_pushButton_clicked()
}
QString filename = QFileDialog::getSaveFileName(this, "Export Media", "", format_strings[ui->formatCombobox->currentIndex()] + " (*." + ext + ")");
if (!filename.isEmpty()) {
ExportThread* et = new ExportThread();
et = new ExportThread();
et->surface.create();
connect(et, SIGNAL(finished()), et, SLOT(deleteLater()));
connect(et, SIGNAL(finished()), this, SLOT(render_thread_finished()));
connect(et, SIGNAL(progress_changed(int)), this, SLOT(update_progress_bar(int)));
panel_viewer->viewer_widget->enable_paint = false;
panel_viewer->viewer_widget->context()->doneCurrent();
panel_viewer->viewer_widget->context()->moveToThread(et);
panel_viewer->viewer_widget->force_audio = true;
prep_ui_for_render(true);
et->filename = filename;
et->video_enabled = ui->videoGroupbox->isChecked();
@@ -421,6 +436,8 @@ void ExportDialog::on_pushButton_clicked()
et->audio_sampling_rate = 48000;
et->audio_bitrate = ui->audiobitrateSpinbox->value();
et->ed = this;
et->start();
}
}
@@ -435,3 +452,8 @@ void ExportDialog::set_defaults(Sequence* s) {
void ExportDialog::update_progress_bar(int value) {
ui->progressBar->setValue(value);
}
void ExportDialog::on_renderCancel_clicked()
{
et->fail = true;
}
+8
View File
@@ -8,6 +8,7 @@ class ExportDialog;
}
struct Sequence;
class ExportThread;
class ExportDialog : public QDialog
{
@@ -27,12 +28,19 @@ private slots:
void update_progress_bar(int value);
void on_renderCancel_clicked();
void render_thread_finished();
private:
Ui::ExportDialog *ui;
QVector<QString> format_strings;
QVector<int> format_vcodecs;
QVector<int> format_acodecs;
ExportThread* et;
void prep_ui_for_render(bool rendering);
};
#endif // EXPORTDIALOG_H
+28 -8
View File
@@ -172,14 +172,34 @@
</widget>
</item>
<item>
<widget class="QProgressBar" name="progressBar">
<property name="enabled">
<bool>false</bool>
</property>
<property name="value">
<number>0</number>
</property>
</widget>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<widget class="QProgressBar" name="progressBar">
<property name="enabled">
<bool>false</bool>
</property>
<property name="value">
<number>0</number>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="renderCancel">
<property name="enabled">
<bool>false</bool>
</property>
<property name="maximumSize">
<size>
<width>20</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>x</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">