102 Commits

Author SHA1 Message Date
Pandagrapher
89d2bdce5b Initial commit for real hidpi support
Note: This commit has only been tested on MacOS

Changes:
- Icons now use the native hidpi support from Gtk (through Icon Theme)
- Icons are now directly generated from scalable file (i.e. SVG file)
- Widget sizes are scaled based on DPI and scale factor
- Font size is scaled based on DPI and scale factor
2022-08-19 16:47:28 +02:00
Ingo Weyrich
8bd9bddfc7
New crop guide: square center, closes #6342 (#6345)
* 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>
2021-08-25 15:25:59 +02:00
Lawrence Lee
d3b67c1e22 Fix empty dialog messages
Escape ampersands and angle brackets in some Gtk::MessageDialogs.
Closes #6306.
2021-08-15 12:23:29 -07:00
luzpaz
22f89bc752
Fix various typos (#6332)
* Fix various typos

Found via `codespell -q 3 -S ./rtdata/languages -L ba,bord,childs,hist,fo,reall,bloc,alph,dof,inout,thre,makro,chang,currentry,preserv,portugues,struc,trough,vektor`

* Fix source typo

* Added requested revisions
2021-08-13 14:37:29 +02:00
Pandagrapher
84751ad26f Re-allow using RT shortcut while focused on adjuster 2021-03-01 21:38:35 +01:00
Pandagrapher
d92bbf59e1 Fixes #6148, allow using decimal key on numpad 2021-03-01 21:04:08 +01:00
Thanatomanic
fc031ccb5a
Remove deprecated GTK3 code, fixes #6103 (#6113)
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.
2021-02-17 11:44:25 +01:00
Thanatomanic
d2cd5f21c9
GUI changes: more distinct on/off modules, various CSS and GUI tweaks for further future modifications
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.
2020-12-27 15:31:39 +01:00
Flössie
1c0033f798 Collapse all tools on first start (fixes #4776)
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.
2020-02-12 09:04:55 +01:00
Ingo Weyrich
bf301b7e40 reduce include depenencies 2020-01-18 23:46:48 +01:00
Ingo Weyrich
79431ffa1d Some changes suggested by @Floessie 2019-11-26 19:42:48 +01:00
Ingo Weyrich
2a4891827d Some cleanups 2019-11-26 15:25:11 +01:00
Ingo Weyrich
962f81f6bc Further reduction of include dependencies 2019-11-01 12:51:08 +01:00
Morgan Hardwood
60b2196bce Updated gnu.org links to use HTTPS 2019-09-10 12:34:57 +02:00
Andy Dodd
dadf01fe95 rtgui/guiutils - Improve behavior with smooth scrolling devices
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.
2019-08-30 16:55:35 -04:00
Ingo Weyrich
8744f8f826 cppcheck: further fixes 2019-08-08 19:10:29 +02:00
Ingo Weyrich
4101102ddf cppcheck: further fixes 2019-07-31 20:02:35 +02:00
Hombre
52dcd08b97 Merge branch 'dev' into hidpi-icons 2019-03-13 01:00:14 +01:00
Flössie
51f06dfa6d Explicitly destroy static Glib::RefPtr<>s on exit (fixes #3636) 2019-03-09 12:06:54 +01:00
Flössie
0cbc4923bc Relax dependency from procparams.h 2019-02-28 20:44:50 +01:00
Hombre
cc1779a0ae Merge branch 'dev' into hidpi-icons 2019-01-24 22:02:44 +01:00
Hombre
97824da6de Histogram and Navigator now handle Hi-DPI.
+ widgets are now sized depending on Hi-DPI
see issue #3547
2019-01-04 15:32:35 +01:00
Hombre
92ed81a1fe Non used svg2png cache folders are now deleted when exiting RT
see #3547
2019-01-02 22:39:49 +01:00
Hombre
78fa7dc063 SHCSelector, ThresholdSelector, LabGrid and Curves now handles HiDPI
see issue #3547
2019-01-02 18:04:58 +01:00
Flössie
b21d910573 Remove legacy IdleRegister::add<>() 2019-01-01 20:58:26 +01:00
Hombre57
7e01976ab2 Bugfix and cleanup
See issue #3547
2018-12-14 01:05:11 +01:00
Hombre
81407cd663 Adding SVG support for icons with automatic cache handling
See issue #3547 and #4803
2018-12-13 00:04:30 +01:00
Hombre
5ea0bacddd Icons are resized depending on the current scale/resolution
See issue #3547 and #4803
2018-12-08 22:48:15 +01:00
Flössie
00b62d2b65 Add @thirtythreeforty's std::function<> variant (#4892)
Also convert `batchqueue.cc` where applicable.
2018-11-11 20:32:01 +01:00
Flössie
5906329485 Review IdleRegister (#4892)
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()`.
2018-10-28 13:12:01 +01:00
Hombre
785a0e6a46 Merge branch 'dev' into hidpi-icons 2018-10-25 20:43:41 +02:00
Hombre
4eb8a8f70c Adding HiDPI support (WIP) 2018-10-25 20:22:33 +02:00
heckflosse
adcbdd4f4f Remove some printfs introduced with 0d61f14 2018-10-12 00:22:48 +02:00
Hombre
da0830c794 Merge remote-tracking branch 'origin/scrolled-toolbar-fix' into dev 2018-10-09 20:45:01 +02:00
heckflosse
78989731f5 Always use icons for tab headers, #4772 2018-09-18 11:37:15 +02:00
Hombre
0d61f14bae Added support for GDK_SCROLL_SMOOTH in some widgets
see #4781, #4786
2018-09-15 21:14:48 +02:00
Hombre
caffc3a23d Bugfix: the scrollable toolbars was freezing under some circumstances 2018-09-06 23:10:16 +02:00
Hombre
98fc85b68d Revert GDK_SCROLL_SMOOTH scrolling of Toolbars to a fixed step
also remove GUI space in "FileBrowser" widget
see #4035
2018-09-04 23:06:17 +02:00
Hombre
b226c125ce Scrollable toolbars has been named, and 'scrollableToolbar' class added
see #4035
2018-09-03 23:19:37 +02:00
Hombre
758299aa2c Support of GDK_SCROLL_SMOOTH sent by some devices. See #4035. 2018-09-03 00:18:03 +02:00
Hombre
20118c4019 Partially hidden toolbars can now be scrolled with the mouse wheel
...thanks to the new MyScrolledToolbar class (guiutils.h/cc). This is
valid for the FileBrowser tab (first and second line can be scrolled
individually) and the top and bottom bar of the Editor(s) tab.

see #4035
2018-09-02 10:47:44 +02:00
Morgan Hardwood
bb6282fad3 Icons tweaked #4469
- The "light" icon theme is now a little lighter, to increase contrast.
- Toolbox icons are now small.
- Buttons:
  - Buttons without labels which use icons as their only source of info regarding what the button does (e.g. the white-balance pipette button) use normal-sized icons.
  - Labeled buttons which use icons as an auxiliary source of information (e.g. Auto-Crop) now use small icons. Curve type icons are also small even though they have no labels.
- Colored circles are smaller.
- Curve type icons redesigned and small.
- Hand icons (when panning the preview) redesigned to have a clear outline regardless of background color.
- Magnifier icons redesigned to have a thinner magnifier frame and larger inner parts.
- Perspective, distortion and crop icons redesigned.
- Some small icons were missing the `-small` suffix, now renamed.
2018-07-16 12:41:40 +02:00
Morgan Hardwood
522495f4eb Icon cleanup #4469 #3547
Rebased in new branch to cleanup commit history.
2018-07-13 18:13:35 +02:00
luz.paz
c3c3ceac79 Misc. typos
Found via `codespell` 
+ removed rtengine/dcraw.patch per discussion in https://github.com/Beep6581/RawTherapee/pull/4395
2018-02-14 14:07:18 -05:00
Alberto Griggio
e44662a899 updated comment about margin and GTK < 3.20 2017-10-26 09:08:44 +02:00
Alberto Griggio
c3bdd47a62 make MyFileChooserButton behave nicely with CSS themes
Note: I still had to hardcode a set_border_width(2) for GTK+ < 3.20, because nothing I tried on the CSS worked...
2017-10-25 22:35:26 +02:00
Alberto Griggio
8322f03e3d added a default border to MyFileChooserButton, and set the widget name to "MyFileChooserButton" (to allow for CSS customization) 2017-10-25 10:30:19 +02:00
Alberto Griggio
46e3471d0f minor tweak to the ok/cancel button labels of MyFileChooserButton 2017-10-24 15:09:40 +02:00
Alberto Griggio
a0a7b717c1 simplify the implementation of MyFileChooserButton::show_chooser
Do not try to show a native file dialog. I think this would be useless, since
RT already uses non-native dialogs in other places, and I'm not sure it would
be possible to replace all of them (e.g. in icmpanel.cc the dialog is
customized by adding a checkbox for WB, and this is not possible with a native
dialog).
2017-10-24 14:03:02 +02:00
Alberto Griggio
5be042bcd4 use ALIGN_START for the label of MyFileChooserButton 2017-10-24 12:00:38 +02:00