--Bug fixes

-Really fix locking of affine scale.

--Code changes
 -Remove dependency projects from the solution. Move to a project design where they are built once via command line and stored in a /Deps folder.
  --Because of this, libpng is built as a static lib instead of a dll because that's what its command line makefile supports.
  --Remove libpng16.dll from Wix installer.
 -Remove all configs except for debug and release.
 -Remove all platforms except for x64.
 -Add #define __TBB_NO_IMPLICIT_LINKAGE 1 to prevent tbb from locking for tbb_debug.lib by default on debug builds.
 -Put Ember.rc in a filter folder in the project.
 -Place pragma warning disable statements in PCH files rather than in projects. This makes it easier when using Qt Creator.
 -Move all resource files to the MSVC folder.
 -Set all targets in QtCreator project to their lowercase names to be more *nix friendly. Set -l link statements to use these new lowercase names for ember and embercl.
 -Rework projects to favor shadow builds.
 -Remove the symlinks.sh file and all references to it. It was never needed. Instead, just specify multiple include and link paths in the .pro files.
 -Change WIN32 to _WIN32.
 -Fix a few code warnings.
This commit is contained in:
mfeemster
2016-03-01 17:26:45 -08:00
parent 695b8fc823
commit 7c856c929c
70 changed files with 1300 additions and 4046 deletions

View File

@ -651,7 +651,6 @@ bool Fractorium::CreateRendererFromOptions()
/// <returns>True if successful, else false.</returns>
bool Fractorium::CreateControllerFromOptions()
{
bool ok = true;
size_t elementSize =
#ifdef DO_DOUBLE
m_Settings->Double() ? sizeof(double) :
@ -666,6 +665,7 @@ bool Fractorium::CreateControllerFromOptions()
auto con = m_PaletteContrastSpin->value();
auto blur = m_PaletteBlurSpin->value();
auto freq = m_PaletteFrequencySpin->value();
double scale;
#ifdef DO_DOUBLE
Ember<double> ed;
EmberFile<double> efd;
@ -680,6 +680,7 @@ bool Fractorium::CreateControllerFromOptions()
//First check if a controller has already been created, and if so, save its embers and gracefully shut it down.
if (m_Controller.get())
{
scale = m_Controller->LockedScale();
m_Controller->StopPreviewRender();//Must stop any previews first, else changing controllers will crash the program.
m_Controller->CopyTempPalette(tempPalette);//Convert float to double or save double verbatim;
//Replace below with this once LLVM fixes a crash in their compiler with default lambda parameters.//TODO
@ -709,6 +710,7 @@ bool Fractorium::CreateControllerFromOptions()
ed.m_Palette = tempPalette;//Restore base temp palette. Adjustments will be then be applied and stored back in in m_Ember.m_Palette below.
m_Controller->SetEmber(ed);//Convert float to double or set double verbatim. This will assign m_Ember.m_Palette (which was just tempPalette) to m_TempPalette.
m_Controller->SetEmberFile(efd);
m_Controller->LockedScale(scale);
//Setting these and updating the GUI overwrites the work of clearing them done in SetEmber() above.
//It's a corner case, but doesn't seem to matter.
m_PaletteHueSpin->SetValueStealth(hue);