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>
|
||||
<separator/>
|
||||
<item>MI_Render</item>
|
||||
<item>MI_SaveAndRender</item>
|
||||
<separator/>
|
||||
<item>MI_ShortcutPopup</item>
|
||||
<separator/>
|
||||
|
|
|
@ -245,6 +245,7 @@
|
|||
<separator/>
|
||||
<command>MI_OutputSettings</command>
|
||||
<command>MI_Render</command>
|
||||
<command>MI_SaveAndRender</command>
|
||||
<separator/>
|
||||
<command>MI_FastRender</command>
|
||||
</menu>
|
||||
|
|
|
@ -1811,7 +1811,12 @@ void MainWindow::defineActions() {
|
|||
tr("Control the settings that will be used to preview the scene."));
|
||||
menuAct->setIcon(createQIcon("preview_settings"));
|
||||
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 "
|
||||
"location set in Output Settings."));
|
||||
menuAct->setIcon(createQIcon("render"));
|
||||
|
|
|
@ -622,7 +622,7 @@ QMenuBar *StackedMenuBar::createFullMenuBar() {
|
|||
addMenuItem(renderMenu, MI_SavePreviewedFrames);
|
||||
renderMenu->addSeparator();
|
||||
addMenuItem(renderMenu, MI_OutputSettings);
|
||||
addMenuItem(renderMenu, MI_Render);
|
||||
addMenuItem(renderMenu, MI_SaveAndRender);
|
||||
renderMenu->addSeparator();
|
||||
addMenuItem(renderMenu, MI_FastRender);
|
||||
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
#define MI_OutputSettings "MI_OutputSettings"
|
||||
#define MI_PreviewSettings "MI_PreviewSettings"
|
||||
#define MI_Render "MI_Render"
|
||||
#define MI_SaveAndRender "MI_SaveAndRender"
|
||||
#define MI_FastRender "MI_FastRender"
|
||||
#define MI_Preview "MI_Preview"
|
||||
#define MI_SoundTrack "MI_SoundTrack"
|
||||
|
|
|
@ -222,14 +222,20 @@ OutputSettingsPopup::OutputSettingsPopup(bool isPreview)
|
|||
QPushButton *removePresetButton = NULL;
|
||||
|
||||
m_dominantFieldOm = 0;
|
||||
m_renderButton = new QPushButton(tr("Save and Render"), this);
|
||||
if (isPreview) m_renderButton->setText("Preview");
|
||||
m_renderButton = new QPushButton(tr("Render"), this);
|
||||
m_saveAndRenderButton = new QPushButton(tr("Save and Render"), this);
|
||||
if (isPreview) {
|
||||
m_renderButton->setText("Preview");
|
||||
m_saveAndRenderButton->hide();
|
||||
}
|
||||
if (!isPreview) {
|
||||
showOtherSettingsButton = new QPushButton("", this);
|
||||
otherSettingsLabel = new QLabel(tr("Other Settings"), this);
|
||||
otherSettingsFrame = new QFrame(this);
|
||||
m_renderButton->setIcon(createQIcon("render"));
|
||||
m_renderButton->setIconSize(QSize(20, 20));
|
||||
m_saveAndRenderButton->setIcon(createQIcon("render"));
|
||||
m_saveAndRenderButton->setIconSize(QSize(20, 20));
|
||||
|
||||
// Board
|
||||
m_addBoard = new DVGui::CheckBox(tr("Add Clapperboard"), this);
|
||||
|
@ -612,7 +618,10 @@ OutputSettingsPopup::OutputSettingsPopup(bool isPreview)
|
|||
advancedSettingsBox->setLayout(fileSetBoxLay);
|
||||
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);
|
||||
}
|
||||
|
||||
|
@ -632,6 +641,8 @@ OutputSettingsPopup::OutputSettingsPopup(bool isPreview)
|
|||
}
|
||||
ret = ret && connect(m_renderButton, SIGNAL(pressed()), this,
|
||||
SLOT(onRenderClicked()));
|
||||
ret = ret && connect(m_saveAndRenderButton, SIGNAL(pressed()), this,
|
||||
SLOT(onSaveAndRenderClicked()));
|
||||
ret = ret &&
|
||||
connect(m_outputCameraOm, SIGNAL(currentIndexChanged(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.
|
||||
*/
|
||||
void OutputSettingsPopup::updateField() {
|
||||
|
|
|
@ -50,6 +50,7 @@ class OutputSettingsPopup : public DVGui::Dialog {
|
|||
DVGui::DoubleLineEdit *m_frameRateFld;
|
||||
QPushButton *m_fileFormatButton;
|
||||
QPushButton *m_renderButton;
|
||||
QPushButton *m_saveAndRenderButton;
|
||||
CameraSettingsPopup *m_cameraSettings;
|
||||
QComboBox *m_presetCombo;
|
||||
|
||||
|
@ -94,6 +95,7 @@ protected slots:
|
|||
void onStereoChecked(int);
|
||||
void onStereoChanged();
|
||||
void onRenderClicked();
|
||||
void onSaveAndRenderClicked();
|
||||
|
||||
/*-- OutputSettingsのPreset登録/削除/選択 --*/
|
||||
void onAddPresetButtonPressed();
|
||||
|
|
|
@ -174,6 +174,7 @@ public:
|
|||
, m_timeStretchFactor(1)
|
||||
, m_multimediaRender(0) {
|
||||
setCommandHandler("MI_Render", this, &RenderCommand::onRender);
|
||||
setCommandHandler("MI_SaveAndRender", this, &RenderCommand::onSaveAndRender);
|
||||
setCommandHandler("MI_FastRender", this, &RenderCommand::onFastRender);
|
||||
setCommandHandler("MI_Preview", this, &RenderCommand::onPreview);
|
||||
}
|
||||
|
@ -182,6 +183,7 @@ public:
|
|||
void rasterRender(bool isPreview);
|
||||
void multimediaRender();
|
||||
void onRender();
|
||||
void onSaveAndRender();
|
||||
void onFastRender();
|
||||
void onPreview();
|
||||
static void resetBgColor();
|
||||
|
@ -747,6 +749,12 @@ void RenderCommand::multimediaRender() {
|
|||
//===================================================================
|
||||
|
||||
void RenderCommand::onRender() {
|
||||
doRender(false);
|
||||
}
|
||||
|
||||
//===================================================================
|
||||
|
||||
void RenderCommand::onSaveAndRender() {
|
||||
bool saved = false;
|
||||
saved = IoCmd::saveAll();
|
||||
if (!saved) {
|
||||
|
@ -755,6 +763,8 @@ void RenderCommand::onRender() {
|
|||
doRender(false);
|
||||
}
|
||||
|
||||
//===================================================================
|
||||
|
||||
void RenderCommand::onFastRender() {
|
||||
TOutputProperties *prop = TApp::instance()
|
||||
->getCurrentScene()
|
||||
|
@ -787,6 +797,8 @@ void RenderCommand::onFastRender() {
|
|||
prop->setPath(currPath);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------
|
||||
|
||||
void RenderCommand::onPreview() { doRender(true); }
|
||||
|
||||
//---------------------------------------------------------
|
||||
|
|
Loading…
Reference in a new issue