summaryrefslogtreecommitdiffhomepage
path: root/opentrack-compat/options.cpp
AgeCommit message (Collapse)Author
2016-07-06Revert "compat/options: export template instances to lessen code bloat"Stanislaw Halik
This reverts commit 1e26e00e9ae0c519355e3a6fe5ad098d1f6a9622. Broke osx.
2016-07-06compat/options: export template instances to lessen code bloatStanislaw Halik
2016-07-06compat/options: split too long headerStanislaw Halik
2016-07-03compat/options: fix and simplify slider supportStanislaw Halik
- Introduce rounding. Before, slider pos didn't correspond to the saved setting until it "converged" several saves later. - Move copy-pasted code to .cpp file.
2016-06-29compat/options: make inline to fix ltoStanislaw Halik
2016-06-20compat/options: inline methodStanislaw Halik
2016-06-14compat, proto/fsuipc: fix GNU CXX 6.1.0+ buildStanislaw Halik
Include cmath explicitly
2016-06-14compat/options: use traits to prevent slider min/max persistenceStanislaw Halik
Without it, the serialized min and max member vars were set in stone despite further code changes. Now only the current value is persisted. Add clamp for cur/min/max slider values. Store default value as t rather than underlying_t since it's always been casted anyway. Add trivial comment, update copyright.
2016-06-14compat/options: workaround lto bug on windowsStanislaw Halik
2016-06-14compat/options: slider_value improvementsStanislaw Halik
- a comparison operator. Qt uses it with the metatype support. - pretty print support for QDebug
2016-06-14compat/options: always do a full check of changesStanislaw Halik
Get rid of state variable and compare transient/saved state exactly. Marking the "modified" bit caused IO when changing and then changing back to the original value, then saving.
2016-06-14gui, spline-widget, compat/options: ensure no qsettings IO when not modifiedStanislaw Halik
Turns out every MainWindow::save() and friends were doing useless IO several times during each save. I blame the bundle abstraction. For bundles we track the modified state, but the spline widget needs equality check since it doesn't use the options api. It was found by accident when adding qDebug() into the slider_value {de,}serializer code. The .ini file was being rewritten over and over again causing hundres of milliseconds pauses on Windows. Remove the save timer kludge from gui. Saves are now fast.
2016-06-14compat/options: finish slider value supportStanislaw Halik
Keeping "cur" in 0->1 distorts the value on save/reload.
2016-05-26compat/options: finish slider value support moreStanislaw Halik
2016-05-25compat/options: konst korrektnessStanislaw Halik
2016-05-13many: remove unneeded implicit type conversion double <-> floatStanislaw Halik
2015-12-06compat/options: get rid of std::string usageStanislaw Halik
It's pointless to use it here.
2015-12-06compat/options: move from headerStanislaw Halik
2015-11-22compat/options: no need to heap-alloc hereStanislaw Halik
2015-11-01options: don't define options singleton in every moduleStanislaw Halik
Instead, define in opentrack-api.so only. Also, move to opentrack-compat to break a circular dependency