--User changes

-Fix stylesheets.
-Make various fields in the options window be resettable via double click.
-Get stylesheets working properly on Windows and Linux with Qt6.
-Set default style to Fusion.

--Code changes
-Get build and deployment scripts working with latest versions of Qt6, AppImage, and various library dependencies.
-Add two new macros so it would build with the latest gcc: SINGLETON_DERIVED_DECL_T and SINGLETON_DERIVED_IMPL_T.
-Small changes to opencl.hpp.
-Center progress bars on Linux.
-Proper sizing of vertical header on the xaos visualization table on Linux.
This commit is contained in:
Person
2023-06-22 19:25:53 -06:00
parent 6b641d233d
commit 484b2e3123
20 changed files with 843 additions and 765 deletions

View File

@ -193,15 +193,15 @@
<attribute name="verticalHeaderVisible">
<bool>false</bool>
</attribute>
<attribute name="verticalHeaderMinimumSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderDefaultSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderHighlightSections">
<bool>false</bool>
</attribute>
<attribute name="verticalHeaderMinimumSectionSize">
<number>22</number>
</attribute>
<row>
<property name="text">
<string>AMD</string>
@ -221,25 +221,16 @@
<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>
@ -290,36 +281,36 @@
</widget>
</item>
<item row="1" column="1">
<widget class="QSpinBox" name="OpenCLQualitySpin">
<widget class="SpinBox" name="OpenCLQualitySpin" native="true">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default quality per device to use for the interactive renderer when using OpenCL.&lt;/p&gt;&lt;p&gt;30 is a good number for this, but you can use a larger value if you have a faster GPU.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="prefix">
<property name="prefix" stdset="0">
<string>OpenCL Quality </string>
</property>
<property name="minimum">
<property name="minimum" stdset="0">
<number>1</number>
</property>
<property name="maximum">
<property name="maximum" stdset="0">
<number>99999</number>
</property>
<property name="value">
<property name="value" stdset="0">
<number>30</number>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QSpinBox" name="OpenCLSubBatchSpin">
<widget class="SpinBox" name="OpenCLSubBatchSpin" native="true">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The number of ~8M iteration chunks ran using OpenCL in interactive mode for each mouse movement.&lt;/p&gt;&lt;p&gt;Increase this number for a higher quality image on each mouse movement, at the expense of responsiveness.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="prefix">
<property name="prefix" stdset="0">
<string>OpenCL chunks per mouse movement </string>
</property>
<property name="minimum">
<property name="minimum" stdset="0">
<number>1</number>
</property>
<property name="maximum">
<property name="maximum" stdset="0">
<number>100</number>
</property>
</widget>
@ -372,93 +363,93 @@
</widget>
</item>
<item row="0" column="1">
<widget class="QSpinBox" name="CpuSubBatchSpin">
<widget class="SpinBox" name="CpuSubBatchSpin" native="true">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The number of ~10,000 iteration chunks ran per thread on the CPU in interactive mode for each mouse movement.&lt;/p&gt;&lt;p&gt;Increase this number for a higher quality image on each mouse movement, at the expense of responsiveness.&lt;/p&gt;&lt;p&gt;The number of iterations done in each chunk is controlled by the Sub Batch Size field in the Flame tab.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="prefix">
<property name="prefix" stdset="0">
<string>CPU chunks per mouse movement </string>
</property>
<property name="minimum">
<property name="minimum" stdset="0">
<number>1</number>
</property>
<property name="maximum">
<property name="maximum" stdset="0">
<number>100</number>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QSpinBox" name="ThreadCountSpin">
<widget class="SpinBox" name="ThreadCountSpin" native="true">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The number of threads to use with CPU rendering.&lt;/p&gt;&lt;p&gt;Decrease for more responsive editing, increase for better performance.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="prefix">
<property name="prefix" stdset="0">
<string>Threads </string>
</property>
<property name="minimum">
<property name="minimum" stdset="0">
<number>1</number>
</property>
<property name="maximum">
<property name="maximum" stdset="0">
<number>64</number>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QSpinBox" name="RandomCountSpin">
<widget class="SpinBox" name="RandomCountSpin" native="true">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The number of random flames to generate on startup.&lt;/p&gt;&lt;p&gt;These are usually of low quality, so leave the count as 1 unless you are searching for good randoms.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="prefix">
<property name="prefix" stdset="0">
<string>Randoms </string>
</property>
<property name="minimum">
<property name="minimum" stdset="0">
<number>1</number>
</property>
<property name="maximum">
<property name="maximum" stdset="0">
<number>99999</number>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QDoubleSpinBox" name="OpenCLSubBatchPctSpin">
<widget class="DoubleSpinBox" name="OpenCLSubBatchPctSpin" native="true">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The percentage of a sub batch to execute on each thread per kernel call when using OpenCL in interactive mode. Default: 0.025 (256 iters).&lt;/p&gt;&lt;p&gt;Increase this number for a higher quality image on each mouse movement, at the expense of responsiveness.&lt;/p&gt;&lt;p&gt;Note that this can cause a crash and subsequent restart of the graphics driver if each kernel call takes too long. So reduce the value if you encounter such a problem.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="prefix">
<property name="prefix" stdset="0">
<string>OpenCL sub batch percent per thread </string>
</property>
<property name="decimals">
<property name="decimals" stdset="0">
<number>3</number>
</property>
<property name="minimum">
<property name="minimum" stdset="0">
<double>0.010000000000000</double>
</property>
<property name="maximum">
<property name="maximum" stdset="0">
<double>1.000000000000000</double>
</property>
<property name="singleStep">
<property name="singleStep" stdset="0">
<double>0.010000000000000</double>
</property>
<property name="value">
<property name="value" stdset="0">
<double>0.025000000000000</double>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QSpinBox" name="CpuQualitySpin">
<widget class="SpinBox" name="CpuQualitySpin" native="true">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default quality to use for the interactive renderer when using the CPU.&lt;/p&gt;&lt;p&gt;10 is a good number for this, but you can use a larger value if you have a faster system.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="prefix">
<property name="prefix" stdset="0">
<string>CPU Quality </string>
</property>
<property name="minimum">
<property name="minimum" stdset="0">
<number>1</number>
</property>
<property name="maximum">
<property name="maximum" stdset="0">
<number>99999</number>
</property>
<property name="value">
<property name="value" stdset="0">
<number>10</number>
</property>
</widget>
@ -638,30 +629,30 @@
<attribute name="horizontalHeaderCascadingSectionResizes">
<bool>false</bool>
</attribute>
<attribute name="horizontalHeaderMinimumSectionSize">
<number>35</number>
</attribute>
<attribute name="horizontalHeaderDefaultSectionSize">
<number>110</number>
</attribute>
<attribute name="horizontalHeaderHighlightSections">
<bool>false</bool>
</attribute>
<attribute name="horizontalHeaderMinimumSectionSize">
<number>35</number>
</attribute>
<attribute name="horizontalHeaderStretchLastSection">
<bool>true</bool>
</attribute>
<attribute name="verticalHeaderVisible">
<bool>false</bool>
</attribute>
<attribute name="verticalHeaderMinimumSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderDefaultSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderHighlightSections">
<bool>false</bool>
</attribute>
<attribute name="verticalHeaderMinimumSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderStretchLastSection">
<bool>false</bool>
</attribute>
@ -831,30 +822,30 @@
<attribute name="horizontalHeaderCascadingSectionResizes">
<bool>false</bool>
</attribute>
<attribute name="horizontalHeaderMinimumSectionSize">
<number>35</number>
</attribute>
<attribute name="horizontalHeaderDefaultSectionSize">
<number>110</number>
</attribute>
<attribute name="horizontalHeaderHighlightSections">
<bool>false</bool>
</attribute>
<attribute name="horizontalHeaderMinimumSectionSize">
<number>35</number>
</attribute>
<attribute name="horizontalHeaderStretchLastSection">
<bool>true</bool>
</attribute>
<attribute name="verticalHeaderVisible">
<bool>false</bool>
</attribute>
<attribute name="verticalHeaderMinimumSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderDefaultSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderHighlightSections">
<bool>false</bool>
</attribute>
<attribute name="verticalHeaderMinimumSectionSize">
<number>22</number>
</attribute>
<attribute name="verticalHeaderStretchLastSection">
<bool>false</bool>
</attribute>
@ -952,6 +943,18 @@
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>SpinBox</class>
<extends>QWidget</extends>
<header>spinbox.h</header>
</customwidget>
<customwidget>
<class>DoubleSpinBox</class>
<extends>QWidget</extends>
<header>doublespinbox.h</header>
</customwidget>
</customwidgets>
<tabstops>
<tabstop>EarlyClipCheckBox</tabstop>
<tabstop>OpenCLCheckBox</tabstop>