mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-07-17 05:34:50 -04:00
22.21.4.2 4/19/2021
--User changes -Allow users to set the Exp value when using the Exp temporal filter type. -Set the default temporal filter type to be Box, which does not alter the palette values at all during animation. This is done to avoid confusion when using Gaussian or Exp which can produce darkened images. --Bug fixes -Sending a sequence to the final render dialog when the keyframes had non zero rotate and center Y values would produce off center animations when rendered. -Temporal filters were being unnecessarily recreated many times when rendering or generating sequences. -Exp filter was always treated like a Box filter. --Code changes -Add a new member function SaveCurrentAsXml(QString filename = "") to the controllers which is only used for testing. -Modernize some C++ code.
This commit is contained in:
@ -384,26 +384,29 @@ void Fractorium::OnActionOpenExamples(bool checked) { m_Controller->OpenAndPrepF
|
||||
/// This will first save the current ember back to the opened file in memory before
|
||||
/// saving it to disk.
|
||||
/// </summary>
|
||||
/// <param name="filename">The filename to save the ember to. If empty, use internal variables to determine the filename.</param>
|
||||
template <typename T>
|
||||
void FractoriumEmberController<T>::SaveCurrentAsXml()
|
||||
void FractoriumEmberController<T>::SaveCurrentAsXml(QString filename)
|
||||
{
|
||||
QString filename;
|
||||
auto s = m_Fractorium->m_Settings;
|
||||
|
||||
if (s->SaveAutoUnique() && m_LastSaveCurrent != "")
|
||||
if (filename == "")
|
||||
{
|
||||
filename = EmberFile<T>::UniqueFilename(m_LastSaveCurrent);
|
||||
}
|
||||
else if (QFile::exists(m_LastSaveCurrent))
|
||||
{
|
||||
filename = m_LastSaveCurrent;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (m_EmberFile.Size() == 1)
|
||||
filename = m_Fractorium->SetupSaveXmlDialog(m_EmberFile.m_Filename);//If only one ember present, just use parent filename.
|
||||
if (s->SaveAutoUnique() && m_LastSaveCurrent != "")
|
||||
{
|
||||
filename = EmberFile<T>::UniqueFilename(m_LastSaveCurrent);
|
||||
}
|
||||
else if (QFile::exists(m_LastSaveCurrent))
|
||||
{
|
||||
filename = m_LastSaveCurrent;
|
||||
}
|
||||
else
|
||||
filename = m_Fractorium->SetupSaveXmlDialog(QString::fromStdString(m_Ember.m_Name));//More than one ember present, use individual ember name.
|
||||
{
|
||||
if (m_EmberFile.Size() == 1)
|
||||
filename = m_Fractorium->SetupSaveXmlDialog(m_EmberFile.m_Filename);//If only one ember present, just use parent filename.
|
||||
else
|
||||
filename = m_Fractorium->SetupSaveXmlDialog(QString::fromStdString(m_Ember.m_Name));//More than one ember present, use individual ember name.
|
||||
}
|
||||
}
|
||||
|
||||
if (filename != "")
|
||||
@ -1053,7 +1056,7 @@ void Fractorium::OnActionFinalRender(bool checked)
|
||||
m_RenderStatusLabel->setText("Renderer stopped.");
|
||||
SetupFinalRenderDialog();
|
||||
|
||||
if (m_FinalRenderDialog)
|
||||
if (m_FinalRenderDialog.get())
|
||||
m_FinalRenderDialog->Show(false);
|
||||
}
|
||||
|
||||
@ -1067,8 +1070,7 @@ void Fractorium::OnFinalRenderClose(int result)
|
||||
StartRenderTimer(false);//Re-create the renderer and start rendering again.
|
||||
ui.ActionStartStopRenderer->setChecked(false);//Re-enable any controls that might have been disabled.
|
||||
OnActionStartStopRenderer(false);
|
||||
delete m_FinalRenderDialog;
|
||||
m_FinalRenderDialog = nullptr;
|
||||
m_FinalRenderDialog.reset();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
Reference in New Issue
Block a user