65 Commits

Author SHA1 Message Date
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
Alberto Griggio
cf75429648 added set_show_hidden() method to MyFileChooserButton 2017-10-24 11:48:07 +02:00
Alberto Griggio
df8b52f978 implement our own custom FileChooserButton, with the aim of speeding up startup time
See #4140

Compiles fine, but needs testing...
2017-10-24 00:27:55 +02:00
Morgan Hardwood
6723013110 Added L* middle gray preview background color, #4027 2017-08-20 19:14:32 +02:00
heckflosse
5f97800e69 Reduce number of leakes ui handles per editor instance, #3937 2017-06-29 19:09:40 +02:00
heckflosse
ebbb44c3f5 Cleanup for last commit 2017-06-25 21:42:43 +02:00
heckflosse
97e558a040 Fixed some coverity issues 2017-06-12 17:54:34 +02:00
Flössie
bc33b51093 IdleRegister cleanups 2017-05-02 18:45:23 +02:00
Alberto Griggio
7553d86b11 clear the ids map in IdleRegister::destroy (prevent double deallocation)
Fixes #3849
2017-04-29 14:48:54 +02:00
Alberto Griggio
d8e0207b9a Fixed memory leak in IdleRegister::destroy 2017-04-28 21:22:23 +02:00
Morgan Hardwood
0f0f76df0b Unregister handler with glib when callback function returns false 2017-04-28 20:08:07 +02:00
Ingo Weyrich
3ff2519302 Merge pull request #3816 from Beep6581/cppcheck3
Merged to get more tests. Additional fixes will follow.
2017-04-09 23:58:07 +02:00
heckflosse
92a46e9a3d Merge branch 'idle_harder' into dev 2017-04-09 02:18:09 +02:00
heckflosse
6e55f6bab5 Fixed a lot of issues reported by cppcheck 1.78 2017-04-08 22:41:46 +02:00
Alberto Griggio
27e822fdae fixed more warnings in rtgui (reported by gcc but not clang) 2017-04-01 16:43:32 +02:00
Alberto Griggio
6fe04e3990 fixed warnings in rtgui 2017-04-01 15:55:39 +02:00
Flössie
6e1f7df2fb Replace g_idle_add_full() with IdleRegister (#3767) 2017-03-30 21:40:09 +02:00
Hombre
fe83cc8134 Merge branch 'dev' into rt-cli 2017-02-14 00:15:23 +01:00
Hombre
a04b3eefba Adding rawtherapee-cli.exe, '-q' (quick start mode) added
Standard rawtherapee.exe now has almost no command line options left.
Use '-h' to see options for each executables.
2017-02-13 23:38:05 +01:00
Flössie
824ecaed41 Add IdleRegister to deal with destruction while idle func is queued
This adds a little helper class to `guiutils.*` that unregisters
in-flight idle functions queued by `IdleRegister::add()`. It's best
to call `IdleRegister::destroy()` in the destructor of the class
owning the `IdleRegister` instance. Otherwise make sure, it is the
last member which will be deleted first.

`Resize` now makes use of this new facility in `setDimensions()`, which
also fixes #3673.
2017-02-09 20:25:58 +01:00
Hombre57
70a79772ed Fixing issue #3261 2016-12-30 16:28:53 +01:00
Hombre
c7be386c3a Solving issue #3531, assign classes to Gtk::Window and MyWidget
- Curve editor buttons are set to expand by default, but they are set to
shrink as soon as an accompagnying widget is set to expand
- White Balance's method button now has a centered ellipse ("...")
- White Balance's buttons are now aligned on their right
- A "withScrollbar" class is added to MyExpander if the ToolPanel's
vertical scrollbar is visible. This can let you add padding space for
the scrollbar (see #MyExpander.withScrollbar in RT default theme)
- A "maximized" and "fullscreen" class is added to the RTWindow whenever
it change state ; BEWARE: if you maximize the window then make it
fullscreen, Gtk says that the window is in a "maximized & fullscreen"
state, which mean that both class can be added at the same time to the
window.

One Gtk oddity (at least on Windows) is that you can make your window
fullscreen and still drag it around by its header bar... That's not very
practical to click on the unfullscreen button if in Single Editor mode
with vertical Tab.

I also managed to see the window in a Inconified + Maximized state. This
part of Gtk doesn't seem very robust, on Windows at least.
2016-12-20 01:58:37 +01:00
Hombre57
f3f317e5bd Issue #3446: Updated Gtk3.18 theme
Harcoded style has been reintroduced for Gtk < 3.20 only ; a cleanup
will have to be done once Gtk3.18 support will be dropped.
2016-12-06 01:33:03 +01:00
Hombre
7209f4f1c9 Previous behavior for Profile Panel's combobox size restored
See issue #3300 and #3446.
2016-11-17 20:09:31 +01:00
Hombre
2fcc5b75c8 Solving issue #3497, #3500, #3498 and #3483
For issue #3483, the old behavior is restored, i.e. the minimum width of
the ProfilePanel combobox is the maximum width of its content.

Style updated for the Exif and IPTC sub-tabs
2016-11-09 00:09:52 +01:00
Hombre
965cadb52e New batch of update for issue 3446
This commit include :
- cleanup rtgui/retinex.cc file (constructor only) and switched to
Gtk::Grid (the new standard) instead of Gtk::Box. This however doesn't
solve the issue of the Transmission curves in the Retinex tool, with
wrong resize of the Frame when folding/unfolding the curves.
- better alignment of the Histogram panel now with 4px of padding on the
left and right side
- Threshold selector now use the Scale's Trough style to draw its box
and sliders
- Curve's background are darker and restricted to the curve diagram
- Diagonal and Flat curves has been converted to Gtk::Grid as well
- A special color is now used for unsensitive Threshold selector and
Sclaes widgets
- Gap around the main Window has been removed on windows to circumvent a
bug in Gtk3, but the window can now only be maximized (usual use case)
or resized vertically by the top border only.
- Buttons at the bottom of the Editor panel has now the same height
2016-11-01 20:39:41 +01:00
Hombre
e4e474ca8a Merge branch 'gtk3' into gtk3-bugfix 2016-10-28 23:48:22 +02:00
heckflosse
b16ef8d1f5 Merge master into gtk3 2016-10-28 17:59:47 +02:00
Hombre
f6a9e13297 New batch of Theme bugfix, see issue #3446 (still WIP) 2016-10-20 22:38:37 +02:00
Hombre
712468197d Bugfix and style update of RawTherapee.css
Still unfinished - Big thank you to DrSlony for his help
2016-10-19 02:20:12 +02:00
Flössie
0731975ff0 Apply modernize-use-nullptr
Setup:
- `mkdir tidy; cd tidy`
- `cmake .. -DCMAKE_BUILD_TYPE=debug -DPROC_TARGET_NUMBER=1 -DCACHE_NAME_SUFFIX=4 -DBINDIR=. -DDATADIR=. -DBUILD_BUNDLE=ON -DWITH_LTO=OFF -DOPTION_OMP=OFF -DCMAKE_EXPORT_COMPILE_COMMANDS=ON`
- `cd ..`
- `find -name '*.cc' -exec clang-tidy-3.8 -header-filter=.* -p=tidy -fix-errors -checks=modernize-use-nullptr {} \;`
2016-10-12 17:48:40 +02:00
Morgan Hardwood
0dbea030cb Merge branch 'master' into gtk3-merge-master-b8eb349 2016-10-10 23:07:41 +02:00
Hombre
f904bc8f84 First patch of the LockableColorPicker tool.
Still Work In Progress, but can be used without too much hassle.
2016-09-30 01:03:57 +02:00
Hombre
b7a3c45c7e Add new object IDs for theming (see issue #3214) 2016-03-26 15:06:17 +01:00
Hombre
7f0a96e448 Fix #3203 and restore the hover color for the 'Enabled' buttons 2016-03-12 00:09:30 +01:00
Adam Reichold
a04c7706db Merge branch 'master' into 'gtk3' 2016-03-05 13:11:00 +01:00
Hombre
830c58877f Reintroduce some set_border_width to circumvent some Gtk bugs.
Also fix a bug that let you grab the first and last point of the
diagonal curve more easily now, when they are at their left/right
extremum.
2016-02-29 22:08:05 +01:00
Hombre
3577d87862 Removed set_border_width from the code, padding and margin values still
to be set in CSS file
2016-02-23 21:36:00 +01:00