fractorium/Data/dark.qss

622 lines
11 KiB
Plaintext
Raw Normal View History

--User changes -Add new variations: bubbleT3D, crob, hexaplay3D, hexcrop, hexes, hexnix3D, loonie2, loonie3, nBlur, octapol and synth. -Allow for pre/post versions of dc_bubble, dc_cylinder and dc_linear whereas before they were omitted. -When saving a file with multiple embers in it, detect if time values are all the same and if so, start them at zero and increment by 1 for each ember. -Allow for numerous quality increases to be coalesced into one. It will pick up at the end of the current render. -Show selection highlight on variations tree in response to mouse hover. This makes it easier to see for which variation or param the current mouse wheel action will apply. -Make default temporal samples be 100, whereas before it was 1000 which was overkill. -Require the shift key to be held with delete for deleting an ember to prevent it from triggering when the user enters delete in the edit box. -This wasn't otherwise fixable without writing a lot more code. --Bug fixes -EmberGenome was crashing when generating a sequence from a source file with more than 2 embers in it. -EmberGenome was improperly handling the first frame of a merge after the last frame of the loop. -These bugs were due to a previous commit. Revert parts of that commit. -Prevent a zoom value of less than 0 when reading from xml. -Slight optimization of the crescents, and mask variations, if the compiler wasn't doing it already. -Unique file naming was broken because it was looking for _# and the default names ended with -#. -Disallow renaming of an ember in the library tree to an empty string. -Severe bug that prevented some variations from being read correctly from params generated outside this program. -Severe OpenCL randomization bug. The first x coordinates of the first points in the first kernel call of the first ember of a render since the OpenCL renderer object was created were not random and were mostly -1. -Severe bug when populating xform selection distributions that could sometimes cause a crash due to roundoff error. Fix by using double. -Limit the max number of variations in a random ember to MAX_CL_VARS, which is 8. This ensures they'll look the same on CPU and GPU. -Prevent user from saving stylesheet to default.qss, it's a special reserved filename. --Code changes -Generalize using the running sum output point inside of a variation for all cases: pre, reg and post. -Allow for array variables in variations where the address of each element is stored in m_Params. -Qualify all math functions with std:: -No longer use our own Clamp() in OpenCL, instead use the standard clamp(). -Redesign how functions are used in the variations OpenCL code. -Add tests to EmberTester to verify some of the new functionality. -Place more const and override qualifiers on functions where appropriate. -Add a global rand with a lock to be used very sparingly. -Use a map instead of a vector for bad param names in Xml parsing. -Prefix affine interpolation mode defines with "AFFINE_" to make their purpose more clear. -Allow for variations that change state during iteration by sending a separate copy of the ember to each rendering thread. -Implement this same functionality with a local struct in OpenCL. It's members are the total of all variables that need to change state within an ember. -Add Contains() function to Utils.h. -EmberRender: print names of kernels being printed with --dump_kernel option. -Clean up EmberTester to handle some of the recent changes. -Fix various casts. -Replace % 2 with & 1, even though the compiler was likely doing this already. -Add new file Variations06.h to accommodate new variations. -General cleanup.
2015-11-22 17:15:07 -05:00
/*---Base Style---
This is needed to deal with the large tabs in the fusion theme which is the default on Linux, and optional on Windows.
It's not needed for other themes.
You should keep this at the top of whatever custom style you make to ensure the tabs aren't unusually large.*/
QTabBar::tab { height: 5ex; }/*Do this for windows*/
/*QTabBar::tab { height: 3ex; }*//*Do this for linux*/
/*This is needed to give the labels on the status bar some padding.*/
QStatusBar QLabel { padding-left: 2px; padding-right: 2px; }
/*Specific styles below this line*/
QObject
{
background-color : rgb(53, 53, 53);
color: darkgray;
alternate-background-color: rgb(53, 53, 53);
selection-color: black;
selection-background-color: rgb(42, 130, 218);
}
QObject:disabled
{
color: rgb(35, 35, 35);
background-color: rgb(53, 53, 53);
border-color: rgb(35, 35, 35);
}
QDockWidget::float-button
{
background-color: gray;
}
QDockWidget::title
{
margin: 1px;
padding: 2px;
background-color: gray;
}
QTabWidget::pane
{
border: 1px solid gray;
}
QPushButton
{
margin: 1px;
padding: 4px;
border: 1px solid gray;
}
QPushButton:pressed
{
background-color: gray;
}
QPushButton:focus
{
outline: none;
}
QTableView QPushButton
{
border: 1px solid gray;
margin: 1px;
padding: 0px;
}
QLineEdit, QTextEdit
{
border: 1px solid gray;
color: darkgray;
background-color: rgb(40, 40, 50);
selection-background-color: darkgray;
}
QToolTip
{
background-color: darkgray;
border: 1px solid darkgray;
}
QSpinBox,
QDoubleSpinBox
{
padding-right: 0px;
color: darkgray;
selection-background-color: darkgray;
font: 9pt "Segoe UI";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
}
QCheckBox
{
spacing: 5px;
}
QCheckBox::indicator,
QTableView::indicator
{
border: none;
border-radius: 2px;
background-color: lightgray;
}
QCheckBox::indicator:enabled:unchecked,
QTableView::indicator:enabled:unchecked
{
background-color: lightgray;
image: url(:/Fractorium/Icons/checkbox_unchecked.png);
}
QCheckBox::indicator:enabled:checked,
QTableView::indicator:enabled:checked
{
background-color: lightgray;
image: url(:/Fractorium/Icons/checkbox_checked.png);
}
QCheckBox::indicator:disabled:unchecked,
QTableView::indicator:disabled:unchecked
{
background-color: gray;
image: none;
}
QCheckBox::indicator:disabled:checked,
QTableView::indicator:disabled:checked
{
background-color: gray;
image: none;
}
QRadioButton::indicator:checked
{
background-color: black;
border: 2px solid gray;
border-radius: 7px;
width: 8px;
height: 8px;
margin: 3px;
padding: 1px;
}
QRadioButton::indicator:checked:disabled
{
background-color: rgb(35, 35, 35);
}
QRadioButton::indicator:unchecked
{
border: 2px solid gray;
border-radius: 7px;
width: 8px;
height: 8px;
margin: 3px;
padding: 1px;
}
QComboBox
{
margin: 0px;
padding-left: 4px;
border: 1px solid gray;
}
QComboBox::down-arrow:enabled
{
border: 1px solid gray;
margin-right: 2px;
margin-top: 0px;
margin-bottom: 1px;
}
QComboBox::down-arrow:disabled
{
border: 1px solid rgb(35, 35, 35);
margin-right: 2px;
margin-top: 0px;
margin-bottom: 1px;
}
QComboBox::drop-down
{
border: none;
}
/*For some reason this is needed with Fusion, but not with Windows*/
QComboBox::item:selected
{
selection-background-color: darkgray;
}
QComboBox QAbstractItemView
{
border: 1px solid gray;
outline: none;
selection-background-color: darkgray;
}
QTableView QComboBox
{
margin: 1px;
padding: 0px;
padding-left: 3px;
}
QGroupBox QComboBox
{
margin: 1px;
margin-bottom: 0px;
}
QTableView QComboBox::down-arrow
{
margin-top: 0px;
margin-right: 1px;
margin-bottom: 0px;
}
QProgressBar
{
color: black;
background-color: gray;
border: 0px none gray;
border-radius: 3px;
text-align: center;
}
QProgressBar::chunk
{
border-radius: 3px;
background-color: lightgray;
}
QStatusBar QProgressBar
{
min-width: 300px;
max-width: 300px;
margin-right: 4px;
}
QMenuBar
{
border-bottom: 1px solid gray;
}
QMenuBar::item
{
background-color: rgb(53, 53, 53);
}
QMenu::item:disabled
{
color: rgb(35, 35, 35);
}
QMenu::item:enabled:selected
{
background-color: gray;
}
QMenu::item:disabled:selected
{
background-color: rgb(53, 53, 53);
}
QToolBar
{
border: 0px none gray;
}
QGroupBox
{
padding-top: 3px;
border: 2px solid gray;
border-radius: 4px;
margin-top: 3ex;
}
QGroupBox::title
{
subcontrol-origin: border;
subcontrol-position: top left;
margin-top: -1ex;
margin-left: 0px;
padding-right: 1px;
padding-left: 2px;
top: -2ex;
left: 8px;
}
QListView
{
selection-color: black;
selection-background-color: darkgray;
}
QListView::item:selected
{
background-color: darkgray;
}
QTreeView
{
border: 1px solid gray;
background-color: rgb(53, 53, 53);
}
/*Setting this gives a more consistent look, but removes the ability to gray variations that are included in the xform*/
QTreeView::item
{
background-color: rgb(53, 53, 53);
color: darkgray;
outline: none;
margin-right: 1px;
}
QTreeView::item:hover
{
border: 0px none black;
background-color: gray;
outline: none;
}
QTreeView::item:selected
{
border: 0px none black;
background-color: gray;
outline: none;
}
QTreeView::branch:!has-children
{
background: rgb(53, 53, 53);
}
QTreeView::branch:has-children:closed
{
border: 1px solid darkgray;
background: gray;
margin: 2px;
}
QTreeView::branch:has-children:!closed
{
border: 1px solid lightgray;
background: gray;
margin-left: 1px;
margin-right: 0px;
margin-top: 3px;
margin-bottom: 3px;
}
QTableView
{
border-left: 0px none gray;
border-top: 0px none gray;
border-right: 0px none gray;
border-bottom: 0px none gray;
gridline-color: gray;
color: darkgray;
selection-color: darkgray;
selection-background-color: rgb(53, 53, 53);
}
QTableView QTableCornerButton::section:enabled
{
background-color: darkgray;
}
QTableView QTableCornerButton::section:disabled
{
background-color: rgb(53, 53, 53);
}
QTableView::indicator:disabled
{
background-color: rgb(35, 35, 35);
}
QTableView:disabled
{
color: rgb(35, 35, 35);
border: none;
gridline-color: rgb(35, 35, 35);
}
QHeaderView::section::vertical:enabled
{
color: black;
background-color: gray;
border: none;
border-bottom: 1px solid gray;
padding: 4px;
}
QHeaderView::section::horizontal:enabled
{
color: black;
background-color: darkgray;
border: 0px solid darkgray;
border-right: 1px solid gray;
padding: 4px;
}
QHeaderView::section::vertical:disabled
{
color: rgb(35, 35, 35);
background-color: rgb(53, 53, 53);
border: 0px none darkgray;
border-bottom: 1px solid rgb(53, 53, 53);
padding: 4px;
}
QHeaderView::section::horizontal:disabled
{
color:rgb(35, 35, 35);
background-color: rgb(53, 53, 53);
border: 0px none darkgray;
border-right: 1px solid rgb(53, 53, 53);
padding: 4px;
}
QScrollBar::vertical
{
background-color: darkgray;
border: 0px solid darkgray;
width: 15px;
margin: 22px 0 22px 0;
}
QScrollBar::handle::vertical
{
background-color: gray;
border-top: 1px solid darkgray;
border-bottom: 1px solid darkgray;
min-height: 20px;
}
QScrollBar::add-line::vertical
{
border: 0px solid darkgray;
background-color: gray;
height: 22px;
subcontrol-position: bottom;
subcontrol-origin: margin;
}
QScrollBar::sub-line::vertical
{
border: 0px solid darkgray;
background-color: gray;
height: 22px;
subcontrol-position: top;
subcontrol-origin: margin;
}
QScrollBar::up-arrow::vertical, QScrollBar::down-arrow::vertical
{
border: 2px solid darkgray;
width: 5px;
height: 12px;
background-color: gray;
}
QScrollBar::add-page::vertical, QScrollBar::sub-page::vertical, QScrollBar::add-page::horizontal, QScrollBar::sub-page::horizontal
{
background-color: darkgray;
}
QScrollBar::horizontal
{
background-color: darkgray;
border: 0px solid darkgray;
height: 15px;
margin: 0px 20px 0 20px;
}
QScrollBar::handle::horizontal
{
background-color: gray;
border-left: 1px solid darkgray;
border-right: 1px solid darkgray;
min-width: 20px;
}
QScrollBar::add-line::horizontal
{
border: 0px solid darkgray;
background-color: gray;
width: 20px;
subcontrol-position: right;
subcontrol-origin: margin;
}
QScrollBar::sub-line::horizontal
{
border: 0px solid darkgray;
background-color: gray;
width: 20px;
subcontrol-position: left;
subcontrol-origin: margin;
}
QScrollBar::left-arrow::horizontal, QScrollBar::right-arrow::horizontal
{
border: 2px solid darkgray;
width: 12px;
height: 5px;
background-color: gray;
}
QMenu::separator
{
height: 1px;
background-color: gray;
}
QToolBar::separator
{
width: 1px;
margin-top: 3px;
margin-bottom: 2px;
background-color: gray;
}
QStatusBar::item
{
border: none;
}
/*Specific controls*/
QTableWidget#ColorTableHeader QHeaderView::section::horizontal,
QTableWidget#GeometryTableHeader QHeaderView::section::horizontal,
QTableWidget#FilterTableHeader QHeaderView::section::horizontal,
QTableWidget#IterationTableHeader QHeaderView::section::horizontal,
--User changes -Allow for pausing the renderer in the main window. This makes is more efficient when entering many parameters, such as when following a tutorial. -Add support for new variations: erf, gamma, jac_cn, jac_dn, jac_sn, logDB, pressure_wave, pRose3D, splits3D, w, waves2b, x, xerf, y, z. -Inform user of the start and stop of file parsing in EmberAnimate because the files could potentially be very large. -Move the follwing fields to a new table called Animation: Interpolation, Affine Interpolation, Temporal Samples, Temporal Filter Width, Temporal Filter Type. -These currently have no effect on the interactive renderer and instead are used when running flames through EmberGenome to generate sequences, and then animating them in Fractorium or EmberAnimate. -Add new parameter overrides for EmberRender and EmberAnimate which directly assign values to all flames being rendered, rather than scale: --quality --demin --demax --Bug fixes -Left pad instead of right pad names of sequence outputs from EmberGenome. -Unique file naming was broken for files which already had an underscore in them. -Properly report that png is the default format of EmberRender and EmberAnimate output instead of erroneously claiming it was jpg. -Make command line programs search these folders in this order for the palette file: ./ ~/.fractorium ~/.config/fractorium /usr/share/fractorium /usr/local/share/fractorium -Fix possible bad values in hexes. -Better assignment of Z variables. -Fix boarders due to use of poorly implemented rint() function from flam3. Use std::rint() now. -wedge_sph was completely wrong due to having accidentally swapped the mapping of two parameters. -Make juliascope juliascope_power parameter be of type REAL_NONZERO since it's used as a denominator. -Make Z assignment compatible with the originals in: -arch, bcircle, bCollide, bent, bent2, bisplit, blob, blur_linear, blur_square, bMod, boarders, boarders2, bSwirl, bTransform, butterfly, cardioid, cell, circleblur, circlize, circlize2, circus, collideoscope, cos, cosine, cosh, coth, cpow, cpow2, crescents, cropn, csc, csch, curl, curve, dc_gridout, deltaa, diamond, disc2, eclipse, eCollide, edisc, eJulia, elliptic, eMod, eMotion, ennepers, epispiral, ePush, eRotate, eScale, eSwirl, ex, exp, expo, exponential, fan, fdisc, fibonacci, fibonacci2, fisheye, flipcircle, flipy, flower, flux, funnel, glynnia, GlynnSim1, GlynnSim2, GlynnSim3, gridout, handkerchief, heart, hole, idisc, julia, julian2, juliaNab, kaleidoscope, lazyTravis, Lissajous, mask, MobiusN, mobius_strip, modulus, murl, murl2, npolar, ortho, oscilloscope, parabola, perspective, petal, phoenix_julia, pie (was also inconsistent between cpu and gpu), poincare, popcorn, popcorn2, power, pow_block, rational3, rays, rblur, rings, rippled, roundspher, sec, secant2, sigmoid, sin, sineblur, sinh, sinusgrid, sphericaln, spiralwing, spirograph, split, squarize, squirrel, squish, sschecks, starblur, stripes, stwin, super_shape, tan, tancos, tangent, tanh, TwinTrian, twoface, unpolar, waves, wavesn, wedge_julia, whorl, xheart, zblur, zscale. --Code changes -Generalize Variation::PrecalcHelper() and rename to PrePostPrecalcHelper(). --Do the same for the OpenCL version and rename it PrePostPrecalcOpenCLString(). -Rename Variation::m_AssignType to m_PrePostAssignType since it's only relevant to pre/post variations.
2016-01-29 20:02:15 -05:00
QTableWidget#AnimationTableHeader QHeaderView::section::horizontal,
--User changes -Add new variations: bubbleT3D, crob, hexaplay3D, hexcrop, hexes, hexnix3D, loonie2, loonie3, nBlur, octapol and synth. -Allow for pre/post versions of dc_bubble, dc_cylinder and dc_linear whereas before they were omitted. -When saving a file with multiple embers in it, detect if time values are all the same and if so, start them at zero and increment by 1 for each ember. -Allow for numerous quality increases to be coalesced into one. It will pick up at the end of the current render. -Show selection highlight on variations tree in response to mouse hover. This makes it easier to see for which variation or param the current mouse wheel action will apply. -Make default temporal samples be 100, whereas before it was 1000 which was overkill. -Require the shift key to be held with delete for deleting an ember to prevent it from triggering when the user enters delete in the edit box. -This wasn't otherwise fixable without writing a lot more code. --Bug fixes -EmberGenome was crashing when generating a sequence from a source file with more than 2 embers in it. -EmberGenome was improperly handling the first frame of a merge after the last frame of the loop. -These bugs were due to a previous commit. Revert parts of that commit. -Prevent a zoom value of less than 0 when reading from xml. -Slight optimization of the crescents, and mask variations, if the compiler wasn't doing it already. -Unique file naming was broken because it was looking for _# and the default names ended with -#. -Disallow renaming of an ember in the library tree to an empty string. -Severe bug that prevented some variations from being read correctly from params generated outside this program. -Severe OpenCL randomization bug. The first x coordinates of the first points in the first kernel call of the first ember of a render since the OpenCL renderer object was created were not random and were mostly -1. -Severe bug when populating xform selection distributions that could sometimes cause a crash due to roundoff error. Fix by using double. -Limit the max number of variations in a random ember to MAX_CL_VARS, which is 8. This ensures they'll look the same on CPU and GPU. -Prevent user from saving stylesheet to default.qss, it's a special reserved filename. --Code changes -Generalize using the running sum output point inside of a variation for all cases: pre, reg and post. -Allow for array variables in variations where the address of each element is stored in m_Params. -Qualify all math functions with std:: -No longer use our own Clamp() in OpenCL, instead use the standard clamp(). -Redesign how functions are used in the variations OpenCL code. -Add tests to EmberTester to verify some of the new functionality. -Place more const and override qualifiers on functions where appropriate. -Add a global rand with a lock to be used very sparingly. -Use a map instead of a vector for bad param names in Xml parsing. -Prefix affine interpolation mode defines with "AFFINE_" to make their purpose more clear. -Allow for variations that change state during iteration by sending a separate copy of the ember to each rendering thread. -Implement this same functionality with a local struct in OpenCL. It's members are the total of all variables that need to change state within an ember. -Add Contains() function to Utils.h. -EmberRender: print names of kernels being printed with --dump_kernel option. -Clean up EmberTester to handle some of the recent changes. -Fix various casts. -Replace % 2 with & 1, even though the compiler was likely doing this already. -Add new file Variations06.h to accommodate new variations. -General cleanup.
2015-11-22 17:15:07 -05:00
QTreeWidget#LibraryTree QHeaderView::section::horizontal
{
border-right: none;
}
QTableWidget#ColorTable,
QTableWidget#GeometryTable,
QTableWidget#FilterTable,
QTableWidget#IterationTable,
--User changes -Allow for pausing the renderer in the main window. This makes is more efficient when entering many parameters, such as when following a tutorial. -Add support for new variations: erf, gamma, jac_cn, jac_dn, jac_sn, logDB, pressure_wave, pRose3D, splits3D, w, waves2b, x, xerf, y, z. -Inform user of the start and stop of file parsing in EmberAnimate because the files could potentially be very large. -Move the follwing fields to a new table called Animation: Interpolation, Affine Interpolation, Temporal Samples, Temporal Filter Width, Temporal Filter Type. -These currently have no effect on the interactive renderer and instead are used when running flames through EmberGenome to generate sequences, and then animating them in Fractorium or EmberAnimate. -Add new parameter overrides for EmberRender and EmberAnimate which directly assign values to all flames being rendered, rather than scale: --quality --demin --demax --Bug fixes -Left pad instead of right pad names of sequence outputs from EmberGenome. -Unique file naming was broken for files which already had an underscore in them. -Properly report that png is the default format of EmberRender and EmberAnimate output instead of erroneously claiming it was jpg. -Make command line programs search these folders in this order for the palette file: ./ ~/.fractorium ~/.config/fractorium /usr/share/fractorium /usr/local/share/fractorium -Fix possible bad values in hexes. -Better assignment of Z variables. -Fix boarders due to use of poorly implemented rint() function from flam3. Use std::rint() now. -wedge_sph was completely wrong due to having accidentally swapped the mapping of two parameters. -Make juliascope juliascope_power parameter be of type REAL_NONZERO since it's used as a denominator. -Make Z assignment compatible with the originals in: -arch, bcircle, bCollide, bent, bent2, bisplit, blob, blur_linear, blur_square, bMod, boarders, boarders2, bSwirl, bTransform, butterfly, cardioid, cell, circleblur, circlize, circlize2, circus, collideoscope, cos, cosine, cosh, coth, cpow, cpow2, crescents, cropn, csc, csch, curl, curve, dc_gridout, deltaa, diamond, disc2, eclipse, eCollide, edisc, eJulia, elliptic, eMod, eMotion, ennepers, epispiral, ePush, eRotate, eScale, eSwirl, ex, exp, expo, exponential, fan, fdisc, fibonacci, fibonacci2, fisheye, flipcircle, flipy, flower, flux, funnel, glynnia, GlynnSim1, GlynnSim2, GlynnSim3, gridout, handkerchief, heart, hole, idisc, julia, julian2, juliaNab, kaleidoscope, lazyTravis, Lissajous, mask, MobiusN, mobius_strip, modulus, murl, murl2, npolar, ortho, oscilloscope, parabola, perspective, petal, phoenix_julia, pie (was also inconsistent between cpu and gpu), poincare, popcorn, popcorn2, power, pow_block, rational3, rays, rblur, rings, rippled, roundspher, sec, secant2, sigmoid, sin, sineblur, sinh, sinusgrid, sphericaln, spiralwing, spirograph, split, squarize, squirrel, squish, sschecks, starblur, stripes, stwin, super_shape, tan, tancos, tangent, tanh, TwinTrian, twoface, unpolar, waves, wavesn, wedge_julia, whorl, xheart, zblur, zscale. --Code changes -Generalize Variation::PrecalcHelper() and rename to PrePostPrecalcHelper(). --Do the same for the OpenCL version and rename it PrePostPrecalcOpenCLString(). -Rename Variation::m_AssignType to m_PrePostAssignType since it's only relevant to pre/post variations.
2016-01-29 20:02:15 -05:00
QTableWidget#AnimationTable,
--User changes -Add new variations: bubbleT3D, crob, hexaplay3D, hexcrop, hexes, hexnix3D, loonie2, loonie3, nBlur, octapol and synth. -Allow for pre/post versions of dc_bubble, dc_cylinder and dc_linear whereas before they were omitted. -When saving a file with multiple embers in it, detect if time values are all the same and if so, start them at zero and increment by 1 for each ember. -Allow for numerous quality increases to be coalesced into one. It will pick up at the end of the current render. -Show selection highlight on variations tree in response to mouse hover. This makes it easier to see for which variation or param the current mouse wheel action will apply. -Make default temporal samples be 100, whereas before it was 1000 which was overkill. -Require the shift key to be held with delete for deleting an ember to prevent it from triggering when the user enters delete in the edit box. -This wasn't otherwise fixable without writing a lot more code. --Bug fixes -EmberGenome was crashing when generating a sequence from a source file with more than 2 embers in it. -EmberGenome was improperly handling the first frame of a merge after the last frame of the loop. -These bugs were due to a previous commit. Revert parts of that commit. -Prevent a zoom value of less than 0 when reading from xml. -Slight optimization of the crescents, and mask variations, if the compiler wasn't doing it already. -Unique file naming was broken because it was looking for _# and the default names ended with -#. -Disallow renaming of an ember in the library tree to an empty string. -Severe bug that prevented some variations from being read correctly from params generated outside this program. -Severe OpenCL randomization bug. The first x coordinates of the first points in the first kernel call of the first ember of a render since the OpenCL renderer object was created were not random and were mostly -1. -Severe bug when populating xform selection distributions that could sometimes cause a crash due to roundoff error. Fix by using double. -Limit the max number of variations in a random ember to MAX_CL_VARS, which is 8. This ensures they'll look the same on CPU and GPU. -Prevent user from saving stylesheet to default.qss, it's a special reserved filename. --Code changes -Generalize using the running sum output point inside of a variation for all cases: pre, reg and post. -Allow for array variables in variations where the address of each element is stored in m_Params. -Qualify all math functions with std:: -No longer use our own Clamp() in OpenCL, instead use the standard clamp(). -Redesign how functions are used in the variations OpenCL code. -Add tests to EmberTester to verify some of the new functionality. -Place more const and override qualifiers on functions where appropriate. -Add a global rand with a lock to be used very sparingly. -Use a map instead of a vector for bad param names in Xml parsing. -Prefix affine interpolation mode defines with "AFFINE_" to make their purpose more clear. -Allow for variations that change state during iteration by sending a separate copy of the ember to each rendering thread. -Implement this same functionality with a local struct in OpenCL. It's members are the total of all variables that need to change state within an ember. -Add Contains() function to Utils.h. -EmberRender: print names of kernels being printed with --dump_kernel option. -Clean up EmberTester to handle some of the recent changes. -Fix various casts. -Replace % 2 with & 1, even though the compiler was likely doing this already. -Add new file Variations06.h to accommodate new variations. -General cleanup.
2015-11-22 17:15:07 -05:00
QTableWidget#XformWeightNameTable
{
border-left: 1px solid gray;
}
QTableWidget#SummaryTable,
QTableWidget#PaletteListTable
{
border-left: 1px solid gray;
}
QTableWidget#SummaryTable QHeaderView::section::vertical
{
background-color: darkgray;
}
QTableWidget#PaletteAdjustTable,
QTableWidget#PalettePreviewTable,
QTableWidget#XformColorIndexTable,
QTableWidget#XformColorValuesTable,
QTableWidget#InfoBoundsTable,
QTableWidget#OptionsXmlSavingTable,
QTableWidget#OptionsIdentityTable,
QTableWidget#FinalRenderSizeTable,
QTableWidget#FinalRenderParamsTable
{
border-left: 1px solid gray;
border-top: 1px solid gray;
}
QLineEdit#PaletteFilterLineEdit,
QLineEdit#VariationsFilterLineEdit
{
height: 20px;
min-height: 20px;
max-height: 20px;
}
QSpinBox#ThreadCountSpin,
QSpinBox#RandomCountSpin,
QSpinBox#CpuSubBatchSpin,
QSpinBox#OpenCLSubBatchSpin,
QSpinBox#FinalRenderCurrentSpin,
QSpinBox#FinalRenderThreadCountSpin
{
padding: 2px;
border: 1px solid gray;
}
QSpinBox#ThreadCountSpin:disabled,
QSpinBox#CpuSubBatchSpin:disabled,
QSpinBox#OpenCLSubBatchSpin:disabled,
QSpinBox#FinalRenderCurrentSpin:disabled,
QSpinBox#FinalRenderThreadCountSpin:disabled
{
padding: 2px;
border: 1px solid rgb(35, 35, 35);
}
QTableView#FinalRenderParamsTable QComboBox
{
margin-top: 0px;
margin-bottom: 0px;
}
QTableView#FinalRenderParamsTable QPushButton
{
margin-top: 1px;
margin-bottom: 2px;
padding: 0px;
}