Michael Natterer
da5e72369e
libgimpwidgets: make GimpColorScale more-or-less work fine
...
also derive it from GtkRange directly not from GtkScale.
2018-05-20 21:06:29 +02:00
Michael Natterer
a5b5eaebd3
libgimpwidgets, app: use GdkRGBA instead of GdkColor for cell backgrounds
2018-05-20 21:06:29 +02:00
Michael Henning
2ef224237e
libgimpwidgets: Separate ruler text layer from background.
...
Also fix failing to clear backing_store at the same time.
2018-05-20 21:06:29 +02:00
Michael Henning
69497c84a6
libgimpwidgets: Draw marker in correct position on ruler.
...
With gtk+3, the cairo context is offset by allocation.x/y for us,
so we no longer need to add that factor in while drawing.
2018-05-20 21:06:29 +02:00
Michael Natterer
6165ca7425
libgimpwidgets: #if 0 more stuff in gimp3migration
2018-05-20 21:06:29 +02:00
Michael Natterer
cc010a4288
Incomplete notebook and tab theming commit, to be improved
2018-05-20 21:06:29 +02:00
Michael Natterer
e8f0c14491
app: use gdk_device_get_position() inetad of gdk_display_get_pointer()
2018-05-20 21:06:29 +02:00
Michael Natterer
64d80e9aa4
Port cell renderers to gtk_cell_renderer_get_state()
2018-05-20 21:06:28 +02:00
Michael Natterer
cc0b48d710
libgimpwidgets: move all GimpColorProfileStore members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
d9171ef627
libgimpwidgets: move all GimpMemsizeEntry members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
6e84d584f4
libgimpwidgets: move all GimpEnumLabel members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
86603f30b9
libgimpwidgets: move all GimpColorSelection members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
7eac782a15
libgimpwidgets: move GimpColorProfileComboBox::dialog to private
2018-05-20 21:06:28 +02:00
Michael Natterer
f20b2d1a43
libgimpwidgets: move all GimpColorScale members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
0e35af2723
libgimpwidgets: move all GimpColorNotebook members to a private struct.
2018-05-20 21:06:28 +02:00
Michael Natterer
9c15020c41
libgimpwidgets: add padding
2018-05-20 21:06:28 +02:00
Michael Natterer
455f2e2e38
libgimpwidgets: move all GimpColorHexEntry members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
c32681f4c3
libgimpwidgets: move all GimpColorDisplayStack members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
79dd44fb18
libgimpwidgets: move all GimpColorDisplay members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
db6c2ea658
libgimpwidgets: move all GimpBrowser members to a private struct
...
The newly added API is ugly and will change.
2018-05-20 21:06:28 +02:00
Michael Natterer
fd45ea2051
libgimpwidgets: move all GimpChainButton members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
482be36a00
libgimpwidgets: move all GimpCellRendererToggle members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
651e313f49
libgimpwidgets: move all GimpColorButton members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
281370dce2
libgimpwidgets: move all GimpCellRendererColor members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
0318ea9dfe
libgimpwidgets: move all GimpButton members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
88ac850834
libgimpwidgets: move padding members from instance to class struct
2018-05-20 21:06:28 +02:00
Michael Natterer
d2116f481b
libgimpwidgets: move all GimpOffsetArea members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
271f94928f
libgimpwidgets: move all GimpColorArea members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
3d4ef455d2
libgimpwidgets: move all GimpPickButton members to a private struct
2018-05-20 21:06:28 +02:00
Michael Natterer
6e982cd0a4
libgimpwidgets: use g_object_ref()/unref() for GdkCursors
...
The are GObjects now.
2018-05-20 21:06:28 +02:00
Michael Natterer
f689ef7b16
libgimpwidgets: implement GtkWidget::style_updated() instead of style_set()
2018-05-20 21:06:28 +02:00
Michael Natterer
1264285cff
libgimpwidgets: implement GtkWidget::state_flags_changed()
...
instead of GtkWidget::state_changed()
2018-05-20 21:06:28 +02:00
Michael Natterer
52af5f00c0
libgimpwidgets: port GimpNumberPairEntry to gtk_widget_override_font()
2018-05-20 21:06:28 +02:00
Michael Natterer
8c75151f39
llibgimpwidgets: port GimpScrolledPreview to GtkStyleContext
2018-05-20 21:06:27 +02:00
Michael Natterer
052ab454ae
libgimpwidgets: port GimpRuler to GtkStyleContext
2018-05-20 21:06:27 +02:00
Michael Natterer
1cf85b9102
libgimpwidgets: port GimpOffsetArea to GtkStyleContext
2018-05-20 21:06:27 +02:00
Michael Natterer
d9fac0ce6e
libgimpwidgets: port GimpColorScale to GtkStyleContext
2018-05-20 21:06:27 +02:00
Michael Natterer
42252b3f6f
libgimpwidgets: port GimpColorArea to GtkStyleContext
2018-05-20 21:06:27 +02:00
Michael Natterer
c62075b4c0
libgimpwidgets: port GimpChainButton to GtkStyleContext
2018-05-20 21:06:27 +02:00
Michael Natterer
97da93d1ac
libgimpwidgets: port GimpCellRendererToggle to GtkStyleContext
2018-05-20 21:06:27 +02:00
Michael Natterer
b3ac92d0d6
libgimpwidgets: port to GtkStyleContext and gtk_render_foo()
2018-05-20 21:06:27 +02:00
Michael Natterer
d9b56a5dbe
Use gtk_widget_render_icon_pixbuf() instead of gtk_widget_render_icon()
...
because the latter is deprecated.
2018-05-20 21:06:27 +02:00
Michael Natterer
694e5ac9f6
libgimpwidgets: port to the new size request API
2018-05-20 21:06:27 +02:00
Michael Natterer
91d382608f
libgimpwidgets: port to GtkWidget::draw()
2018-05-20 21:06:27 +02:00
Michael Natterer
4477ad84de
libgimpwidgets: port to GtkWidget::draw()
2018-05-20 21:06:26 +02:00
Michael Natterer
fa8c702229
libgimpwidgets: port to GtkWidget::draw()
2018-05-20 21:06:26 +02:00
Michael Natterer
60036c9385
libgimpwidgets: port the ruler to GTK+ 3.0
2018-05-20 21:06:26 +02:00
Michael Natterer
05e5a1d1cd
libgimpwidgets: get rid of (GtkObject **) casts
2018-05-20 21:06:26 +02:00
Michael Natterer
566a71ba7d
libgimpwidgets: port GimpFrame to GTK+ 3.0
2018-05-20 21:06:26 +02:00
Michael Natterer
4ae7d4c825
libgimpwidgets: remove deprecated files completely
2018-05-20 21:06:26 +02:00
Michael Natterer
e4ae1faf06
libgimpwidgets: remove deprecated functions and s/GtkObject/GtkAdjustment/
2018-05-20 21:06:26 +02:00
Michael Natterer
fe2241ebde
libgimpwidgets: port to GtkWidget::draw()
2018-05-20 21:06:26 +02:00
Michael Natterer
00a6597cd9
libgimpwidgets: s/GtkObject/GtkAdjustment/
2018-05-20 21:06:26 +02:00
Michael Natterer
04c12550da
libgimpwidgets: port to GtkWidget::draw()
2018-05-20 21:06:26 +02:00
Michael Natterer
5fb95d09a1
libgimpwidgets: port to GtkWidget::draw()
2018-05-20 21:06:26 +02:00
Michael Natterer
7e6a2d270e
libgimpwidgets: port to GtkWidget::draw()
2018-05-20 21:06:26 +02:00
Michael Natterer
d0db9ec24d
libgimpwidgets: port virtual functions to GTK+ 3.0
2018-05-20 21:06:26 +02:00
Michael Natterer
91c0dea0af
libgimpwidgets: port virtual functions to GTK+ 3.0
2018-05-20 21:06:26 +02:00
Michael Natterer
a562a0c798
libgimpwidgets: s/GtkObject/GtkAdjustment/ in gimpwidgets.[ch]
2018-05-20 21:06:26 +02:00
Michael Natterer
dae87ee1c7
libgimpwidgets: remove deprecated files from the build
2018-05-20 21:06:26 +02:00
Michael Natterer
dbd9797a13
Switch to version 2.99/3.0 in a lot of places and depend on GTK+ 3.22
...
and lots of other newer libraries.
2018-05-20 21:06:26 +02:00
Michael Natterer
fe06539873
libgimpwidgets: fix value names in docs of GimpColorSelectorModel
2018-05-18 19:32:51 +02:00
Jehan
6c9ba16e11
configure, libgimpwidgets: customizable default color profile directory
...
We have this problem with flatpak that the common directory
("/usr/share/color/icc") is not visible from inside the sandbox. With
proper permissions, it is actually accessible, yet the host's /usr is
mounted at /run/host/usr/.
Since sandbox systems are getting more common, we need to make this path
customizable. I am therefore adding a --with-icc-directory configure
option to change the default color profile folder at build time.
See: https://github.com/flathub/org.gimp.GIMP/issues/15
2018-05-18 09:08:51 +02:00
Michael Natterer
a69b8a25df
libgimpwidgets: in GimpEnumLabel use the value's nick if there is no desc
2018-05-16 21:12:20 +02:00
luz.paz
147c09f19e
Bug 795161 - Misc. typo fixes in source comments and doxygen
...
Found via `codespell`
Follow-up to commit 7fdb963e01
2018-04-18 21:06:57 +02:00
Michael Natterer
ebb9d83d63
Bug 795230 - Rename Blend tool and provide PDB compatibility
...
Step 1: rename the icon to GIMP_ICON_TOOL_GRADIENT (gimp-tool-gradient)
2018-04-13 23:07:08 +02:00
Ell
6ebc3f1b09
Makefiles: don't use -xobjective-c when linking files on Mac
...
Last commit caused -xobjective-c to be passed during linking on
Mac, causing object files to be treated as source files. Add a
-xnone flag to AM_LDFLAGS, canceling the effect of -xobjective-c.
Additinally, add a -xobjective-c++ flag to AM_CXXFLAGS, so that we
can use Objective-C in C++ files on Mac, if we ever need to.
2018-04-08 04:03:55 -04:00
Ell
06950be7f0
Makefiles: don't use -xobjective-c when compiling C++ files on Mac
...
On Mac, pass -xobjective-c to the compiler through AM_CFLAGS, not
AM_CPPFLAGS, so that it's only used for C sources, and not C++
sources. In the latter case, it clashes with the -std=... flag,
spewing an error. Thanks, Partha :)
2018-04-07 16:57:52 -04:00
Kristian Rietveld
ce3899e722
libgimpwidgets: gimppickbutton-quartz: do not release color_space
...
The color_space reference should not be released because it was obtained
with a Get-function, which means we do not have ownership.
2018-03-26 22:59:01 +02:00
Kristian Rietveld
0e9e167da8
libgimpwidgets: make pick button quartz work on macOS < 10.12
...
The symbol CGColorSpaceCopyICCData() is only available on macOS 10.12
and higher. We want GIMP to run from 10.9 onwards, so use the older
symbol CGColorSpaceCopyICCProfile() even though this one is deprecated.
2018-03-26 22:59:01 +02:00
Michael Natterer
8447e775ab
Bug 783680 - Allow to hide color models in GimpColorScales
...
Redo the entire thing again:
- Rename the values of enum GimpColorSelectorModel to include "MODEL"
- Change GimpColorSelector API from set_model() to set_model_visible()
so visibility of each model can be toggled individually and is not
exclusive any longer
- The GUI is back to what it was before, except that the "GIMP" page
now honors the model visibility and has a resonable minimum height
2018-03-19 23:11:27 +01:00
Jehan
6c8300923d
Bug 779942 - Make GimpPickButton honor monitor profile.
...
Quartz/macOS implementation for the color picker.
This is untested but I am trying to advance our 2.10 blockers by
implementing the base code for this feature. Please anyone with macOS
machine access, review and fix if needed!
2018-03-16 17:17:54 +01:00
Lionel N
827d747fae
Bug 400448 - ruler subdivision is wrong for inches
...
Add ruler subdivisions for feet and yards, the code is still disabled.
2018-02-27 23:27:00 +01:00
Ell
cd8ea6b3ca
libgimpwidgets: in GimpNumberPairEntry, add clear icon
...
Since the entry behaves differently based on whether the user
provided an explicit input or not, it makes sense to have a button
for clearing the entry.
2018-02-27 03:55:34 -05:00
Ell
45bfa168bf
libgimpwidgets: in GimpNumberPairEntry, update font when updating text
...
... in particular, so that the font is updated correctly when
reverting an invalid string.
2018-02-27 03:55:34 -05:00
Ell
8d2381f6e7
libgimpwidgets: in GimpNumberPairEntry, fix parsing
...
... to classify strings beginning with a non-digit character as
INVALID, rather than CLEAR.
2018-02-27 03:55:33 -05:00
Ell
0de25a145a
libgimpwidgets: in GimpNumberEntryPair, properly set user-override ...
...
... when focus is lost/enter is pressed
When a GimpNumberPairEntry loses focus, or when enter is pressed,
set its user-override property by calling
gimp_number_pair_entry_set_user_override(), instead of setting the
corresponding member directly, so that the entry's font is updated
correctly.
2018-02-25 03:09:25 -05:00
Jehan
56d0998e74
icons, libgimpwidgets: fixing indentation and cleaning out tabs.
2018-02-24 15:58:26 +01:00
Jehan
6a9c4f8ef1
icons, libgimpwidgets: now with proper gimp-attach + gimp-detach icons.
...
"gimp-detach" does not just use "gtk-convert" anymore and has its own
design. As for "gimp-attach", this is not used anywhere (yet), but it
could be soon as reverse action of gimp-detach. For instance, this icon
can be used for bug 791859 when we implement re-attaching overlay
dialogs.
2018-02-24 01:27:56 +01:00
Michael Natterer
e93f458026
libgimpwidgets: change disabled code in GimpRuler to avoid a warning
2018-02-22 09:48:03 +01:00
Michael Natterer
fd37737fe4
Bug 400448 - ruler subdivision is wrong for inches
...
This commit changes nothing, but contains disabled proof-of-concept
code to use different ruler subdivisions depending on the ruler's
unit.
2018-02-12 12:20:32 +01:00
Michael Natterer
cc97a87257
libgimpwidgets: propwidgets: don't g_object_set() the same value again
...
Normally, the model would try to avoid notifications when a set()
doesn't change anything, but with g_object_set() that's not possible.
Do the same in the propwidgets' callbacks and avoid potentially
expensive notifications at the cost of a cheap g_object_get().
Also fix the syntax of "Since:" and "Deprecated:" annotations.
2018-02-04 19:56:55 +01:00
Jehan
de81e33340
libgimpwidgets: add missing gimp_color_selector_model_get_type in def...
...
... file.
2018-01-26 15:49:56 +01:00
Michael Natterer
13b640f84c
libgimpwidgets: restore ABI of GimpColorSelectorClass
...
Public structs must not change, that's why we have padding at the
end for extension.
2018-01-22 13:04:54 +01:00
Jehan
54a1e8f2b1
libgimpwidgets: use g_return_if_reached() in unreachable code path.
...
This way, we get proper CRITICAL if ever there is a logic error (or in
this case, if we add new values to enums and forget to append them to
switch cases.
This will make these bugs much easier to debug if (when!) they happen.
2018-01-22 11:28:09 +01:00
Jehan
90037116e4
libgimpwidgets: oups, fix some stupid miswrite.
...
Unfortunately not very problematic, unless when setting alpha channel.
2018-01-22 01:08:32 +01:00
Jehan
4d84925db0
Bug 783680 - Allow to hide color models in GimpColorScales.
...
GimpColorSelect now using color models tabs too.
2018-01-21 19:00:20 +01:00
Jehan
37e9be3a4f
libgimpwidgets: arrange color models in tabs in GimpColorScales.
...
This allows to have a smaller and cleaner color dock instead of just
listing all possible channels (which may only grow up as we may add more
color spaces).
The API gimp_color_scales_(set|get)_show_hsv() are removed in favor of
more generic gimp_color_selector_(set|get)_model(). I assume this is
ok since they have only been available in the dev version (commit
6258d525ae
, a month ago).
2018-01-21 18:37:18 +01:00
Alexandre Prokoudine
940a5866a9
Add symbolic icons for linear/perceptual color spaces
2018-01-06 01:49:17 +03:00
Alexandre Prokoudine
78821b4cb9
Add icons for Shadows-Highlights
2018-01-05 21:03:42 +03:00
Michael Natterer
467a663f16
libgimpwidgets: return TRUE in GimpColorProfileChooserDialog's "delete-event"
...
Otherwise the dialog is automatically destroyed when e.g. pressing
Escape, which the code doesn't expect, leaving dangling (crashing)
ponters around.
2018-01-02 22:10:10 +01:00
Michael Natterer
6f7b1d6425
libgimpwidgets: add new GimpColorScales symbols to gimpwidgets.def
2018-01-02 03:59:28 +01:00
Michael Natterer
1e99b12aba
libgimpwidgets: several GimpColorSelector cleanups / changes
...
- make RED the default channel and reorder RGB before LCH/HSV
- use more of the new getters
- also use more of the previously existing setters
2017-12-31 19:05:54 +01:00
Michael Natterer
6258d525ae
Bug 770054 - High bit-depth color selection widgets
...
This is WIP in the middle of cleaning up GimpColorSelector subclasses:
Add the possibility to switch between LCH and LSV and between 0..100
and 0..255 RGB in to GimpColorScales. Works almost fine, but needs
different UI to change the options...
2017-12-31 17:53:13 +01:00
Michael Natterer
6263e25dd9
libgimpwidgets: don't add new stock IDs, they are all deprecated
...
Instead, add GIMP_ICON_* defines for new icons.
2017-12-31 16:10:14 +01:00
Michael Natterer
dd06ebafa2
libgimpwidgets: add a getter for every setter of GimpColorSelector
...
Also add API docs, pretty basic ones.
2017-12-31 16:02:21 +01:00
Alexandre Prokoudine
b7d2c5eab1
Add Exposure tool icon, remove erroneous stock entry for the colortemp icon
2017-12-28 04:11:55 +03:00
Alexandre Prokoudine
c281fca1c0
Fix variables for the new icons
2017-12-27 07:49:52 +03:00
Alexandre Prokoudine
4d11e2b184
Add colortemp icons to the build
2017-12-27 07:49:52 +03:00
Ell
981e8dcdfe
app, menus, icons: add dashboard dockable
...
The dashboard dockable shows the current GEGL cache and swap sizes,
and their recent history. It has options to control the update
rate and history duration of the data, and an option to warn (by
raising/blinking the dialog) when the swap size approaches its
limit.
2017-12-18 19:42:23 -05:00