mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-01-21 05:00:06 -05:00
--User changes
-Add a button to swap the pre and post affine values for all selected xforms. --Bug fixes -Remove the ability to change spinner values with +=-=, it was conflicting with other things and added no real value. -All file dialog opening in Linux would freeze. No longer using native file dialogs, they are broken. -Set default open path to the desktop if there is no settings file present, which will be the case on the first run. -Amphibole_Supergroup.ugr palette had an invalid character in two of the palette names. --Code changes -Change some table header padding styles to work with new Qt. Qss reload is required. -Ensure the open folder path setting always has a valid string in it before opening a folder.
This commit is contained in:
parent
02c3c3967b
commit
c91866acc3
@ -6,7 +6,7 @@
|
||||
<ProductVersion>3.7</ProductVersion>
|
||||
<ProjectGuid>{c8096c47-e358-438c-a520-146d46b0637d}</ProjectGuid>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<OutputName>Fractorium_1.0.0.11</OutputName>
|
||||
<OutputName>Fractorium_1.0.0.12</OutputName>
|
||||
<OutputType>Package</OutputType>
|
||||
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
|
||||
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<?define ProductVersion="1.0.0.11" ?>
|
||||
<?define ProductVersion="1.0.0.12" ?>
|
||||
<?define ProductName="Fractorium $(var.ProductVersion) ($(var.GpuType))" ?>
|
||||
<?define UpgradeCode="{4714cd15-bfba-44f6-8059-9e1466ebfa6e}"?>
|
||||
<?define Manufacturer="Fractorium"?>
|
||||
@ -13,7 +13,7 @@
|
||||
<!--
|
||||
Change this for every release.
|
||||
-->
|
||||
<?define ProductCode="{5C699D11-8625-4563-BCB6-722C3E6EE6B7}"?>
|
||||
<?define ProductCode="{B4D001AE-F268-41A2-9B33-CAFB26056DC3}"?>
|
||||
|
||||
<Product Id="$(var.ProductCode)" Name="$(var.ProductName)" Language="1033" Version="$(var.ProductVersion)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
|
||||
<Package
|
||||
@ -164,16 +164,16 @@
|
||||
<File Id="tbb.dll" Source="$(var.SolutionDir)..\..\..\Bin\$(var.Platform)\Release\tbb.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes"/>
|
||||
</Component>
|
||||
<Component Id="msvcp140.dll" Guid="8f1ffde7-c1bd-45fb-8bc8-26dde552eafd">
|
||||
<File Id="msvcp140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.11.25325\x64\Microsoft.VC141.CRT\msvcp140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="msvcp140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.15.26706\x64\Microsoft.VC141.CRT\msvcp140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
</Component>
|
||||
<Component Id="vcruntime140.dll" Guid="50c9bc27-c547-4a03-9f6c-cd416f449dd8">
|
||||
<File Id="vcruntime140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.11.25325\x64\Microsoft.VC141.CRT\vcruntime140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="vcruntime140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.15.26706\x64\Microsoft.VC141.CRT\vcruntime140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
</Component>
|
||||
<Component Id="vccorlib140.dll" Guid="affe33e7-1e64-4bb0-a062-2b56f77459b4">
|
||||
<File Id="vccorlib140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.11.25325\x64\Microsoft.VC141.CRT\vccorlib140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="vccorlib140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.15.26706\x64\Microsoft.VC141.CRT\vccorlib140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
</Component>
|
||||
<Component Id="concrt140.dll" Guid="7fb716a1-1b4f-42fb-89c7-4d216ebd6e2e">
|
||||
<File Id="concrt140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.11.25325\x64\Microsoft.VC141.CRT\concrt140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="concrt140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.15.26706\x64\Microsoft.VC141.CRT\concrt140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
</Component>
|
||||
<Component Id="flam3palettes.xml" Guid="d3adb0bb-14ef-4923-99d9-a5784b7ef04e">
|
||||
<File Id="flam3palettes.xml" Source="$(var.SolutionDir)..\..\..\Data\flam3-palettes.xml" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
|
Binary file not shown.
@ -49,8 +49,8 @@
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 1, 0, 0, 11
|
||||
PRODUCTVERSION 1, 0, 0, 11
|
||||
FILEVERSION 1, 0, 0, 12
|
||||
PRODUCTVERSION 1, 0, 0, 12
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@ -67,12 +67,12 @@
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Open Source"
|
||||
VALUE "FileDescription", "Renders fractal flames as animations with motion blur"
|
||||
VALUE "FileVersion", "1.0.0.11"
|
||||
VALUE "FileVersion", "1.0.0.12"
|
||||
VALUE "InternalName", "EmberAnimate.exe"
|
||||
VALUE "LegalCopyright", "Copyright (C) Matt Feemster 2018, GPL v3"
|
||||
VALUE "OriginalFilename", "EmberAnimate.exe"
|
||||
VALUE "ProductName", "Ember Animate"
|
||||
VALUE "ProductVersion", "1.0.0.11"
|
||||
VALUE "ProductVersion", "1.0.0.12"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
Binary file not shown.
@ -49,8 +49,8 @@
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 1, 0, 0, 11
|
||||
PRODUCTVERSION 1, 0, 0, 11
|
||||
FILEVERSION 1, 0, 0, 12
|
||||
PRODUCTVERSION 1, 0, 0, 12
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@ -67,12 +67,12 @@
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Open Source"
|
||||
VALUE "FileDescription", "Manipulates fractal flames parameter files"
|
||||
VALUE "FileVersion", "1.0.0.11"
|
||||
VALUE "FileVersion", "1.0.0.12"
|
||||
VALUE "InternalName", "EmberGenome.exe"
|
||||
VALUE "LegalCopyright", "Copyright (C) Matt Feemster 2018, GPL v3"
|
||||
VALUE "OriginalFilename", "EmberGenome.exe"
|
||||
VALUE "ProductName", "Ember Genome"
|
||||
VALUE "ProductVersion", "1.0.0.11"
|
||||
VALUE "ProductVersion", "1.0.0.12"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
@ -49,8 +49,8 @@
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 1, 0, 0, 11
|
||||
PRODUCTVERSION 1, 0, 0, 11
|
||||
FILEVERSION 1, 0, 0, 12
|
||||
PRODUCTVERSION 1, 0, 0, 12
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@ -67,12 +67,12 @@
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Open Source"
|
||||
VALUE "FileDescription", "Renders fractal flames as single images"
|
||||
VALUE "FileVersion", "1.0.0.11"
|
||||
VALUE "FileVersion", "1.0.0.12"
|
||||
VALUE "InternalName", "EmberRender.exe"
|
||||
VALUE "LegalCopyright", "Copyright (C) Matt Feemster 2018, GPL v3"
|
||||
VALUE "OriginalFilename", "EmberRender.exe"
|
||||
VALUE "ProductName", "Ember Render"
|
||||
VALUE "ProductVersion", "1.0.0.11"
|
||||
VALUE "ProductVersion", "1.0.0.12"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
VERSION = 1.0.0.11
|
||||
VERSION = 1.0.0.12
|
||||
win32:CONFIG += skip_target_version_ext
|
||||
CONFIG += c++14
|
||||
|
||||
|
@ -4976,9 +4976,9 @@ gradient:
|
||||
|
||||
}
|
||||
|
||||
Ferro-ferri-nybøite {
|
||||
Ferro-ferri-nyboite {
|
||||
gradient:
|
||||
title="Ferro-ferri-nybøite" smooth=no
|
||||
title="Ferro-ferri-nyboite" smooth=no
|
||||
index=0 color=3032133
|
||||
index=2 color=2372156
|
||||
index=3 color=2239542
|
||||
@ -14670,9 +14670,9 @@ gradient:
|
||||
|
||||
}
|
||||
|
||||
Raw_Nybøite {
|
||||
Raw_Nyboite {
|
||||
gradient:
|
||||
title="Raw_Nybøite" smooth=no
|
||||
title="Raw_Nyboite" smooth=no
|
||||
index=0 color=5076103
|
||||
index=2 color=3825246
|
||||
index=3 color=2970712
|
||||
|
@ -1,3 +1,17 @@
|
||||
1.0.0.12 9/30/2018
|
||||
--User changes
|
||||
-Add a button to swap the pre and post affine values for all selected xforms.
|
||||
|
||||
--Bug fixes
|
||||
-Remove the ability to change spinner values with +=-=, it was conflicting with other things and added no real value.
|
||||
-All file dialog opening in Linux would freeze. No longer using native file dialogs, they are broken.
|
||||
-Set default open path to the desktop if there is no settings file present, which will be the case on the first run.
|
||||
-Amphibole_Supergroup.ugr palette had an invalid character in two of the palette names.
|
||||
|
||||
--Code changes
|
||||
-Change some table header padding styles to work with new Qt. Qss reload is required.
|
||||
-Ensure the open folder path setting always has a valid string in it before opening a folder.
|
||||
|
||||
1.0.0.11 9/27/2018
|
||||
--User changes
|
||||
-Double clicking on width or height spinner now resizes both, but scales to the one double clicked.
|
||||
|
@ -101,7 +101,7 @@ QDoubleSpinBox
|
||||
padding-right: 0px;
|
||||
color: darkgray;
|
||||
selection-background-color: darkgray;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QCheckBox
|
||||
@ -322,7 +322,7 @@ QTreeView
|
||||
{
|
||||
border: 1px solid gray;
|
||||
background-color: rgb(53, 53, 53);
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
/*Setting this gives a more consistent look. Also, by omitting color and background color, it allows us to set it above with VariationTreeColorNonZero etc...*/
|
||||
@ -378,7 +378,7 @@ QTableView
|
||||
color: darkgray;
|
||||
selection-color: darkgray;
|
||||
selection-background-color: rgb(53, 53, 53);
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QTableView QTableCornerButton::section:enabled
|
||||
@ -409,8 +409,9 @@ QHeaderView::section::vertical:enabled
|
||||
background-color: gray;
|
||||
border: none;
|
||||
border-bottom: 1px solid gray;
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:enabled
|
||||
@ -419,8 +420,10 @@ QHeaderView::section::horizontal:enabled
|
||||
background-color: darkgray;
|
||||
border: 0px solid darkgray;
|
||||
border-right: 1px solid gray;
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::vertical:disabled
|
||||
@ -429,8 +432,9 @@ QHeaderView::section::vertical:disabled
|
||||
background-color: rgb(53, 53, 53);
|
||||
border: 0px none darkgray;
|
||||
border-bottom: 1px solid rgb(53, 53, 53);
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:disabled
|
||||
@ -439,8 +443,10 @@ QHeaderView::section::horizontal:disabled
|
||||
background-color: rgb(53, 53, 53);
|
||||
border: 0px none darkgray;
|
||||
border-right: 1px solid rgb(53, 53, 53);
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QScrollBar::vertical
|
||||
|
@ -101,7 +101,7 @@ QDoubleSpinBox
|
||||
padding-right: 0px;
|
||||
color: darkgray;
|
||||
selection-background-color: darkgray;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QCheckBox
|
||||
@ -322,7 +322,7 @@ QTreeView
|
||||
{
|
||||
border: 1px solid gray;
|
||||
background-color: rgb(53, 53, 53);
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
|
||||
@ -379,7 +379,7 @@ QTableView
|
||||
color: darkgray;
|
||||
selection-color: darkgray;
|
||||
selection-background-color: rgb(53, 53, 53);
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QTableView QTableCornerButton::section:enabled
|
||||
@ -410,8 +410,9 @@ QHeaderView::section::vertical:enabled
|
||||
background-color: gray;
|
||||
border: none;
|
||||
border-bottom: 1px solid gray;
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:enabled
|
||||
@ -420,8 +421,10 @@ QHeaderView::section::horizontal:enabled
|
||||
background-color: darkgray;
|
||||
border: 0px solid darkgray;
|
||||
border-right: 1px solid gray;
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::vertical:disabled
|
||||
@ -430,8 +433,9 @@ QHeaderView::section::vertical:disabled
|
||||
background-color: rgb(53, 53, 53);
|
||||
border: 0px none darkgray;
|
||||
border-bottom: 1px solid rgb(53, 53, 53);
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:disabled
|
||||
@ -440,8 +444,10 @@ QHeaderView::section::horizontal:disabled
|
||||
background-color: rgb(53, 53, 53);
|
||||
border: 0px none darkgray;
|
||||
border-right: 1px solid rgb(53, 53, 53);
|
||||
padding: 4px;
|
||||
font: 9pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QScrollBar::vertical
|
||||
|
@ -409,7 +409,8 @@ QHeaderView::section::vertical:enabled
|
||||
background-color: gray;
|
||||
border: none;
|
||||
border-bottom: 1px solid gray;
|
||||
padding: 4px;
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
@ -419,7 +420,9 @@ QHeaderView::section::horizontal:enabled
|
||||
background-color: darkgray;
|
||||
border: 0px solid darkgray;
|
||||
border-right: 1px solid gray;
|
||||
padding: 4px;
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
@ -429,7 +432,8 @@ QHeaderView::section::vertical:disabled
|
||||
background-color: rgb(53, 53, 53);
|
||||
border: 0px none darkgray;
|
||||
border-bottom: 1px solid rgb(53, 53, 53);
|
||||
padding: 4px;
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
@ -439,7 +443,9 @@ QHeaderView::section::horizontal:disabled
|
||||
background-color: rgb(53, 53, 53);
|
||||
border: 0px none darkgray;
|
||||
border-right: 1px solid rgb(53, 53, 53);
|
||||
padding: 4px;
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
|
@ -37,7 +37,7 @@ static void sincos(float x, float* s, float* c)
|
||||
|
||||
namespace EmberNs
|
||||
{
|
||||
#define EMBER_VERSION "1.0.0.11"
|
||||
#define EMBER_VERSION "1.0.0.12"
|
||||
#define EPS6 T(1e-6)
|
||||
#define EPS std::numeric_limits<T>::epsilon()//Apoplugin.h uses -20, but it's more mathematically correct to do it this way.
|
||||
#define ISAAC_SIZE 4
|
||||
|
@ -58,7 +58,7 @@
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string><html><head/><body><p align="center">Fractorium 1.0.0.11</p><p align="center"><span style=" font-size:10pt;">A Qt-based fractal flame editor which uses a C++ re-write of the flam3 algorithm named Ember and a GPU capable version named EmberCL which implements a portion of the cuburn algorithm in OpenCL.</span></p><p align="center"><a href="http://fractorium.com"><span style=" text-decoration: underline; color:#0000ff;">fractorium.com</span></a></p></body></html></string>
|
||||
<string><html><head/><body><p align="center">Fractorium 1.0.0.12</p><p align="center"><span style=" font-size:10pt;">A Qt-based fractal flame editor which uses a C++ re-write of the flam3 algorithm named Ember and a GPU capable version named EmberCL which implements a portion of the cuburn algorithm in OpenCL.</span></p><p align="center"><a href="http://fractorium.com"><span style=" text-decoration: underline; color:#0000ff;">fractorium.com</span></a></p></body></html></string>
|
||||
</property>
|
||||
<property name="textFormat">
|
||||
<enum>Qt::RichText</enum>
|
||||
|
@ -245,8 +245,14 @@ bool DoubleSpinBox::eventFilter(QObject* o, QEvent* e)
|
||||
setValue(value() - (ctrl ? m_Step * 10 : m_Step));
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (dynamic_cast<QKeyEvent*>(e))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return QDoubleSpinBox::eventFilter(o, e);
|
||||
@ -263,7 +269,7 @@ void DoubleSpinBox::keyPressEvent(QKeyEvent* ke)
|
||||
bool shift = QGuiApplication::keyboardModifiers().testFlag(Qt::ShiftModifier);
|
||||
bool ctrl = QGuiApplication::keyboardModifiers().testFlag(Qt::ControlModifier);
|
||||
|
||||
if (ke->key() == Qt::Key_Plus || ke->key() == Qt::Key_Equal || ke->key() == Qt::Key_Up)
|
||||
if (ke->key() == Qt::Key_Up)
|
||||
{
|
||||
if (shift)
|
||||
{
|
||||
@ -275,8 +281,10 @@ void DoubleSpinBox::keyPressEvent(QKeyEvent* ke)
|
||||
setSingleStep(m_Step);
|
||||
setValue(value() + (ctrl ? m_Step * 10 : m_Step));
|
||||
}
|
||||
|
||||
ke->accept();
|
||||
}
|
||||
else if (ke->key() == Qt::Key_Minus || ke->key() == Qt::Key_Underscore || ke->key() == Qt::Key_Down)
|
||||
else if (ke->key() == Qt::Key_Down)
|
||||
{
|
||||
if (shift)
|
||||
{
|
||||
@ -288,6 +296,8 @@ void DoubleSpinBox::keyPressEvent(QKeyEvent* ke)
|
||||
setSingleStep(m_Step);
|
||||
setValue(value() - (ctrl ? m_Step * 10 : m_Step));
|
||||
}
|
||||
|
||||
ke->accept();
|
||||
}
|
||||
else
|
||||
QDoubleSpinBox::keyPressEvent(ke);
|
||||
|
@ -398,37 +398,42 @@ bool Fractorium::eventFilter(QObject* o, QEvent* e)
|
||||
}
|
||||
else if (o == this)
|
||||
{
|
||||
unsigned int index = combo->currentIndex();
|
||||
auto focusedctrl = dynamic_cast<QSpinBox*>(this->focusWidget());
|
||||
|
||||
if (ke->key() == Qt::Key_Plus || ke->key() == Qt::Key_Equal)
|
||||
if (!focusedctrl)//Doesn't seem to matter, but just to be safe.
|
||||
{
|
||||
xfupcount++;
|
||||
unsigned int index = combo->currentIndex();
|
||||
|
||||
if (xfupcount >= 3)
|
||||
if (ke->key() == Qt::Key_Plus || ke->key() == Qt::Key_Equal)
|
||||
{
|
||||
xfupcount = 0;
|
||||
combo->setCurrentIndex((index + 1) % combo->count());
|
||||
//qDebug() << "global arrow plus key press: " << ke->key() << " " << o->metaObject()->className() << " " << o->objectName();
|
||||
xfupcount++;
|
||||
|
||||
if (xfupcount >= 3)
|
||||
{
|
||||
xfupcount = 0;
|
||||
combo->setCurrentIndex((index + 1) % combo->count());
|
||||
//qDebug() << "global arrow plus key press: " << ke->key() << " " << o->metaObject()->className() << " " << o->objectName();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
else if (ke->key() == Qt::Key_Minus || ke->key() == Qt::Key_Underscore)
|
||||
{
|
||||
xfdncount++;
|
||||
|
||||
if (xfdncount >= 3)
|
||||
else if (ke->key() == Qt::Key_Minus || ke->key() == Qt::Key_Underscore)
|
||||
{
|
||||
xfdncount = 0;
|
||||
xfdncount++;
|
||||
|
||||
if (index == 0)
|
||||
index = combo->count();
|
||||
if (xfdncount >= 3)
|
||||
{
|
||||
xfdncount = 0;
|
||||
|
||||
combo->setCurrentIndex((index - 1) % combo->count());
|
||||
//qDebug() << "global arrow minus key press: " << ke->key() << " " << o->metaObject()->className() << " " << o->objectName();
|
||||
if (index == 0)
|
||||
index = combo->count();
|
||||
|
||||
combo->setCurrentIndex((index - 1) % combo->count());
|
||||
//qDebug() << "global arrow minus key press: " << ke->key() << " " << o->metaObject()->className() << " " << o->objectName();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -594,6 +599,7 @@ QStringList Fractorium::SetupOpenXmlDialog()
|
||||
{
|
||||
m_FileDialog = new QFileDialog(this);
|
||||
m_FileDialog->setViewMode(QFileDialog::List);
|
||||
m_FileDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
||||
}
|
||||
|
||||
QStringList filenames;
|
||||
@ -642,6 +648,7 @@ QString Fractorium::SetupSaveXmlDialog(const QString& defaultFilename)
|
||||
{
|
||||
m_FileDialog = new QFileDialog(this);
|
||||
m_FileDialog->setViewMode(QFileDialog::List);
|
||||
m_FileDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
||||
}
|
||||
|
||||
QString filename;
|
||||
@ -687,6 +694,7 @@ QString Fractorium::SetupSaveImageDialog(const QString& defaultFilename)
|
||||
{
|
||||
m_FileDialog = new QFileDialog(this);
|
||||
m_FileDialog->setViewMode(QFileDialog::List);
|
||||
m_FileDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
||||
}
|
||||
|
||||
QString filename;
|
||||
@ -702,7 +710,6 @@ QString Fractorium::SetupSaveImageDialog(const QString& defaultFilename)
|
||||
m_FileDialog->selectFile(defaultFilename);
|
||||
m_FileDialog->setFileMode(QFileDialog::AnyFile);
|
||||
m_FileDialog->setOption(QFileDialog::ShowDirsOnly, false);
|
||||
m_FileDialog->setOption(QFileDialog::DontUseNativeDialog, false);
|
||||
#ifdef _WIN32
|
||||
m_FileDialog->setNameFilter(".bmp;;.jpg;;.png;;.exr");
|
||||
#else
|
||||
@ -738,6 +745,7 @@ QString Fractorium::SetupSaveFolderDialog()
|
||||
{
|
||||
m_FolderDialog = new QFileDialog(this);
|
||||
m_FolderDialog->setViewMode(QFileDialog::List);
|
||||
m_FolderDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
||||
}
|
||||
|
||||
QString filename;
|
||||
@ -893,6 +901,7 @@ void Fractorium::SetTabOrders()
|
||||
w = SetTabOrder(this, w, ui.PreRandomButton);
|
||||
w = SetTabOrder(this, w, ui.ShowPreAffineCurrentRadio);
|
||||
w = SetTabOrder(this, w, ui.ShowPreAffineAllRadio);
|
||||
w = SetTabOrder(this, w, ui.SwapAffinesButton);
|
||||
w = SetTabOrder(this, w, ui.PostAffineGroupBox);
|
||||
w = SetTabOrder(this, w, m_PostX1Spin);
|
||||
w = SetTabOrder(this, w, m_PostX2Spin);
|
||||
|
@ -286,6 +286,7 @@ public slots:
|
||||
void OnCopyAffineButtonClicked(bool checked);
|
||||
void OnPasteAffineButtonClicked(bool checked);
|
||||
void OnRandomAffineButtonClicked(bool checked);
|
||||
void OnSwapAffinesButtonClicked(bool checked);
|
||||
|
||||
void OnAffineGroupBoxToggled(bool on);
|
||||
void OnAffineDrawAllCurrentRadioButtonToggled(bool checked);
|
||||
|
@ -466,7 +466,7 @@
|
||||
<string>Geometry</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignHCenter|AlignTop</set>
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
@ -547,7 +547,7 @@
|
||||
<string>Iteration</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignHCenter|AlignTop</set>
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
@ -637,7 +637,7 @@
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignHCenter|AlignTop</set>
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
@ -734,7 +734,7 @@
|
||||
<string>Filter</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignHCenter|AlignTop</set>
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
@ -1624,7 +1624,7 @@
|
||||
<string>Animation</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignHCenter|AlignTop</set>
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
@ -3040,13 +3040,13 @@
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>58</width>
|
||||
<width>62</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>58</width>
|
||||
<width>62</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -3181,18 +3181,30 @@
|
||||
<property name="text">
|
||||
<string>Weight</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Name</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
<item row="0" column="0">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignLeading|AlignVCenter</set>
|
||||
</property>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignLeading|AlignVCenter</set>
|
||||
</property>
|
||||
@ -4684,6 +4696,16 @@
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="SwapAffinesButton">
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Swap the values of the pre and post affines</p></body></html></string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Swap</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="PostAffineGroupBox">
|
||||
<property name="sizePolicy">
|
||||
|
@ -517,7 +517,10 @@ static QString BaseStyle()
|
||||
"\tbackground-color: lightgray;\n"
|
||||
"\tborder: none;\n"
|
||||
"\tborder-bottom: 1px solid gray;\n"
|
||||
"\tpadding: 4px;\n"
|
||||
"\tpadding-left: 5px;\n"
|
||||
"\tpadding-right: 0px;\n"
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
@ -527,7 +530,9 @@ static QString BaseStyle()
|
||||
"\tbackground-color: lightgray;\n"
|
||||
"\tborder: 0px solid darkgray;\n"
|
||||
"\tborder-right: 1px solid gray;\n"
|
||||
"\tpadding: 4px;\n"
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tpadding-left: 3px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
@ -537,7 +542,10 @@ static QString BaseStyle()
|
||||
"\tbackground-color: rgb(53, 53, 53);\n"
|
||||
"\tborder: 0px none darkgray;\n"
|
||||
"\tborder-bottom: 1px solid rgb(53, 53, 53);\n"
|
||||
"\tpadding: 4px;\n"
|
||||
"\tpadding-left: 5px;\n"
|
||||
"\tpadding-right: 0px;\n"
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
@ -547,7 +555,9 @@ static QString BaseStyle()
|
||||
"\tbackground-color: rgb(53, 53, 53);\n"
|
||||
"\tborder: 0px none darkgray;\n"
|
||||
"\tborder-right: 0px solid rgb(53, 53, 53);\n"
|
||||
"\tpadding: 4px;\n"
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tpadding-left: 3px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
;
|
||||
|
@ -198,6 +198,7 @@ public:
|
||||
virtual void PasteXformsAffine(bool pre) { }
|
||||
virtual void RandomXformsAffine(bool pre) { }
|
||||
virtual void FillBothAffines() { }
|
||||
virtual void SwapAffines() { }
|
||||
double LockedScale() { return m_LockedScale; }
|
||||
double LockedX() { return m_LockedX; }
|
||||
double LockedY() { return m_LockedY; }
|
||||
@ -475,6 +476,7 @@ public:
|
||||
virtual void PasteXformsAffine(bool pre) override;
|
||||
virtual void RandomXformsAffine(bool pre) override;
|
||||
virtual void FillBothAffines() override;
|
||||
virtual void SwapAffines() override;
|
||||
virtual void InitLockedScale() override;
|
||||
void FillAffineWithXform(Xform<T>* xform, bool pre);
|
||||
void ChangeLockedScale(T value);
|
||||
|
@ -85,9 +85,20 @@ void FractoriumSettings::EnsureDefaults()
|
||||
)
|
||||
FinalExt("png");
|
||||
|
||||
auto s = SaveFolder();
|
||||
auto s = OpenFolder();
|
||||
QDir dir(s);
|
||||
|
||||
if (s.isEmpty() || !dir.exists())
|
||||
{
|
||||
QStringList paths = QStandardPaths::standardLocations(QStandardPaths::DesktopLocation);
|
||||
|
||||
if (!paths.empty())
|
||||
OpenFolder(paths[0]);
|
||||
}
|
||||
|
||||
s = SaveFolder();
|
||||
dir = QDir(s);
|
||||
|
||||
if (s.isEmpty() || !dir.exists())
|
||||
{
|
||||
QStringList paths = QStandardPaths::standardLocations(QStandardPaths::DesktopLocation);
|
||||
|
@ -95,6 +95,7 @@ void Fractorium::InitXformsAffineUI()
|
||||
connect(ui.PostRandomButton, SIGNAL(clicked(bool)), this, SLOT(OnRandomAffineButtonClicked(bool)), Qt::QueuedConnection);
|
||||
connect(ui.PreAffineGroupBox, SIGNAL(toggled(bool)), this, SLOT(OnAffineGroupBoxToggled(bool)), Qt::QueuedConnection);
|
||||
connect(ui.PostAffineGroupBox, SIGNAL(toggled(bool)), this, SLOT(OnAffineGroupBoxToggled(bool)), Qt::QueuedConnection);
|
||||
connect(ui.SwapAffinesButton, SIGNAL(clicked(bool)), this, SLOT(OnSwapAffinesButtonClicked(bool)), Qt::QueuedConnection);
|
||||
connect(ui.ShowPreAffineAllRadio, SIGNAL(toggled(bool)), this, SLOT(OnAffineDrawAllCurrentRadioButtonToggled(bool)), Qt::QueuedConnection);
|
||||
connect(ui.ShowPreAffineCurrentRadio, SIGNAL(toggled(bool)), this, SLOT(OnAffineDrawAllCurrentRadioButtonToggled(bool)), Qt::QueuedConnection);
|
||||
connect(ui.ShowPreAffineSelectedRadio, SIGNAL(toggled(bool)), this, SLOT(OnAffineDrawAllCurrentRadioButtonToggled(bool)), Qt::QueuedConnection);
|
||||
@ -704,6 +705,27 @@ void Fractorium::OnAffineGroupBoxToggled(bool on)
|
||||
ui.GLDisplay->update();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Swap the values of the pre and post affines for the selected xforms.
|
||||
/// </summary>
|
||||
template <typename T>
|
||||
void FractoriumEmberController<T>::SwapAffines()
|
||||
{
|
||||
UpdateXform([&](Xform<T>* xform, size_t xfindex, size_t selIndex)
|
||||
{
|
||||
auto pre = xform->m_Affine;
|
||||
auto post = xform->m_Post;
|
||||
xform->m_Affine = post;
|
||||
xform->m_Post = pre;
|
||||
}, eXformUpdate::UPDATE_SELECTED);
|
||||
FillBothAffines();
|
||||
}
|
||||
|
||||
void Fractorium::OnSwapAffinesButtonClicked(bool checked)
|
||||
{
|
||||
m_Controller->SwapAffines();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Trigger a redraw which will show all, or only the current, circle affine transforms
|
||||
/// based on which radio buttons are selected.
|
||||
|
@ -224,16 +224,25 @@
|
||||
<property name="text">
|
||||
<string>Use</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Primary</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Device</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
|
@ -510,6 +510,7 @@ QStringList PaletteEditor::SetupOpenImagesDialog()
|
||||
m_FileDialog->setViewMode(QFileDialog::List);
|
||||
m_FileDialog->setFileMode(QFileDialog::ExistingFile);
|
||||
m_FileDialog->setAcceptMode(QFileDialog::AcceptOpen);
|
||||
m_FileDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
||||
#ifdef _WIN32
|
||||
m_FileDialog->setNameFilter("Image Files (*.png *.jpg *.bmp)");
|
||||
#else
|
||||
|
@ -636,8 +636,9 @@ void QssDialog::SetupFileDialog()
|
||||
if (!m_FileDialog)
|
||||
{
|
||||
m_FileDialog = new QFileDialog(this);
|
||||
m_FileDialog->setDirectory(m_Parent->m_SettingsPath);
|
||||
m_FileDialog->setViewMode(QFileDialog::List);
|
||||
m_FileDialog->setDirectory(m_Parent->m_SettingsPath);
|
||||
m_FileDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -242,6 +242,10 @@ bool SpinBox::eventFilter(QObject* o, QEvent* e)
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (dynamic_cast<QKeyEvent*>(e))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -259,7 +263,7 @@ void SpinBox::keyPressEvent(QKeyEvent* ke)
|
||||
bool shift = QGuiApplication::keyboardModifiers().testFlag(Qt::ShiftModifier);
|
||||
bool ctrl = QGuiApplication::keyboardModifiers().testFlag(Qt::ControlModifier);
|
||||
|
||||
if (ke->key() == Qt::Key_Plus || ke->key() == Qt::Key_Equal || ke->key() == Qt::Key_Up)
|
||||
if (ke->key() == Qt::Key_Up)
|
||||
{
|
||||
if (shift)
|
||||
{
|
||||
@ -271,8 +275,10 @@ void SpinBox::keyPressEvent(QKeyEvent* ke)
|
||||
setSingleStep(m_Step);
|
||||
setValue(value() + (ctrl ? m_Step * 10 : m_Step));
|
||||
}
|
||||
|
||||
ke->accept();
|
||||
}
|
||||
else if (ke->key() == Qt::Key_Minus || ke->key() == Qt::Key_Underscore || ke->key() == Qt::Key_Down)
|
||||
else if (ke->key() == Qt::Key_Down)
|
||||
{
|
||||
if (shift)
|
||||
{
|
||||
@ -284,6 +290,8 @@ void SpinBox::keyPressEvent(QKeyEvent* ke)
|
||||
setSingleStep(m_Step);
|
||||
setValue(value() - (ctrl ? m_Step * 10 : m_Step));
|
||||
}
|
||||
|
||||
ke->accept();
|
||||
}
|
||||
else
|
||||
QSpinBox::keyPressEvent(ke);
|
||||
|
6
debian/changelog
vendored
6
debian/changelog
vendored
@ -1,3 +1,9 @@
|
||||
fractorium (1.0.0.12-0ubuntu1) cosmic; urgency=low
|
||||
|
||||
* release 1.0.0.12
|
||||
|
||||
-- Matt Feemster <matt.feemster@gmail.com> Sun, 30 Sep 2018 10:35:26 -0700
|
||||
|
||||
fractorium (1.0.0.11d-0ubuntu1) cosmic; urgency=low
|
||||
|
||||
* release 1.0.0.11
|
||||
|
@ -14,7 +14,7 @@ REM libjpeg
|
||||
copy fractorium\Builds\MSVC\WIN32.MAK libjpeg
|
||||
cd libjpeg
|
||||
nmake /f makefile.vc setup-v15 CPU=i386
|
||||
nmake nodebug=1 /f makefile.vc all CPU=i386
|
||||
nmake nodebug=1 /f makefile.vc libjpeg.lib CPU=i386
|
||||
copy libjpeg.lib ..\fractorium\Deps
|
||||
cd ..
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user