The following member functions and methods of SpotPicker changed to const:
- get_active()
- get_spot_half_width()
- selecterSetup()
- spotButtonTemplate().
* New crop guide: square center, closes#6342
* Turn `CropParams::guide` into an `enum`
This saves recurring string comparisons.
Co-authored-by: Flössie <floessie.mail@gmail.com>
Replaces the following deprecated Gtk classes throughout the codebase by their non-deprecated counterparts. Style, HBox, VBox, HPaned, VPaned, HScrollbar, VScrollbar, VSeparator, HSeparator, Stock, Table, VScale and HScale.
Collection of CSS and GUI improvements, cleanup of main CSS theme, introduction of highlight for enabled module.
Primary change is the modification of the module titles to better distinguish modules that are on or off. The text of a disabled module is now less bright, the corresponding icon is a slightly smaller version of the power icon. When activating the module, the text turns brighter and the icon slightly bigger and also brighter. Thanks to @TechXavAL for the icon work.
Secondary changes are related to the margins around several GUI elements, padding within elements and some accompanying borders. These changes hopefully make it easier to distinguish the various (sometimes crowded) GUI elements of modules. The panels have gotten a slightly 'outset' look.
Nested panels have a changed look where deeper nesting increases the background brightness slightly, instead of darkening it (old behaviour). This is done without a strong decrease in contrast.
The old theme is available as a legacy option. Due to hardcoded GUI changes needed for the new theme, the legacy version is not a 100% exact replicate. The @TooWaBoo theme's may also be slightly affected.
I had to remove the `isVisible` check in `MyExpander::set_expanded()`
because it would trigger in Wavelet and Retinex for unknown reasons.
One inner expander in CIECAM isn't covered by the tool states, and the
way they are distributed to Wavelet and Retinex won't allow for further
tool states in those tools. We should consider to move the tool states
for sub-tools (like Wavelet, Retinex, and CIECAM) to seperate keys in
the `options` file.
Devices such as trackpads will emit smooth scrolling (GDK_SMOOTH_SCROLL) events with
deltas smaller than +/-1.0 at high frequency.
Quantizing these to +/-1.0 leads to significant amplification of scroll speed to the point
of unusability
Scroll by delta instead of +/-1.0 in these cases, permitting smooth scrolling through panels that use this code
Some mice emit GDK_SMOOTH_SCROLL with deltas of +/-1.0 per detent. This patch will not change behavior
with such devices. However, if any mice emit deltas of smaller magnitude, the per-detent behavior will
change.
This turns `IdleRegister::add()` into a template function to make the
provided function pointers type safe. It also adds a `delete_data`
parameter to manage the provided data pointer even in `destroy()`.