Commit Graph

1761 Commits

Author SHA1 Message Date
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
Michael Natterer 56b28773da libgimpwidgets: honor the gtk-dialogs-use-header setting in GimpDialog
and undeprecate the widget.
2018-05-20 21:06:30 +02:00
Michael Natterer 1f29d499f8 libgimpwidgets: GimpBrowser undeprecated: threads and focus-on-click 2018-05-20 21:06:30 +02:00
Michael Natterer 5ece7a8d1f Port a lot of stuff from GdkScreen/monitor_number to GdkMonitor
including some fixes for getting pointer coords, and needed
API changes in libgimpwidgets.
2018-05-20 21:06:30 +02:00
Michael Natterer 7efaf024f3 libgimpwidgets: create GimpIntComboBox' cells in constructed() not init()
Apparently this now has to happen later due to some GTK+ change.
2018-05-20 21:06:30 +02:00
Michael Natterer 901c3ddcf8 Get rid of the deprecated gtk_icon_size_lookup_for_settings()
and use gtk_icon_size_lookup() instead.
2018-05-20 21:06:30 +02:00
Michael Natterer 7b6d42a443 libgimpwidgets: add gimp_grid_attach_aligned() 2018-05-20 21:06:30 +02:00
Michael Natterer 1b3135ca95 Get rid of using GtkMisc API globally 2018-05-20 21:06:30 +02:00
Michael Natterer 80985692a4 libgimpwidets: port GimpColorScales to GtkGrid 2018-05-20 21:06:30 +02:00
Michael Natterer 1ce246f2da libgimpwidgets: add GtkGrid variants of gimp_[color_]scale_entry_new()
as temporary porting hack, they will eventually be renamed to the old
names once GtkGrid porting is done.
2018-05-20 21:06:30 +02:00
Michael Natterer 37e24d0059 libgimpwidgets: remove gimp3migration.[ch] 2018-05-20 21:06:29 +02:00
Michael Natterer ad23eeb86f libgimpwidgets: derive GimpChainButton from GtkGrid not GtkTable 2018-05-20 21:06:29 +02:00
Michael Natterer 1f0d296eb6 libgimpwidgets: remove most deprecated cruft 2018-05-20 21:06:29 +02:00