Commit graph

1773 commits

Author SHA1 Message Date
Michael Natterer
5674e31850 Generate icon resources where they are needed, and don't include .c files
Treat the gimp-core-pixbufs and gimp-icon-pixbufs resources like we
changed the cursor resources before, and clean out a lot of cruft from
icons/ (there is no need to generate stuff in all icon themes when we
include only one fallback icon from one theme).
2018-06-13 20:02:05 +02:00
Michael Natterer
8d66e7eaa1 libgimpwidgets: improve gimp_scroll_adjustment_values()
so it works for very small adjustment page sizes. Same as GTK+ commit
c0ba041c73214f82d2c32b2ca1fa8f3c388c6170
2018-06-13 15:22:51 +02:00
Michael Natterer
007bc5d8ae libgimpwidgets: pack the cells in GimpPageSelector's icon view manually
See previous commit.
2018-06-12 18:32:21 +02:00
Michael Natterer
8d6f023b41 Issue #1435 - Add tooltips to GimpColorNotebook's tabs 2018-06-08 19:44:29 +02:00
Michael Natterer
b75cbcb417 libgimpwidgets: install gimpbusybox.h as public header 2018-06-08 18:58:04 +02:00
Michael Natterer
b36205176e app, libgimp*: remove the config option to disable tooltips
Also remove all traces of it from the plug-in protocol and raise the
protocol version to 0x0100 (we now allow features and therefore
version bumps in stable, and the master protocol version should always
be higher). Fix the code that aborts plug-in startup on protocol
version mismatch, we can't use gimp_message() because we have no
protocol.
2018-06-06 19:23:30 +02:00
Ell
8d35299410 libgimpwidgets: add exponentiation support to eevl
Add support for exponentiation (using the ^ operator) to eevl.
This is occasionally useful, e.g., in geometrically-derived
quantities involving square roots.
2018-06-01 10:53:06 -04:00
Michael Natterer
1b7d63cce9 Use g_set_object() in a lot of places, and splrinkle some g_clear_object() 2018-06-01 12:59:52 +02:00
Ell
f847796943 app, libgimpwidgets: add generated cursor files to CLEANFILES
Needed after commit a9592a59c8.
2018-05-31 02:56:07 -04:00
Jehan
0ac3cd01f0 libgimpwidgets: fix default icon.
gtk_window_set_default_icon_name() apparently isn't able to properly
fallback to symbolic or non-symbolic variant. So let's test both.
There is also gtk_window_set_icon_list() but it takes a list of pixbuf,
so I really doubt it is the best solution either. The proposed solution
is working ok for now, even though I feel it is again a bit hackish.
2018-05-30 23:52:24 +02:00
Jehan
f3347d6961 libgimpwidgets: making GimpCellRenderer symbolic and DPI aware.
This commit makes 2 improvements to this renderer. First it will allow
it to find symbolic variants of icons. Second it properly renders icons
when the display is scaled, by producing pixbuf size double to logical
drawing size and making cairo rendering it at the expected logical size.
2018-05-30 16:16:32 +02:00
Michael Natterer
0f484ed3d5 libgimpwidgets: remove all size negotiation/allocation code from GimpFrame
Let GtkFrame handle things and simply set "spacing" and "indent" as
left and top margins on the frame's child.

This fixes all tests \o/
2018-05-30 00:37:15 +02:00
Ell
000fd8e69b libgimpwidgets: add GimpBusyBox
GimpBusyBox is used to show a message indicating an operation is in
progress.  It's basically just a spinner and a label, with some
styling.

We're going to use it both in app/ and in a plug-in.
2018-05-29 16:04:28 -04:00
Michael Natterer
2f425f0e2a libgimpwidgets: allow NULL adjustments in gimp_scroll_adjustment_values() 2018-05-29 00:04:31 +02:00
Michael Natterer
a9592a59c8 Merge request 4 - Generated .c sources are used as headers...
...Generate .h files instead.

Generate proper .c and .h files for color-picker and tool cursors in
the directories where they are built, and stop including them in other
.c files.
2018-05-28 17:25:18 +02:00
Michael Natterer
7fab74f431 libgimpwidgets: use G_DEFINE_ABSTRACT_CLASS for preview classes 2018-05-28 17:24:58 +02:00
Michael Natterer
7990b1d57c libgimp: update all .def files 2018-05-25 22:13:33 +02:00
Michael Natterer
d57ab7faf2 libgimpwidgets: move all GimpSizeEntry members to private 2018-05-25 19:15:00 +02:00
Michael Natterer
080f7ae909 libgimpwidgets: undeprecate GimpNumberPairEntry and style the font with CSS 2018-05-21 19:31:15 +02:00
Michael Natterer
ee62c7e92c libgimpwidgets: undeprecate GimpScrolledPreview 2018-05-21 14:07:40 +02:00
Michael Natterer
ed023bf05e libgimpwidgets: undeprecate insensitive drawing of GimpColorSacle
the same way as in GimpColorArea.
2018-05-20 21:06:35 +02:00
Michael Natterer
9b3366309c libgimpwidgets: undeprecate insensitive drawing of GimpColorArea
by simply drawing the buffer with cairo_mask() and a stipple pattern
so we get the same effect as before, but without rendering the
widget's background color into the buffer ourselves.
2018-05-20 21:06:35 +02:00
Michael Natterer
0b7aad66ed libgimpwidgets: left-align gimp_prop_enum_label_new()
just like gimp_prop_label_new().
2018-05-20 21:06:35 +02:00
Michael Natterer
4133a032de Undeprecate/improve GimpScaleComboBox and GimpUnitComboBox
Remove label-scale style properties and gtk_widget_modify_font()
hacks and theme them using CSS.
2018-05-20 21:06:35 +02:00
Simon Budig
7d64cf62c6 libgimpwidgets: rename the _grid()-Variants of gimp_scale_entry_*
Adjust all plugins to follow accordingly.

This concludes the GtkTable'ocide.
2018-05-20 21:06:35 +02:00
Simon Budig
f01a978627 libgimpwidgets: kill the last remaining occurencces of GtkTable 2018-05-20 21:06:35 +02:00
Simon Budig
25c033b263 some odds and ends regarding GtkTable removal... 2018-05-20 21:06:35 +02:00
Michael Natterer
2dd2f1509b Enable and fix smooth scrolling and zooming
- Fix gimp_scroll_adjustment_values() for smooth scroll events
- Set GDK_SMOOTH_SCROLL_MASK on all widgets where we set GDK_SCROLL_MASK
- Add GIMP_ZOOM_SMOOTH to enum GimpZoomType
- Add "gdouble delta" to gimp_zoom_model_step()
- Change the meaning of the "scale" parameter to "scale or delta" in
  all functions that take GimpZoomType and a scale factor.
2018-05-20 21:06:34 +02:00
Michael Natterer
4a979995a3 libgimpwidgets: add gimp_scroll_adjustment_values()
and use it in GimpScrolledPreview. It supports smooth scrolling and
does roughly the same as a whole lot of magic code in GtkScrolledWindow
and GtkRange, resulting in the same scrolling behavior as in stock
GTK+ widgets.
2018-05-20 21:06:34 +02:00
Michael Natterer
97e19eb385 libgimpwidgets: set GDK_EVENT_SCROLL on GimpPreview's preview area 2018-05-20 21:06:34 +02:00
Michael Natterer
b55e481459 libgimpwidgets: remove gimp_spin_button_new() 2018-05-20 21:06:34 +02:00
Michael Natterer
c2752a685c libgimpwidgets: also move GTK_RESPONSE_CLOSE buttons to the left
in GimpDialog's header bar.
2018-05-20 21:06:34 +02:00
Michael Natterer
bdbec7941c Use the new macros from the last commit in all files
...and gone are the annoying warnings.
2018-05-20 21:06:34 +02:00
Michael Natterer
3be0d13be3 libgimpwidgets: add macros to hide alternative_button_order warnings
Since we don't know yet what to do about this, let's not spam the
build with distracting warnings in the meantime.

gimp_dialog_set_alternative_button_order
gimp_dialog_set_alternative_button_order_from_array

are macros which just call the deprecated GtkDialog functions, but
wrap them in G_GNUC_BEGIN,END_IGNORE_DEPRECATIONS.
2018-05-20 21:06:34 +02:00
Michael Natterer
08458dcdf6 libgimpwidgets: port GimpPreview to GtkGrid 2018-05-20 21:06:34 +02:00
Michael Natterer
1d8696cd80 Get rid of gdk_flush() globally, use gdk_display_flush() 2018-05-20 21:06:34 +02:00
Michael Natterer
b857311bbf libgimpwidgets: undeprecate gimppickbutton-default.c 2018-05-20 21:06:33 +02:00
Michael Natterer
bb2a9d119f libgimpconfig: move all GimpColorConfig members to private 2018-05-20 21:06:33 +02:00
Michael Natterer
369b273157 libgimpwidgets: move GimpEnumStore.enum_class to private 2018-05-20 21:06:33 +02:00
Michael Natterer
d87eddb1c4 libgimpwidgets: move all GimpPreview members to private
and add tons of API so subclasses can still do their thing, probably
subject to change/fix.
2018-05-20 21:06:33 +02:00
Simon Budig
9cb67fa992 app: kill the last GtkTables. 2018-05-20 21:06:33 +02:00
Simon Budig
9954030487 app/widgets: port the gimpstrokeeditor to GtkGrid 2018-05-20 21:06:33 +02:00
Michael Natterer
3e680b9f32 libgimpwidgets: move all GimpScrolledPreview members to private 2018-05-20 21:06:33 +02:00
Michael Natterer
a535e425ee libgimpwidgets: move all GimpPreviewArea members to private 2018-05-20 21:06:33 +02:00
Michael Natterer
677c2bb8d0 libgimpwidgets: move public GimpIntStore member to private 2018-05-20 21:06:33 +02:00
Michael Natterer
f4f106ad26 libimp*: add private pointers to all instance structs
even if we don't have private members (yet). Also make class padding 8
pointers in all headers. This commit moves nothing to private, it just
makes all headers consistent and adjusts .c files accordigly.
2018-05-20 21:06:33 +02:00
Michael Natterer
4afb7ca4c7 libgimpwidgets: set the widgets's hexpand in gimp_grid_attach_aligned() 2018-05-20 21:06:33 +02:00
Simon Budig
72e63887ba libgimpwidgets: convert GimpSizeEntry to a GtkGrid. 2018-05-20 21:06:32 +02:00
Michael Natterer
6c8cf7876a Replace lots of deprecated gtk_menu_popup(), only GimpUIManager left 2018-05-20 21:06:30 +02:00
Michael Natterer
4f0a87ffa6 app, libgimpwidgets, themes: fix some themeing
Add CSS names using gtk_widget_class_set_css_name(), remove styling in
code and instead do it properly in CSS, so far in the System theme.
All horribly incomplete but a start.
2018-05-20 21:06:30 +02:00