Allow render without saving. (#360)
This commit is contained in:
parent
044b5f0c3e
commit
3054519170
8 changed files with 49 additions and 10 deletions
|
@ -13,6 +13,7 @@
|
||||||
<item>MI_SaveLevelAs</item>
|
<item>MI_SaveLevelAs</item>
|
||||||
<separator/>
|
<separator/>
|
||||||
<item>MI_Render</item>
|
<item>MI_Render</item>
|
||||||
|
<item>MI_SaveAndRender</item>
|
||||||
<separator/>
|
<separator/>
|
||||||
<item>MI_ShortcutPopup</item>
|
<item>MI_ShortcutPopup</item>
|
||||||
<separator/>
|
<separator/>
|
||||||
|
|
|
@ -245,6 +245,7 @@
|
||||||
<separator/>
|
<separator/>
|
||||||
<command>MI_OutputSettings</command>
|
<command>MI_OutputSettings</command>
|
||||||
<command>MI_Render</command>
|
<command>MI_Render</command>
|
||||||
|
<command>MI_SaveAndRender</command>
|
||||||
<separator/>
|
<separator/>
|
||||||
<command>MI_FastRender</command>
|
<command>MI_FastRender</command>
|
||||||
</menu>
|
</menu>
|
||||||
|
|
|
@ -1811,7 +1811,12 @@ void MainWindow::defineActions() {
|
||||||
tr("Control the settings that will be used to preview the scene."));
|
tr("Control the settings that will be used to preview the scene."));
|
||||||
menuAct->setIcon(createQIcon("preview_settings"));
|
menuAct->setIcon(createQIcon("preview_settings"));
|
||||||
menuAct = createMenuRenderAction(
|
menuAct = createMenuRenderAction(
|
||||||
MI_Render, tr("&Save and Render"), "Ctrl+Shift+R",
|
MI_Render, tr("&Render"), "Ctrl+Shift+R",
|
||||||
|
tr("Renders according to the settings and "
|
||||||
|
"location set in Output Settings."));
|
||||||
|
menuAct->setIcon(createQIcon("render"));
|
||||||
|
menuAct = createMenuRenderAction(
|
||||||
|
MI_SaveAndRender, tr("&Save and Render"), "",
|
||||||
tr("Saves the current scene and renders according to the settings and "
|
tr("Saves the current scene and renders according to the settings and "
|
||||||
"location set in Output Settings."));
|
"location set in Output Settings."));
|
||||||
menuAct->setIcon(createQIcon("render"));
|
menuAct->setIcon(createQIcon("render"));
|
||||||
|
|
|
@ -622,7 +622,7 @@ QMenuBar *StackedMenuBar::createFullMenuBar() {
|
||||||
addMenuItem(renderMenu, MI_SavePreviewedFrames);
|
addMenuItem(renderMenu, MI_SavePreviewedFrames);
|
||||||
renderMenu->addSeparator();
|
renderMenu->addSeparator();
|
||||||
addMenuItem(renderMenu, MI_OutputSettings);
|
addMenuItem(renderMenu, MI_OutputSettings);
|
||||||
addMenuItem(renderMenu, MI_Render);
|
addMenuItem(renderMenu, MI_SaveAndRender);
|
||||||
renderMenu->addSeparator();
|
renderMenu->addSeparator();
|
||||||
addMenuItem(renderMenu, MI_FastRender);
|
addMenuItem(renderMenu, MI_FastRender);
|
||||||
|
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
#define MI_OutputSettings "MI_OutputSettings"
|
#define MI_OutputSettings "MI_OutputSettings"
|
||||||
#define MI_PreviewSettings "MI_PreviewSettings"
|
#define MI_PreviewSettings "MI_PreviewSettings"
|
||||||
#define MI_Render "MI_Render"
|
#define MI_Render "MI_Render"
|
||||||
|
#define MI_SaveAndRender "MI_SaveAndRender"
|
||||||
#define MI_FastRender "MI_FastRender"
|
#define MI_FastRender "MI_FastRender"
|
||||||
#define MI_Preview "MI_Preview"
|
#define MI_Preview "MI_Preview"
|
||||||
#define MI_SoundTrack "MI_SoundTrack"
|
#define MI_SoundTrack "MI_SoundTrack"
|
||||||
|
|
|
@ -222,14 +222,20 @@ OutputSettingsPopup::OutputSettingsPopup(bool isPreview)
|
||||||
QPushButton *removePresetButton = NULL;
|
QPushButton *removePresetButton = NULL;
|
||||||
|
|
||||||
m_dominantFieldOm = 0;
|
m_dominantFieldOm = 0;
|
||||||
m_renderButton = new QPushButton(tr("Save and Render"), this);
|
m_renderButton = new QPushButton(tr("Render"), this);
|
||||||
if (isPreview) m_renderButton->setText("Preview");
|
m_saveAndRenderButton = new QPushButton(tr("Save and Render"), this);
|
||||||
|
if (isPreview) {
|
||||||
|
m_renderButton->setText("Preview");
|
||||||
|
m_saveAndRenderButton->hide();
|
||||||
|
}
|
||||||
if (!isPreview) {
|
if (!isPreview) {
|
||||||
showOtherSettingsButton = new QPushButton("", this);
|
showOtherSettingsButton = new QPushButton("", this);
|
||||||
otherSettingsLabel = new QLabel(tr("Other Settings"), this);
|
otherSettingsLabel = new QLabel(tr("Other Settings"), this);
|
||||||
otherSettingsFrame = new QFrame(this);
|
otherSettingsFrame = new QFrame(this);
|
||||||
m_renderButton->setIcon(createQIcon("render"));
|
m_renderButton->setIcon(createQIcon("render"));
|
||||||
m_renderButton->setIconSize(QSize(20, 20));
|
m_renderButton->setIconSize(QSize(20, 20));
|
||||||
|
m_saveAndRenderButton->setIcon(createQIcon("render"));
|
||||||
|
m_saveAndRenderButton->setIconSize(QSize(20, 20));
|
||||||
|
|
||||||
// Board
|
// Board
|
||||||
m_addBoard = new DVGui::CheckBox(tr("Add Clapperboard"), this);
|
m_addBoard = new DVGui::CheckBox(tr("Add Clapperboard"), this);
|
||||||
|
@ -612,7 +618,10 @@ OutputSettingsPopup::OutputSettingsPopup(bool isPreview)
|
||||||
advancedSettingsBox->setLayout(fileSetBoxLay);
|
advancedSettingsBox->setLayout(fileSetBoxLay);
|
||||||
m_topLayout->addWidget(advancedSettingsBox, 0);
|
m_topLayout->addWidget(advancedSettingsBox, 0);
|
||||||
|
|
||||||
m_topLayout->addWidget(m_renderButton);
|
QHBoxLayout* renderButtonLayout = new QHBoxLayout(this);
|
||||||
|
renderButtonLayout->addWidget(m_renderButton);
|
||||||
|
renderButtonLayout->addWidget(m_saveAndRenderButton);
|
||||||
|
m_topLayout->addLayout(renderButtonLayout);
|
||||||
m_topLayout->addStretch(1);
|
m_topLayout->addStretch(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -632,6 +641,8 @@ OutputSettingsPopup::OutputSettingsPopup(bool isPreview)
|
||||||
}
|
}
|
||||||
ret = ret && connect(m_renderButton, SIGNAL(pressed()), this,
|
ret = ret && connect(m_renderButton, SIGNAL(pressed()), this,
|
||||||
SLOT(onRenderClicked()));
|
SLOT(onRenderClicked()));
|
||||||
|
ret = ret && connect(m_saveAndRenderButton, SIGNAL(pressed()), this,
|
||||||
|
SLOT(onSaveAndRenderClicked()));
|
||||||
ret = ret &&
|
ret = ret &&
|
||||||
connect(m_outputCameraOm, SIGNAL(currentIndexChanged(const QString &)),
|
connect(m_outputCameraOm, SIGNAL(currentIndexChanged(const QString &)),
|
||||||
SLOT(onCameraChanged(const QString &)));
|
SLOT(onCameraChanged(const QString &)));
|
||||||
|
@ -790,6 +801,12 @@ void OutputSettingsPopup::onRenderClicked() {
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
void OutputSettingsPopup::onSaveAndRenderClicked() {
|
||||||
|
CommandManager::instance()->execute("MI_SaveAndRender");
|
||||||
|
}
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
/*! Update all field value take care current scene output properties.
|
/*! Update all field value take care current scene output properties.
|
||||||
*/
|
*/
|
||||||
void OutputSettingsPopup::updateField() {
|
void OutputSettingsPopup::updateField() {
|
||||||
|
|
|
@ -50,6 +50,7 @@ class OutputSettingsPopup : public DVGui::Dialog {
|
||||||
DVGui::DoubleLineEdit *m_frameRateFld;
|
DVGui::DoubleLineEdit *m_frameRateFld;
|
||||||
QPushButton *m_fileFormatButton;
|
QPushButton *m_fileFormatButton;
|
||||||
QPushButton *m_renderButton;
|
QPushButton *m_renderButton;
|
||||||
|
QPushButton *m_saveAndRenderButton;
|
||||||
CameraSettingsPopup *m_cameraSettings;
|
CameraSettingsPopup *m_cameraSettings;
|
||||||
QComboBox *m_presetCombo;
|
QComboBox *m_presetCombo;
|
||||||
|
|
||||||
|
@ -94,6 +95,7 @@ protected slots:
|
||||||
void onStereoChecked(int);
|
void onStereoChecked(int);
|
||||||
void onStereoChanged();
|
void onStereoChanged();
|
||||||
void onRenderClicked();
|
void onRenderClicked();
|
||||||
|
void onSaveAndRenderClicked();
|
||||||
|
|
||||||
/*-- OutputSettingsのPreset登録/削除/選択 --*/
|
/*-- OutputSettingsのPreset登録/削除/選択 --*/
|
||||||
void onAddPresetButtonPressed();
|
void onAddPresetButtonPressed();
|
||||||
|
|
|
@ -174,6 +174,7 @@ public:
|
||||||
, m_timeStretchFactor(1)
|
, m_timeStretchFactor(1)
|
||||||
, m_multimediaRender(0) {
|
, m_multimediaRender(0) {
|
||||||
setCommandHandler("MI_Render", this, &RenderCommand::onRender);
|
setCommandHandler("MI_Render", this, &RenderCommand::onRender);
|
||||||
|
setCommandHandler("MI_SaveAndRender", this, &RenderCommand::onSaveAndRender);
|
||||||
setCommandHandler("MI_FastRender", this, &RenderCommand::onFastRender);
|
setCommandHandler("MI_FastRender", this, &RenderCommand::onFastRender);
|
||||||
setCommandHandler("MI_Preview", this, &RenderCommand::onPreview);
|
setCommandHandler("MI_Preview", this, &RenderCommand::onPreview);
|
||||||
}
|
}
|
||||||
|
@ -182,6 +183,7 @@ public:
|
||||||
void rasterRender(bool isPreview);
|
void rasterRender(bool isPreview);
|
||||||
void multimediaRender();
|
void multimediaRender();
|
||||||
void onRender();
|
void onRender();
|
||||||
|
void onSaveAndRender();
|
||||||
void onFastRender();
|
void onFastRender();
|
||||||
void onPreview();
|
void onPreview();
|
||||||
static void resetBgColor();
|
static void resetBgColor();
|
||||||
|
@ -747,14 +749,22 @@ void RenderCommand::multimediaRender() {
|
||||||
//===================================================================
|
//===================================================================
|
||||||
|
|
||||||
void RenderCommand::onRender() {
|
void RenderCommand::onRender() {
|
||||||
bool saved = false;
|
|
||||||
saved = IoCmd::saveAll();
|
|
||||||
if (!saved) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
doRender(false);
|
doRender(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//===================================================================
|
||||||
|
|
||||||
|
void RenderCommand::onSaveAndRender() {
|
||||||
|
bool saved = false;
|
||||||
|
saved = IoCmd::saveAll();
|
||||||
|
if (!saved) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
doRender(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
//===================================================================
|
||||||
|
|
||||||
void RenderCommand::onFastRender() {
|
void RenderCommand::onFastRender() {
|
||||||
TOutputProperties *prop = TApp::instance()
|
TOutputProperties *prop = TApp::instance()
|
||||||
->getCurrentScene()
|
->getCurrentScene()
|
||||||
|
@ -787,6 +797,8 @@ void RenderCommand::onFastRender() {
|
||||||
prop->setPath(currPath);
|
prop->setPath(currPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------
|
||||||
|
|
||||||
void RenderCommand::onPreview() { doRender(true); }
|
void RenderCommand::onPreview() { doRender(true); }
|
||||||
|
|
||||||
//---------------------------------------------------------
|
//---------------------------------------------------------
|
||||||
|
|
Loading…
Reference in a new issue