summaryrefslogtreecommitdiffhomepage
path: root/opentrack-compat
AgeCommit message (Collapse)Author
2016-06-29compat/options: also use references for base_value slotsStanislaw Halik
2016-06-29compat/options: separate module dll names from rest of settingsStanislaw Halik
The other settings are modified by the options dialog. These are in the main ui. We need to be able to save modules without saving the options dialog.
2016-06-29compat/options: make inline to fix ltoStanislaw Halik
2016-06-20compat/options: inline methodStanislaw Halik
2016-06-18compat, logic, api: fix export macro copy-paste errorsStanislaw Halik
2016-06-16all: split "api" into "api" and "logic"Stanislaw Halik
Here, the "logic" module has all the stuff for building one's own graphical user interface. The "api" module has stuff used by other trackers. While at it, each of "api", "logic", and "compat" need their own export headers. This is because of preprocessor symbol clashes. This is all because a change in the "gui"-only dependency required a relink of all the trackers, protocols, and flters. It takes too long when building in the release configuration. With the split, only the "gui" module gets rebuilt. Since it has close to no static dependencies, it's fast enough.
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-06-11compat/options: untested float->double signal supportStanislaw Halik
2016-06-10compat/timer: cleanup harmless warningsStanislaw Halik
2016-06-09compat/options: allow devirtualizeStanislaw Halik
2016-05-26compat/options: finish slider value support moreStanislaw Halik
2016-05-26compat/options: switch to correct QVariant usageStanislaw Halik
2016-05-26compat/mutex: drop const when casting mutexStanislaw Halik
Fixes const correctness in spline-widget
2016-05-26compat/options: don't emit a vtable for struct optsStanislaw Halik
It's for convenience in `struct settings' and not meant for casting to base class.
2016-05-25compat/options: allow binding floats 0->1 to slider widgetsStanislaw Halik
2016-05-25compat/options: konst korrektnessStanislaw Halik
2016-05-22{compat,api}/camera: make CoInitializeEx use the right threading apartmentStanislaw Halik
2016-05-22compat/sleep: include headers outside namespace scopeStanislaw Halik
2016-05-22cmake/many: update for dinput8 manual link removalStanislaw Halik
It's automatic now.
2016-05-17cmake/many: remove obsolete keywords from cmake macro invocationStanislaw Halik
2016-05-17cmake: work for shared library destructorsStanislaw Halik
Remove linker script usage. I'm worried about the potential interaction with shared libraries' _fini symbol for global destruction. Further, add -fuse-cxa-atexit in order to run the global destructors to begin with. This works on LLVM and GNU. MSVC doesn't export symbols by default.
2016-05-16compat/timer: add elapsed_seconds methodStanislaw Halik
2016-05-15many: remove executable bit from source filesStanislaw Halik
We no longer have this recurring problem since I enabled ignoring executable bit changes on the Windows workstation.
2016-05-13compat/shm: nix redundant castStanislaw Halik
2016-05-13many: remove unneeded implicit type conversion double <-> floatStanislaw Halik
2016-05-10compat/options: use auto connection type alwaysStanislaw Halik
I'm unsure whether the context object for QObject::connect overload we're using in enum support is treated as the connection's target thread at all. Docs are silent on this. In the meantime, no crashes or other anomalies observed, while violating Qt thread safety invariants resulted in immediate crashes beforehand. So let's use Qt::AutoConnection and not worry for the time being.
2016-05-09compat/options: add enum supportStanislaw 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-12-06api/camera-names: move to compat/Stanislaw Halik
2015-12-06compat/shm: fix buildStanislaw Halik
2015-12-03compat/shm: move header inclusion after guardStanislaw Halik
2015-12-03api, compat: clean up verbose fprintf logspamStanislaw Halik
2015-11-22compat/options: no need to heap-alloc hereStanislaw Halik
2015-11-11options: konst korrektnessStanislaw Halik
2015-11-05shm: set right permissions for the mappingStanislaw Halik
Fix a copy-paste error.
2015-11-02shm: guard pragma against non-GNUCStanislaw Halik
2015-11-01shm: fix winegcc on osx targetting 10.8Stanislaw Halik
see: [ 74%] Generating opentrack-wrapper-wine.exe.so In file included from /Users/sthalik/dev/opentrack/proto-wine/opentrack-wrapper-wine-windows.cxx:7: In file included from /Users/sthalik/dev/opentrack/opentrack-compat/shm.cpp:9: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cstdio:108:10: fatal error: 'support/win32/support.h' file not found ^ 1 error generated. winegcc: clang++ failed
2015-11-01shm: allow everyone to use the mapping on win32Stanislaw Halik
Issue: #261
2015-11-01options: whitespaceStanislaw 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
2015-11-01all: adjust options.hpp move to compatStanislaw Halik
2015-11-01cmake: export only needed symbolsStanislaw Halik
2015-11-01cmake: less linkage boilerplateStanislaw Halik