Commit graph

1678 commits

Author SHA1 Message Date
Ell
4132c0b3e7 app, libgimpwidgets: reset "old" selection color of GimpColor{Button,Panel} ...
... when the button is clicked

Previously, the old color retained its previous value, so when the color
selection dialog was canceled, the button's color would go back to a
potentially outdated value, instead of the color it had when it was
clicked (for continuously-updated color buttons, at least.)
2016-05-16 11:49:00 +00:00
Kristian Rietveld
a31fe9521f libgimpwidgets: Mac OS X: fix build 2016-05-07 09:09:06 +02:00
Michael Natterer
6c64cb0f16 libgimpwidgets: support saving profile in GimpColorProfileChooserDialog
Add the right action buttons, enable overwrite confirmation, and add
user-writable folders to the shortcuts pane. Also use the right API on
OS X instead of hardcoding /Library and ~/Library.
2016-05-07 01:36:23 +02:00
Michael Natterer
83df7f410d libgimpwidgets: more parameters for gimp_color_profile_chooser_dialog_new()
Add "parent" and "action", contraidicting myself from two commits
earlier.
2016-05-07 01:19:26 +02:00
Michael Natterer
f7f9174a9c Revert "libgimpwidgets: remove gimp_color_profile_chooser_dialog_new()"
This reverts commit 2bfd0711e8.

Don't ask...
2016-05-07 00:57:40 +02:00
Michael Natterer
2bfd0711e8 libgimpwidgets: remove gimp_color_profile_chooser_dialog_new()
Its API was too limited, and adding parameters for what we need next
would be equally random. It's a rarely used and mostly internal
widget, so simply use g_object_new().
2016-05-06 22:57:32 +02:00
Kristian Rietveld
61a1c877c1 libgimpwidgets: Mac OS X: read ICC profile from the correct buffer
Clearly, the buffer to read the ICC profile from is pointed to by
"buffer", not "data" which is a CFDataRef. I doubt the old code was
ever tested.
2016-05-06 20:53:41 +02:00
Kristian Rietveld
48721b5152 libgimpwidgets: update OS X code to get display profile to new API
The API that is currently used is deprecated since 10.6.
2016-05-06 20:53:09 +02:00
Michael Natterer
1bfd57b99c libgimpwidgets: add a shortcut to the profile chooser dialog on OS X too
Apparently it's "/Library/ColorSync/Profiles".
2016-05-05 19:40:52 +02:00
Michael Natterer
47ef3be145 Initialize GValues with G_VALUE_INIT instead of { 0, } 2016-03-26 15:59:26 +01:00
Jehan
7fe64b747c app, libgimpwidgets: Dark theme and Symbolic icons as defaults.
These seem the expected theming defaults nowaydays, for a graphics
software, and so GIMP will follow these recommendations.
2016-03-25 20:53:22 +01:00
Michael Natterer
f2d581a536 Bug 761170 - Warnings building with clang
Fix a bunch of clang warnings.
2016-02-12 22:49:47 +01:00
Jehan
30e4826473 app, libgimpwidgets: update gimp_prop_foo_new() documentation comments.
Explains what happens when NULL labels are used.
2016-02-11 16:35:45 +01:00
Michael Natterer
9c4dd960a0 app, libgimpwidgets: allow NULL labels in some gimp_prop_foo_new() functions
and fall back to the GParamSpec's nick.
2016-02-09 23:35:06 +01:00
Jehan
96b5e5345e libgimpwidgets: add new symbols in def file. 2016-02-02 21:54:30 +01:00
Jehan
1f4839288e Bug 648776 - fixes symmetry painting after Massimo and Mitch's reviews.
Use a GType for the PROP_SYMMETRY property of GimpImage, and create
a default "identity" symmetry for an image.
I still use a GimpIntComboBox but store the property value in the
user-data column because gpointer isn't a subset of gint.
Adds in libgimpwidgets:
- gimp_int_combo_box_set_active_by_user_data()
- gimp_int_combo_box_get_active_user_data()
- gimp_int_store_lookup_by_user_data()
- gimp_prop_pointer_combo_box_new() to create a GimpIntComboBox and
  attach it to a gpointer property.
Thanks Massimo and Mitch for reviewing my code.
2016-02-02 21:15:13 +01:00
Jehan
76f573c981 Bug 648776 - mirror symmetries.
You can now set any paint tool to mirror painting relatively
horizontal/vertical axis or a central point (any combination of these 3
symmetries).
This has been implemented as a new multi-stroke core, where every stroke
is actually handled as a multi-stroke (default of size 1).
This is also the first usage of custom guides for symmetry guiding.
Current version has to be activated in the playground.
2016-02-02 21:15:13 +01:00
Michael Natterer
a940300525 libgimpwidgets: make GimpDialog's help_id settable after construction 2016-01-17 17:35:33 +01:00
Benoit Touchette
fdb582b95c icons: fix compile errors
Fixed "gimpicons.c:30:45: fatal error: icons/Default/gimp-icon-pixbufs.c:
No such file or directory" after commits :
ee512b610d
fa9e5b8f98
Fixed "ln: failed to create symbolic link ‘12/gimp-default-colors.png’:
File exists" by forcing new symlinking on creating get-default-colors.png
for Symbolic-inverted to prevent error during make.
2016-01-11 08:48:14 -05:00
Jehan
ee512b610d icons: "Default" icon theme renamed to "Color".
Conveys well the duality of Color vs. Symbolic icons, terms usually
used by designers in recent design texts.
2016-01-11 03:20:13 +01:00
Jehan
fa9e5b8f98 app: do not hardcode default theme and icon theme all over the code.
Create GIMP_CONFIG_DEFAULT_(ICON_)?THEME in gimpguiconfig.h to set
defaults in a single place, except for libgimpwidgets/ which cannot
include from app/.
2016-01-11 03:15:36 +01:00
Michael Natterer
ccd6e31673 libgimpwidgets: use g_printerr() not g_warning() for wrong icon theme paths 2016-01-04 00:30:51 +01:00
Jehan
da1b4dac42 libgimpwidgets: missing link library for GetICMProfile() on Win32.
This function is available in gdi32 library.
https://msdn.microsoft.com/en-us/library/windows/desktop/dd316948%28v=vs.85%29.aspx
2015-12-29 18:43:41 +01:00
Michael Natterer
d4aa39a7cd app, libgimpwidgets, icons: rename mypaint brush icons and help ID
from "mybrush" to "mypaint brush".
2015-12-21 00:09:55 +01:00
Michael Natterer
a5eff27149 app: add new GimpData subclass GimpMybrush and infrastructure around it
- GimpContext API and property
- a GimpDataFactory
- List and grid views with GimpDataFactoryView
- actions and a context menu

None of this is connected to the actual tool yet, or depends on
libmypaint in any way.
2015-12-20 23:51:44 +01:00
Michael Natterer
a33daf99fe libgimpcolor: rename RGB and GRAY gimp_color_profile_new_*() functions
to be more consistent, as discussed in bug #756389.
2015-12-15 20:42:21 +01:00
Michael Natterer
71894bd787 libgimpwidgets: rename gimpstock.[ch] to gimpicons.[ch]
because stock is on its way out, so we better start renaming and
deprecating stuff sooner than later.
2015-12-12 20:44:46 +01:00
Michael Natterer
69f87bcc84 libgimpwidgets: be smarter when changing icon themes, and have fallbacks
Add gimp_stock_set_icon_theme() which can be called at any time, also
before gimp_stock_init(), in which case we avoid setting the configured
icon theme twice on startup. Call it from libgimp/gimpui.c and
from app/gui/icon-themes.c so the app and plug-ins use the same
icon theme.
2015-12-12 19:32:11 +01:00
Jehan
5beb69d009 icons: new symbolic icon theme for GIMP.
Images originally created by Jakub Steiner and Barbara Muraus as the
"Art Libre" icon set.
The contributor jEsuSdA later worked on it.
It will now be available in the new icon theme selection through
preferences.
Many icons/size are still missing but this first commit makes a start
for complementary work.
2015-12-09 23:00:14 +01:00
Benoit Touchette
6762bf5b9b Bug 759105 - Patch to add icon theme selection
Add support for custom icon themes much like custom theme
support. There is still work to be done but this is the
basic functionality.
2015-12-09 12:50:15 +01:00
Michael Natterer
494398e3b8 Bug 756019 - Color pickers UX inconsistencies
Switch the axes of the GimpColorSelect color area so that on the X
axis, we always modify the first of the two channels of RGB or HSV
that are edited here, and on the Y axis the second.
2015-10-08 23:47:16 +02:00
Michael Natterer
cda4ab7492 libgimpwidgets: argh... 2015-10-08 22:47:32 +02:00
Michael Natterer
560d481083 libgimpwidgets: some more cleanup in GimpColorSelect 2015-10-08 22:24:13 +02:00
Michael Natterer
494ec0ace5 libgimpwidgets: change GimpColorSelect's handle positions to double
so we can select more than 256 values on each color channel.
2015-10-08 21:10:33 +02:00
Michael Natterer
30a86e38b8 libgimpwidgets: slightly redo how GimpPickButton calls its new backends
to make porting to GTK+ 3.x easier, for less diff to the gtk3-port
branch.
2015-10-06 23:44:36 +02:00
Michael Natterer
1debefb20f Bug 756019 - Color pickers UX inconsistencies
Increase spacing between the HSV and RGB slider groups in
GimpColorScales. Yes there was spacing before, but hardly visible.
2015-10-06 23:39:49 +02:00
Michael Natterer
a89e1d6d8c libgimpwidgets: fix signal emission in gimppickbutton-default.c
so color picking works again on != OS X ;)
2015-10-06 23:31:21 +02:00
Kristian Rietveld
153b19ac56 Only build Quartz-specific color picking code on OS X/Quartz builds 2015-10-04 18:11:16 +02:00
Kristian Rietveld
e570eb0be4 Make gimp_pick_button_clicked properly private 2015-10-04 17:14:10 +02:00
Kristian Rietveld
0d88399eb8 Bug 753175 - color picker locks down the GUI
The common code relies on X11 pointer grabbing semantics, which does
not work well on OS X. An attempt using event taps also proved
problematic, in particular with regard to setting the mouse cursor.

This patch implements a fully separate code for use on OS X platforms.
It works by simply overlaying the desktop with big transparent windows
on which the mouse cursor is set and motion events are captured. Evil,
but it works.
2015-10-04 16:27:17 +02:00
Michael Natterer
f6df750714 libgimpwidgets: minor formatting changes in gimpruler.c
to make rebasing this file in gtk3-port a little less painful.
2015-09-27 13:45:13 +02:00
Michael Henning
8c02b360fb libgimpwidgets: Disconnect ruler's idle handler in dispose
As discussed on irc, this is more appropriate than finalize because
we shouldn't be making any gtk calls after dispose.
2015-09-06 17:41:09 -04:00
Michael Henning
3233a70bae libgimpwidgets: Avoid updating the rulers too often.
Ever since 72617e42b, whenever the user generated a lot of mouse
input, we would constantly queue redraws to the rulers. These redraws
had a higher idle priority than updating the canvas, so we would
rarely get around to canvas updates, which made certain tools
(painting with dynamics, the blend tool) feel very unresponsive.

This fixes it by only redrawing the rulers if the mouse has moved
far from the last location, or if there are no idle handlers with
a priority above LOW.
2015-09-06 17:18:12 -04:00
Michael Natterer
fd0203ce80 libgimpwidgets: change parameters of gimp_widget_get_color_transform()
Change GimpColorManaged to GimpColorProfile.
2015-09-01 23:40:57 +02:00
Michael Natterer
0d3978df87 libgimpwidgets: improve the looks of GimpColorProfileView 2015-08-22 22:00:51 +02:00
Michael Natterer
10e4a261a7 libgimpwidgets: simplify GimpColorProfileChooserDialog's preview widget
There is no need for a frame around a scrolled window, the scrolled
window has the same shadow type API.
2015-08-22 11:20:00 +02:00
Michael Henning
72617e42b4 Bug 736411 - Ruler updates cause slowdown when painting
We now avoid drawing rulers in the position property setter and use
gtk's region invalidation instead. Previously, we were basically
redrawing the ruler inside the mouse event handler, which is pure evil.
2015-08-13 11:41:18 -04:00
Michael Natterer
5672e80ea1 libgimpwidgets: port GimpColorProfileStore and -ComboBox to GFile
and deprecate the old filename-based API. Port everything to use the
new GFile functions.
2015-08-01 16:20:14 +02:00
Michael Natterer
cbae4cb20a Bug 752377 - Incorrect UTF-8 string for ICC files, Pango error
gimp_color_profile_combo_box_set_active(): don't unref the profile
then use its label (which is owned by the profile). Found by Massimo.
2015-07-16 19:17:38 +02:00
Michael Natterer
0693298d63 libgimpcolor, *: change all GimpColorConfig getters to return const gchar*
instead of a gchar* which has to be freed. Cache all the strings in
the GimpColorConfig instance.
2015-07-12 14:10:18 +02:00
Michael Natterer
c102dde92b libgimpcolor, *: change GimpColorProfile to be a GObject
it used to be a typedef to gpointer and actually was a cmsHPROFILE.

Change its API to be more "standard", remove the public close()
function. The object caches both the cmsHPROFILE and the data/length
ICC blob, so conversions between the two become obsolete (simply call
get_lcms_profile() or get_icc_profile()).

Adapt everything to the new API, but port it in a naive way for now,
the code doesn't take advantage of the new possibilities yet (like
refcounting).
2015-07-10 22:53:59 +02:00
Michael Natterer
16971ff186 libgimpwidgets: formatting cleanup in gimp_widget_get_color_transform() 2015-06-16 23:43:04 +02:00
Michael Natterer
affef350e7 libgimpwidgets: fix registration of GimpRuler's "unit" property
Install it with the PROP_UNIT id not PROP_LOWER (probably a copy &
paste mess). Spotted by John Cuppit.
2015-06-14 22:57:46 +02:00
Michael Natterer
3565b33019 libgimpconfig: rename the new GimpColorConfig profile accessor functions
gimp_color_config_get_foo_profile() -> get_foo_color_profile()

because the old names clash with possible future accessors for the raw
filename properties.
2015-06-03 09:57:34 +02:00
Michael Natterer
4910c28957 libgimpcolor: rename the gimp_lcms_*() functions to gimp_color_profile_*()
because it doesn't make sense to call the typedef GimpColorProfile
but the function namespace gimp_lcms_*().
2015-06-03 09:41:23 +02:00
Michael Natterer
8005eea835 Remove the "GIMP" from all "Since: GIMP 2.x" API doc comments
because it confuses gtk-doc and breaks some links. Also change the
"Index of new symbols in GIMP 2.x" sections to be what seems to be the
modern standard (looked at the GLib and GTK+ docs), and update some
other stuff.
2015-05-31 21:18:09 +02:00
Michael Natterer
2dd6d7fa65 libgimpwidgets: remove /* GIMP_DISABLE_DEPRECATED */ from #endif
It seems to confuse gtk-doc.
2015-05-30 21:55:53 +02:00
Michael Natterer
263fabbb9b libgimpwidgets: simplify gimp_widget_get_color_transform()
Make sure src_profile and dest_profile always exist. Also optimize
things by not returning a transform if the profiles are equal.
2015-05-30 01:07:34 +02:00
Michael Natterer
d3e11c5b2c modules, libgimpwidgets: use gimp_color_managed_get_color_profile()
which always returns a profile, instead of code that uses the ICC
blob and falls back to GimpColorConfig's profile, then falls back
to the built-in profiles.
2015-05-27 12:53:46 +02:00
Michael Natterer
4c55f45552 libgimpwidgets: don't try to open non-regular files as ICC profiles
Instead, show proper messages in the profile chooser's preview pane.
2015-05-19 13:12:34 +02:00
Michael Natterer
d93ed29f45 libgimpwidgets: gimp_widget_get_color_transform: honor display-profile-from-gdk 2015-05-13 01:12:03 +02:00
Michael Natterer
394bc25be1 libgimpwidgets: return the formats from gimp_widget_get_color_transform()
Turn the src_format and dest_formats into "const Babl **" and make
them return the actually used formats. Change the lcms display module
accordingly.
2015-05-11 00:45:18 +02:00
Michael Henning
af84148fed libgimpwidgets: Fix the order of #includes
Otherwise, G_OS_WIN32 and GDK_WINDOWING_QUARTZ will never be
defined by the time we reach the #ifdefs.
2015-05-08 22:53:49 -04:00
Michael Natterer
f21f6e5a28 libgimpwidgets: add gimp_widget_get_color_transform()
Which returns a GimpColorTransform to transform a GimpColorManaged's
pixels to a GtkWidget's color space, using a GimpColorConfig's
settings. This is *unfinished* API and in the end will enable simple
display color management for the app, libgimp and plug-ins.
2015-05-09 01:20:50 +02:00
Michael Natterer
6b0b774302 libgimpwidgets: add gimpwidgetsutils.[ch]
Move some functions from libgimpwidgets/gimpwidgets.[ch]
and from app/widgets/gimpwidgets-utils.[ch]. Newly add
gimp_widget_get_color_profile() which is extracted from
modules/display-filter-lcms.c.
2015-05-06 22:15:30 +02:00
Michael Natterer
6c800db1cc Use the newly added profile utility functions all over the place 2015-05-06 16:38:57 +02:00
Michael Natterer
957471604f icons, app, libgimpwidgets: use GResource for the compiled-in icons
And a small improvement in cursors/Makefile.am
2015-04-21 21:57:08 +02:00
Michael Natterer
c72bc50e5d Bug 747057 - Usability issues with GimpFileEntry
Make the "Show in File Manager" button insensitive when the file entry
is empty.
2015-04-15 22:56:19 +02:00
Michael Natterer
7c36f94f7f cursors,app,libgimpwidgets: include cursors using GResource
instead of deprecated inline pixbufs. Require on gdk-pixbuf >= 2.30.8.
2015-04-14 22:55:10 +02:00
Michael Natterer
071ede915a app: first draft of GimpMybrushTool, which uses MyPaint brushes 2015-03-30 22:38:34 +02:00
Michael Natterer
9b6bacc0d8 Bug 723901 - Add open in file manager button in Folders settings
Add the button, using the new gimp_file_show_in_file_manager() API.
2015-03-29 23:52:11 +02:00
Michael Natterer
f8a9f39466 libgimpwidgets: use gtk_window_set_default_icon_name()
instead of gtk_window_set_default_icon_list() which requires having
actual GdkPixbufs around. Move the 32x32 and 48x48 wilber images to
the icon theme, and remove all inline pixbuf generation stuff from
libgimpwidgets.
2015-03-29 21:00:11 +02:00
Johannes Matschke
2989bad35a Bug 721009 - new transform tool with freely placeable handles
Add new tool GimpHandleTransformTool which allows to freely place up
to 4 handles on the image, then move any one of them, which transforms
the image so that the remaining handles keep their position.

Did quite some cleanup on the code before pushing --Mitch
2015-03-05 12:36:59 +01:00
Marek Dvoroznak
f15a7bc71d app: add NPD tool basics 2015-02-27 20:21:51 +01:00
Michael Natterer
36548fd1ad Bug 745126 - gimp_preview_area_blend() fails for RGBA image...
...if buf1 and buf2 have same alpha value

Fix a misplaced } that was causing the final write to the destination
buffer to be executed only for the case where the alphas are
different. Thanks to Jonathan Tait.
2015-02-27 09:50:34 +01:00
Massimo Valentini
20863440fb Bug 736411 - Ruler updates cause slowdown when painting
Reuse the cairo_t from expose() in gimp_ruler_draw_pos() instead of
creating a new one.
2015-01-10 23:37:31 +01:00
Michael Natterer
1dd2752949 Bug 742202 - new layer/path dialog opens always in the upper left corner
gimp_dialog_set_property(): when setting a non-toplevel parent widget,
don't just set the dialog's screen, also set the window position to
GTK_WIN_POS_MOUSE, so the window opens at the mouse position.
2015-01-08 21:13:41 +01:00
Michael Natterer
9df726cbad Bug 742229 - "pixels" entries get added to unit menus on each popup
_gimp_unit_store_sync_units(): don't trigger a sync of newly added
units if we encounter GIMP_UNIT_PERCENT, it has a special value that
is always larger than any other unit. All unit menus containing
"percent" were broken the same way.
2015-01-03 17:22:50 +01:00
Michael Natterer
aafc2368cd libgimpwidgets: make GimpColorSelection's main_hbox expand vertically
so the color dialogs become properly resizable again. This must have
been broken for ages.
2014-11-29 12:52:26 +01:00
Michael Natterer
7cbb04c0f9 libgimpwidgets: don't leak the empty_iter in GimpIntStore 2014-10-06 20:31:51 +02:00
Jehan
8c1cd7caac Makefile: fix VPATH builds for win32. 2014-09-14 18:28:26 +02:00
Michael Natterer
b7863269f0 libgimpcolor: change gimp_lcms_profile_open_from_file() from filename to GFile
and change most of the lcms plug-in to using GFile too.
2014-07-04 23:57:27 +02:00
Michael Natterer
b78d9c9f35 libgimpwidgets: forgot two gimp_spin_button_new() 2014-06-22 00:00:46 +02:00
Michael Natterer
eaea58f5e3 libgimpwidgets: deprecate gimp_spin_button_new()
it should have never been added in the first place. Port all users
to using gtk_spin_button_new() directly.
2014-06-21 22:35:39 +02:00
Michael Natterer
b9265ebfb9 Bug 731765 - "Value Propagate" dialog's "Propagating rate" spinbuttons...
...are much too quick

In gimp_scale_entry_new(), set the spinbutton's climb_rate to the same
value as step_increment instead of hardcoding 1.0. This should make
many spinbuttons behave better.
2014-06-21 16:52:18 +02:00
Michael Natterer
77a515dd0f app, libgimpwidgets: don't set unchanged object properties again
gimp_prop_adjustment_callback(): compare the property's current value
before setting it.
2014-06-19 02:01:10 +02:00
Michael Natterer
306e81b11d icons, libgimpwidgets: get rid of compiled-in icons
Register the stock icons with icon-name sources instead of inline
pixbuf sources so they simply use the icon theme icons insatead of
duplicating them.
2014-05-20 02:15:24 +02:00
Michael Natterer
bbf01ebabf libgimpwidgets, app: add gdk_screen_get_monitor_workarea()
to the gimp3migration hack and use it where appropriate, so in the
gtk3-port branch windows will not overlap with docks, panels etc.
2014-05-19 14:37:32 +02:00
Michael Natterer
ae331bc7ac libgimpwidgets: add the EEK Wilber as builtin icon
so gimp_widget_load_icon() always returns a pixbuf and GIMP doesn't
crash.
2014-05-15 15:40:47 +02:00
Michael Natterer
8be52f6aa7 app, libgimp*: pass translated blurbs to GIMP_CONFIG_INSTALL_PROP_FOO()
instead of passing N_()-strings; and remove gettext() calls on these
strings when using them. Reduces complexitx, and fixes double- and
untranslated strings. Also enables to treat properties of GIMP and
GEGL objects the same way, which was totally broken before.
2014-05-14 23:34:01 +02:00
Michael Natterer
65a65947d9 app, libgimp: replace GTK_STOCK_FOO by icon names
unless it's a stock ID used for an action button, will address that
later.
2014-05-11 22:49:22 +02:00
Michael Natterer
4b629e984b libgimpwidgets: add GimpColorDisplayClass::icon_name
and deprecate its stock_id.
2014-05-10 11:53:07 +02:00
Michael Natterer
1ec64abb8b libgimpwidgets: add GimpColorSelectorClass::icon_name
and deprecate its stock_id.
2014-05-10 08:34:42 +02:00
Michael Natterer
9331ef2456 libgimpwidgets: change GimpController's stock_id to icon_name
This API change is OK since the entire controller API is marked as
unstable and needs a special #define to be visible at all.
2014-05-09 09:19:06 +02:00
Michael Natterer
63c5508d4d libgimpwidgets: use the renderer's icon-name in GimpIntComboBox 2014-05-09 02:04:25 +02:00
Michael Natterer
3e4485fdcf libgimpwidgets: forgot a few image_new_from_stock() -> from_icon_name() 2014-05-09 00:56:25 +02:00
Michael Natterer
ed7cdba5b6 libgimpwidgets: add gimp_prop_icon_image_new()
and deprecate gimp_prop_stock_image_new().
2014-05-09 00:56:24 +02:00
Michael Natterer
3372ca82da libgimpwidgets: properly implement GimpCellRendererToggle's icon-name property
and change the parameter of new() from stock_id to icon_name.
2014-05-08 12:38:50 +02:00
Michael Natterer
16e9188b1f icons: rename gimp-eye.png to gimp-visible.png 2014-05-08 12:37:42 +02:00
Michael Natterer
2980f18973 libgimpwidgets: use gtk_icon_theme_load_icon() in GimpPageSelector 2014-05-08 09:22:46 +02:00
Michael Henning
ab36f26e63 libgimpwidgets: Fix error in docs for gimp_enum_combo_box_set_icon_prefix
This function was just added in 79bd9c60de
2014-05-07 19:15:52 -04:00
Michael Natterer
ae4a41d7a5 themes, icons: move icons from themes/Default/images/ to the toplevel icons/
and install them in datadir/icons.
2014-05-07 21:57:21 +02:00
Michael Natterer
6615891990 libgimpwidgets: fix warnings in last commit in GimpHintBox 2014-05-07 21:56:53 +02:00
Michael Natterer
79bd9c60de libgimpwidgets: mostly port from stock IDs to icon names
Add some new API and deprecate old one.
2014-05-07 21:32:09 +02:00
Michael Natterer
b7e50079a6 libgimpwidgets: add a hackich "icon-name" property to GimpCellRendererToggle
half-implemented, just for the purpose of having an "icon-name", it
uses the icon name as stock ID, which works as long as we keep
both icon systems around.
2014-05-07 15:28:51 +02:00
Michael Natterer
1814641a50 themes, libgimpwidgets: install an index.theme and prepend our icon theme...
to the search path. The index.theme is a copy of the upstream hicolor
index.theme with our custom sizes added, and it has to be first in the
path to be used at all. This. Is. Broken.
2014-05-07 15:02:33 +02:00
Michael Natterer
9ed5b3f45e app: port GimpAction and friends to icon names 2014-05-06 23:47:38 +02:00
Michael Natterer
bfa6edf519 libgimpwidgets: add our installed icon theme to the search path 2014-05-06 22:45:19 +02:00
Michael Natterer
cffc8234fa themes, libgimpwidgets: prepare the icons to be named icons from an icon theme
Rename them and move them into folders, e.g.:

stock-foo-16.png -> 16/gimp-foo.png

This change only moves internal stuff around,
it's not visible on any API.
2014-05-06 19:13:04 +02:00
Rickard
5ec413a5e8 Bug 729326 - Errors found using a static code analysis program cppcheck
Fixed some memory and file leaks. And removed some code and variables
that are not used.
2014-05-05 10:34:08 +02:00
A Kelday
c808789e1d Bug 728911 - Fixes to libgimpwidgets for c++ plugins using gimpui
Add missing G_END_DECLS to libgimpwidgets headers.
Avoid use of c++ "private" keyword.
2014-04-25 00:33:29 +02:00
Michael Natterer
c2ab3f6d50 libgimpwidgets: add a string to GIMP_STOCK_TOOL_FOREGROUND_SELECT 2014-04-18 22:14:41 +02:00
Michael Natterer
614c61a3dd Don't #include <glib.h> before <lcms.h>
The include claimed to be because of "inline" in the lcms header, but
that was probably lcms1, since there is no trace of inline in the
lcms2 header.
2014-04-10 20:48:22 +02:00
Michael Natterer
661317f74c libgimpwidgets: make using GimpColorProfileComboBox easier
If the passed dialog is a GimpColorProfileChooserDialog, handle its
"response" signal automatically and also destroy it when the combo box
is destroyed (before we leaked all dialogs). Remove the same callback
from all places using GimpColorProfileComboBox.
2014-04-04 17:09:54 +02:00
Michael Natterer
3f826d02fa libgimpwidgets: make GimpColorProfileComboBox use lcms
and improve gimp_color_profile_combo_box_set_active() to get the
profile's label from the ICC file if no label was provided. Simplifies
all its callers and removes code duplication.
2014-04-02 13:03:52 +02:00
Michael Natterer
d7037650df libgimpcolor: add gimp_lcms_profile_get_label()
which returns a string meant to label the profile in the GUI, it's
either the profile's description, its model, or "(unnamed profile)" as
a fallback. Use the function instead of duplicating that logic
inconsistently and imcompletely all over the place.
2014-03-30 03:12:42 +02:00
Michael Natterer
32e47cf70d libgimpcolor: add gimp_lcms_profile_is_equal()
and remove all of our own MD5 digest code and API. is_equal() uses
lcms' own MD5 API which I missed before. Thanks Elle for pointing that
out :)
2014-03-29 10:40:47 +01:00
Michael Natterer
f6ee562884 libgimpwidgets: add padding to GimpColorProfileChooserDialogClass 2014-03-23 23:59:40 +01:00
Michael Natterer
dc8a3e8de5 libgimpwidgets: remove gimp_color_profile_chooser_dialog_get_desc()
and port its only user (the prefs dialog) to the code all other users
of GimpColorProfileChooserDialog use.
2014-03-23 23:50:54 +01:00
Daniel Sabo
5cee9408be app,gimpwidgets: Add some missing libs so the tests build 2014-03-20 03:15:50 -07:00
Michael Natterer
76f47708fa libgimpwidgets: #include gimpimageprofileview.h from gimpwidgets.h 2014-03-16 18:36:12 +01:00
Michael Natterer
c6ac6913af libgimpwidgets: use a GimpColorProfileView in GimpColorProfileChooserDialog 2014-03-16 18:36:12 +01:00
Michael Natterer
dc6b8ec8f6 libgimpwidgets: add new widget GimpColorProfileView
which is a totally trivial GtkTextView subclass and displays
color profile information.
2014-03-16 18:36:11 +01:00
Michael Natterer
abb3f27cdb libgimpwidgets: use gimp_lcms_profile_open_from_file() in the profile chooser 2014-03-16 15:57:14 +01:00
Daniel Sabo
b54b59c9e8 Use EXTRA_foo_DEPENDENCIES for adding .def files
The foo_DEPENDENCIES rule replaces the default dependencies, where
EXTRA_foo_DEPENDENCIES just appends to it. This was causing libgimp
and libgimpui to build out of order.
2014-03-15 14:23:38 -07:00
Michael Natterer
3ac04f9fe1 libgimpwidgets: more spacing around the profile chooser's preview textview 2014-03-15 00:09:35 +01:00
Michael Natterer
13ee151a1e libgimp*: use LIBADD and DEPENDENCIES consistently in all Makefiles 2014-03-14 22:39:51 +01:00
Michael Natterer
9c7cd2508f app, libgimpwidgets: move GimpProfileChooserDialog to libgimpwidgets
and call it GimpColorProfileChooserDialog. Make libgimpwidgets
depend on lcms and make it query the profile directly.
2014-03-14 22:03:08 +01:00
João S. O. Bueno
72ac53705f Adds "fill" arrange modes to the Align Tool
The Align Tool had to be used in a very hacky way if one
intended to evenly distribute items across an image,
or other reference object (it would actually require one to
calculate the item spacing out of GIMP). This adds vertical
and horizontal fill modes: the reference object is divided
in N equal segments, where N is the number of items,
and each item is placed in the center of one of
these segments. The existing "offset" parameter
is used as an extra margin for the distribution,
and can be set to negative values, so that the items can
even get moved outside the boundaries of the reference object.
2014-03-13 03:38:53 -03:00
Michael Natterer
66298ba869 Bug 605872 - Units dropdown list is not updated
Add private API _gimp_unit_store_sync_units() which emits
"row-inserted" on each unit that didn't exist when the GimpUnitStore
was created, or when sync_units() was called the last time.

In GimpUnitComboBox, call sync_units() each time the combo is popped
up, or a unit is set on the combo.
2014-03-10 00:17:15 +01:00
Michael Natterer
7385e030dd app, libgimp: add increment parameters to gimp_prop_widget_set_factor()
Step and page increments can't be reasonable calculated or guessed
based on the GUI widget's factor, so pass them each time we call
set_factor(). This change reintroduces sane ranges for the levels tool
for != u8 images again.
2014-02-03 22:57:51 +01:00
Michael Natterer
219bf35299 Bug 723177 - After opening an ICC profile with a long description...
...dialogs are too wide

Ellipsize GimpColorProfileComboBox' label.
2014-01-28 18:54:46 +01:00
Daniel Sabo
afc40ffda0 Add automake 1.13+ test outputs to .gitignore 2014-01-10 15:31:34 -08:00
Michael Natterer
fb01bb37d2 Bug 721067 - Opacity slider broken in "Edit/Fade [plugin]..." dialog
gimp_prop_opacity_entry_new(): need to pass FALSE not TRUE to
gimp_prop_scale_entry_new()'s limit_scale parameter, it has the
inverse meaning than the same boolean in gimp_scale_entry_new().

This is perhaps a bug, but we can't change that now; instead, fix the
argument names and docs of gimp_prop_scale_entry_new() to point out
the difference.
2013-12-26 14:01:34 +01:00
Michael Natterer
f489ef2c5a libgimpwidets: don't pick transparent colors in gimp_pick_button_pick()
Full opacity in gimp_rgba_set_uchar() is 255, not 1.0.
2013-11-16 22:53:16 +01:00
Michael Natterer
50d4fe3496 libgimpwidgets: add GimpColorDisplay::convert_buffer()
which takes a GeglBuffer and a GeglRectangle.
2013-11-01 22:34:09 +01:00
Michael Natterer
5fd46384a5 libgimpwidgets: include <gegl.h> in all files that include gimpcolordisplay.h 2013-11-01 22:32:31 +01:00
Michael Natterer
697572ccc0 app,libgimp*: fix includes to follow our include policy
- don't include <gdk-pixbuf/gdk-pixbuf.h> in headers in app/
- instead, include it in many .c files instead of <glib-object.h>,
  finally acknowledging the fact that app/ depends on gdk-pixbuf almost
  globally
- fix up includes as if libgimpbase depended in GIO, which it soon will
2013-10-15 01:58:39 +02:00
Michael Natterer
5466caa064 libgimpwidgets: return an opaque color from gimp_pick_button_pick()'s OSX code
and fiddle with whitespace a bit.
2013-10-11 22:52:38 +02:00
Daniel Sabo
e6ed0a4c50 Use the Quartz core graphics API to implement gimp_pick_button_pick when building with GDK Quartz.
Signed-off-by: Clayton Walker <clayton.m.walker@gmail.com>
2013-10-11 13:57:49 -06:00
Michael Natterer
ad2a577606 libgimpwidgets: support the same "factor" logic as in app's prop widgets 2013-06-17 02:14:17 +02:00
Michael Natterer
c8b7ce7006 libgimpwidgets: fix formatting in gimpscaleentry.c 2013-06-17 00:39:15 +02:00
Michael Natterer
ec786816bb */Makefile.am: merge INCLUDES into AM_CPPFLAGS
automake-1.13 finally warns about this anachronism.
2013-06-05 20:48:37 +02:00
Nils Philippsen
755861cc65 libgimpwidgets: fix typo 2013-06-04 10:41:10 +02:00
Michael Natterer
8a2474a371 libgimpwidgets: never ellipsize anything in the combo box' popup
The popup can be wider than the widget, so show the full strings.
2013-06-03 21:33:21 +02:00
Michael Natterer
34ee988a93 libgimpwidgets: only ellipsize GimpIntComboBox's text if requested 2013-06-03 16:57:42 +02:00
Michael Natterer
418a310f36 libgimpwidgets: add a "label" property and API to GimpIntComboBox
If set, the label is displayed left-aligned inside the combo box, and
the normal content moves to the right. Reconfigure the combo's
contents when the popup is shown/hidden, so the popup widget is not
affected by the label. This requires an evil hack because of a bug in
GtkCellView. The hack automatically disables itself once GTK+ 2.24.19
(which has a fix) is used.
2013-06-03 16:36:25 +02:00
Michael Muré
c86daeabb1 libgimpwidgets, themes: setup a dumb icon for the tool
(Add the icon in advance so the gimpstock.h change doesn't trigger
a full rebuild when switching branches)
2013-05-18 10:40:41 +02:00
Clayton Walker
05ac996881 Register GIMP_STOCK_TOOL_SEAMLESS_CLONE 2013-05-15 00:25:32 +02:00
Alexandre Prokoudine
aaaa9eef85 Bug 699257 - Duplicated shortcut for Set Image Canvas Size dialog
Stock Reset and Resize buttons had clashing _R accelerator in the
Resize Canvas Size dialog.
2013-05-13 01:06:12 +02:00
Michael Natterer
f45e7c26be libgimpwidgets: add gdk_cairo_get_clip_rectangle() to gimpwidgets.def 2013-04-20 14:49:25 +02:00
Michael Natterer
89bf66d471 libgimpwidgets: add gdk_cairo_get_clip_rectangle() to gimp3migration.[ch] 2013-04-19 02:23:21 +02:00
Téo Mazars
24a2113170 Bug 656522 - Scaled Image Rounds Up To Nearest Pixel
Prevent gimp_coordinates_callback () to be called recursively
when x and y are chained.

One call puts all values in a consistent state, a recusive call can
cause side effects (calculations with rounded values)
2013-03-27 01:04:33 +01:00
Michael Natterer
d1503ead83 Bug 694477 - GimpSizeEntry input validation doesn't snap to min/max values
gimp_size_entry_eevl_input_callback(): CLAMP() the input value before
passing it back to GtkSpinButton, or it will revert too large/small
inputs back to the old value, instead of using the field's max/min
values.
2013-02-22 21:22:03 +01:00
Michael Natterer
0bbc2b6231 libgimpwidgets: set a min size of 8 chars on GimpColorHexEntry
because GtkEntry's default min size is way too large for this use
case.
2013-02-06 23:23:14 +01:00
Ville Skyttä
6b0d1038cc Bug 692641 - Various spelling fixes 2013-01-27 18:59:02 +01:00
Michael Natterer
f1c785fb37 libgimpwidgets: remove all item width logic from GimpPageSelector
It seems GtkIconView got fixed, and now the pile of code I added to
make the layout nice has exactly the opposite effect. Get rid of the
pile.
2012-11-23 23:29:44 +01:00
Massimo Valentini
67525c0d47 Bug 688305: drag and drop for guides broken 2012-11-15 19:02:42 +01:00
Michael Natterer
908f727f0a Chain up unconditionally in GObject::constructed()
It's supported since GLib 2.28.
2012-11-12 21:51:22 +01:00
Michael Natterer
9e5ed1e70a Bug 684003 - When using the main window in secondary monitor...
If gimp_window_set_transient_for() fails (due to platform
restrictions), at least set GTK_WIN_POS_CENTER on the window, so it
gets centered on the monitor where the mouse is. This also removes the
need for OSX specific centering code in GimpDialog (bug 677776).
2012-11-11 21:09:46 +01:00
Michael Natterer
fe19ad9706 Bug 683694 - Spelling errors
Reworded all places that used to say "allows to".
2012-11-11 15:50:25 +01:00
Michael Natterer
e1e32a03a9 Bug 676978 - Improved visibility icons for Layers dialog
make the strike out line a bit thinner and shorter. We shouldn't
change the line's color because using proper theme colors makes sure
the line is always perfectly visible.
2012-11-09 11:37:01 +01:00
Michael Natterer
0b56aa0d13 Bug 677776 - filter popup windows get hidden behind main image window
On OSX, call [NSApp activateIgnoringOtherApps] when a plug-in dialog
is shown, so the plug-in process becomes the active app, and the
dialog gets focussed.

In order to avoid doing this in GimpDialog (which is also used in
the core), do it in gimp_ui_init() which all interactive plug-ins
call, and when gimp_temp_proc_run() is called interactively, to
catch repeated activation of an already running plug-in.

Also, set GimpDialog's initial position to GTK_WIN_POS_CENTER,
or they will pop up in the top left corner.

Inspired by patches from Simone Karin Lehmann and Daniel Sabo.
2012-11-07 23:44:35 +01:00
Mukund Sivaraman
bc079e6cab build: Add $(AM_V_GEN) to more places in Makefile.am files 2012-10-10 13:13:56 +05:30
Mukund Sivaraman
2adb81ee0d libgimpwidgets: Use AM_V_GEN in Makefile.am for pretty output 2012-10-10 03:40:32 +05:30
Michael Natterer
85ea7771d5 libgimpwidgets: make GimpIntStore behave a bit nicer (don't warn)
when used in "unexpected" ways. Where "unexpected" is as simple as
removing an item from the store.
2012-10-08 21:32:59 +02:00
Michael Natterer
2a30a2bb74 Bug 684698 - Preferences-Folders: only 15 folder items accepted
Raise "max_paths" from 16 to 256 in all calls to gimp_path_parse().
2012-09-26 23:29:51 +02:00
Michael Natterer
0ca03e8827 app: add a "Convert Precision" dialog for choosing dithering options
Does absolutely nothing yet.
2012-09-23 23:47:28 +02:00
Michael Natterer
c6ba0ffbdf app/cursors/libgimpwidgets: bye bye stone age B&W bitmap cursors 2012-08-26 22:53:04 +02:00
Mikael Magnusson
99f9d4d219 transformtool: add old "new" unified transformation tool
This is the proof of concept code I wrote before gsoc, with very naive
behaviour and simple interface.
2012-08-20 15:22:21 +02:00
Michael Natterer
012457e81d libgimpwidgets: port more deprecations to GIMP_DEPRECATED 2012-05-06 00:30:54 +02:00
Michael Natterer
486e76bdab libgimp*: use GIMP_API_VERSION in Makefile.am instead of hardcoding 2.0 2012-05-04 15:38:45 +02:00
Michael Natterer
3ad73b3658 libgimpcolor: add GdkPixbuf <-> GeglBuffer utility functions
and update tons of includes in libgimp and app.
2012-05-03 03:37:20 +02:00
Michael Natterer
3e119c5af7 libgimpcolor: add gimp_rgb[a]_set,get_pixel()
which converts from/to any pixel format using Babl. Added tons of
includes and CFLAGS now that libgimpcolor publically uses Babl.
2012-05-02 17:50:43 +02:00
Michael Natterer
2414301799 Review the last few commits and apply some style fanaticism
some completely unrelated,
2012-02-07 20:36:55 +01:00
Massimo Valentini
39368a410d plugged memory leaks 2012-02-07 17:32:02 +01:00
Michael Natterer
056e09a6cb Remove the makefile.msc build system, it is unmaintained since 2008 2011-12-16 15:53:56 +01:00
Michael Natterer
94c322ff70 libgimpwidgets: set GimpColorSelector's config to NULL in dispose()
so the subclasses have a chance to release their stuff.
2011-12-11 02:43:14 +01:00
Michael Natterer
12a8eec444 libgimpwidgets: keep GimpColorNotebook->selectors in a consistent state
by connecting to the notebook's "remove" signal and updating the list
in the callback, so the list is consistent during the widget's
destruction.
2011-12-11 02:41:01 +01:00
Michael Natterer
180cb656ae Remove more gdk_pointer_grab() where they are not strictly needed
and replace them by gtk_grab_add()/remove().
2011-12-10 21:51:05 +01:00
Michael Natterer
ebbad40885 Doc fixes in both source comments and gtk-doc files 2011-11-25 21:39:55 +01:00
Mukund Sivaraman
324ad1e426 libgimpwidgets: Drop redundant assignment 2011-10-12 17:21:23 +05:30
Michael Natterer
6bee9df474 libgimpwidgets: don't hardcode GDK_MOD2_MASK for extended clicked
Instead, check for all sorts of modifiers from the new
gtk_widget_get_modifier_mask(), which are always right
on the current platform.
2011-10-09 23:59:40 +02:00
Michael Natterer
9fff65f1b2 libgimpwidgets: emit GimpButton::extended-clicked() also on MOD2-click
it doesn't hurt on Win/X11 and is needed on OSX for Command-click.
2011-10-06 22:56:04 +02:00
Mukund Sivaraman
643dceec02 libgimpwidgets: Add missing symbols to gimpwidgets.def 2011-10-05 09:25:21 +05:30
Michael Natterer
6e6a70b7f8 libgimpwidgets: add some modifier abstraction API to gimp3migration.[ch]
Work in progress and unused, will help to make things proper on OSX.
2011-10-04 23:09:09 +02:00
Mukund Sivaraman
0afe030552 libgimpwidgets: Remove dead assignments 2011-10-04 14:33:42 +05:30
Martin Nordholts
60d2536bd1 libgimpwidgets: Sort gimpwidgets.def
For make distcheck.
2011-10-03 07:07:10 +02:00
Michael Natterer
f1d4dde36a libgimpwidgets: add gdk_event_triggers_context_menu() to gimp3migration.[ch]
and remove gimp_button_event_triggers_context_menu() again. Update
all callers to use the new function.
2011-10-02 16:23:59 +02:00
Michael Natterer
f007ce352d libgimpwidgets: add gtk_separator_new() to gimp3migration.[ch]
and use it all over the place.
2011-10-02 14:36:42 +02:00
Michael Natterer
2c175b068d libgimpwidgets: add gtk_paned_new() to gimp3migration.[ch]
and use it all over the place.
2011-10-02 14:36:42 +02:00
Michael Natterer
19b9bfd189 libgimpwidgets: add gtk_scale_new() to gimp3migration.[ch]
and use it all over the place. Also change some GtkObject* variables
to GtkAdjustment*.
2011-10-02 14:36:41 +02:00
Michael Natterer
16817c666f libgimpwidgets: add gtk_scrollbar_new() to gimp3migration.[ch]
and use it all over the place.
2011-10-02 14:36:41 +02:00
Michael Natterer
f342b50483 libgimpwidgets: add gtk_button_box_new() to gimp3migration.[ch]
and use it all over the place.
2011-09-30 15:44:33 +02:00
Michael Natterer
83eb6fdc9e libgimpwidgets: use gtk_box_new() 2011-09-30 10:50:50 +02:00
Michael Natterer
030413b9f6 libgimpwidgets: add gimp3migration.[ch] to help the gtk3-port branch
This is such a hack, but entirely safe when linking against GTK+ 2.x.
Please ignore the uglyness.
2011-09-30 10:45:00 +02:00
Michael Natterer
bc4fa9a8c4 libgimpwidgets: support GtkCellRendererToggle's "inconsistent" state
and strike out GimpCellRendererToggle's icon in the inconsistent case.
2011-09-23 23:42:09 +02:00
Michael Natterer
989ac15a97 Bug 659348 - Provide a translation comment for "Empty" 2011-09-23 22:45:32 +02:00
Michael Natterer
d92cd2f6c8 Add gimp_button_event_triggers_context_menu() and use it
instead of checking for event->button == 3, so context menus
work correctly on the Mac. Didn't change the image menu yet
because thet requires some more refactoring.
2011-09-19 00:47:23 +02:00
Michael Natterer
9c6338900e libgimp*: don't derive from GtkHBox and GtkVBox in libgimp either
I know this is not 100% compatible, but is in fact absolutely safe to
change unless somebody is using the headers in ways that are totally
wrong.
2011-07-27 19:53:34 +02:00
Massimo Valentini
c39ca0f74f Initialize two GtkTreeIter
to avoid harmless, but annoying, valgrind warnings on x86_64
2011-06-17 19:02:08 +02:00
Michael Natterer
05cd8670c3 libgimpwidgets: deprecate gimp_toggle_button_sensitive_update()
Use g_object_bind_property() instead.
2011-05-11 22:13:33 +02:00
Michael Natterer
c35ff719a7 app/libgimp*: remove stuff found by -Wunused-but-set-variable 2011-05-01 23:23:19 +02:00
Michael Natterer
2b1807054f libgimp*: update .def files after cairo functions moved between libs 2011-05-01 11:24:26 +02:00
Michael Natterer
1de19c8b57 libgimpwidgets: clean up class struct and add gtk-doc section comment 2011-04-28 17:57:40 +02:00
Michael Natterer
cc47b2a600 libgimpwidgets/color: move the cairo color utility functions to libgimpcolor
Add CAIRO_CFLAGS to a lot of Makefiles to make this possible, and
because they pull in cairo via the libgimp headers.
2011-04-28 15:50:39 +02:00
Michael Natterer
268930f489 libgimpwidgets: gimp_pixmap_button_new, gimp_unit_menu_update -> gimpoldwidgets
where they belog. gimp_unit_menu_update() is newly deprecated.
2011-04-28 14:53:49 +02:00
Michael Natterer
844df2b4df libgimp*: add guards that #error out if individual files are included
This only helps to maintain proper includes in app/ and shouldn't
affect plug-ins at all, because these are supposed to only include the
main headers from libgimp/ since the beginning of time.

The gimpfootypes.h files do not have these guards, so we can continue
to maintain app/'s include policy that is very likely to error out if
wrong things are included.
2011-04-28 14:30:41 +02:00
Mukund Sivaraman
7c879dfa99 libgimpwidgets: Add back gtk-doc comment for @stack 2011-04-27 06:10:14 +05:30
Mukund Sivaraman
4f96dd311e libgimpwidgets: Remove incorrect gtk-doc 2011-04-25 19:35:35 +05:30
Mukund Sivaraman
d04efe3a03 libappwidgets: Initialize arrays before use 2011-04-25 19:34:02 +05:30
Mukund Sivaraman
27db4d9fc0 libgimpwidgets: Fix typo in array index 2011-04-25 19:32:08 +05:30
Mukund Sivaraman
a31d8dab79 Revert "libgimpwidgets: Don't use light[3] and dark[3] as they're both uninitialized"
This reverts commit a0ff981041.
2011-04-25 19:29:55 +05:30
Michael Natterer
d272159194 libgimpwidgets: use gdk_cairo_set_source_window() instead of source_pixmap() 2011-04-22 00:44:32 +02:00
Mukund Sivaraman
a0ff981041 libgimpwidgets: Don't use light[3] and dark[3] as they're both uninitialized
This also removes the bogus double assignment to l[2].
2011-04-21 14:22:13 +05:30
Michael Natterer
59ea89234f app: GimpRuler: clip position marker drawing to the ruler's allocation
so we don't overdraw when drawing out of expose.
2011-04-20 00:31:59 +02:00
Michael Natterer
7e6c026790 Globally use GDK_KEY_foo, remove the compat defines from widgets-enums.h 2011-04-11 23:43:03 +02:00
Michael Natterer
3440f8c7e8 libgimpwidgets: no need any longer to set GtkDialog:has-separator to FALSE 2011-04-11 23:19:27 +02:00
Michael Natterer
c215677876 libgimpwidgets: turn GimpRuler into a no-window widget
and use an input-only window for events.
2011-04-10 02:00:40 +02:00
Mikael Magnusson
5cea6b067f Alias the icon for mouse controller to gimp-cursor for now 2011-04-06 23:49:34 +02:00
Mikael Magnusson
ac403ce11d Add a controller for binding mouse buttons 2011-04-06 23:35:14 +02:00
Mikael Magnusson
3eb096b239 Revert "libgimpwidgets: avoid using a function only available since GTK+ 2.22"
We depend on GTK+ 2.24 now.

This reverts commit 0e55c5e4d8.
2011-04-06 20:19:09 +02:00
Michael Natterer
24ee3370b8 Depend on GTK+ >= 2.24.3, cairo >= 1.20.1, gdk-pixbuf >= 2.22.1
and completely separate configure and sanity checks for gdk-pixbuf
from GTK+, because it's now distributed as a separate package. Remove
all sorts of conditional compiling based on GDK_CHECK_VERSION() and
CAIRO_VERSION.
2011-04-06 19:58:24 +02:00
Michael Natterer
384689b761 libgimpwidgets: add a private struct to GimpDialog and use it for help stuff
and remove all g_object_get/set_data() hacks.
2011-03-20 13:21:59 +01:00
Michael Natterer
c469dbb206 libgimpwidgets: turn GimpDialog's "parent" into a property
and remove the parent peoperty from GimpViewableDialog.
2011-03-20 12:44:03 +01:00
Michael Natterer
c6e35435ad libgimpwidgets: don't treat -1 as value of enum PangoAttrType 2011-03-17 15:28:41 +01:00
Michael Natterer
b725eaa682 libgimpwidgets: don't mix GimpWidgetHelpType and GtkWidgetHelpType
Because latest GCC warns about it.
2011-03-17 14:41:34 +01:00
Michael Natterer
fcfb7cf160 Use the new g_[s]list_free_full() instead of foreach() and free() 2011-03-07 17:11:28 +01:00
Michael Natterer
ca1cc32e52 libgimpwidgets: use GtkComboBoxText when building against GTK+ >= 2.24 2011-03-06 11:51:24 +01:00
Michael Natterer
5dcb50ed7d libgimpwidgets: add properties GimpEnumLabel:enum-type and :enum-value 2011-02-15 21:26:11 +01:00
Michael Natterer
31b4d3801e libgimpwidgets: add properties GimpColorButton:area-width and :area-height 2011-02-15 20:55:32 +01:00
Michael Natterer
e44d3b46ef libgimpwidgets: make GimpColorScale:channel a property 2011-02-15 18:52:00 +01:00
Michael Natterer
6c7e24c9b3 libgimpwidgets: don't draw a focus line to indicate "selected"
I have no idea what I was thinking when adding this.
2011-02-09 09:25:34 +01:00
Michael Natterer
4fd56d9640 libgimpwidgets: don't pass around uninitialized memory in GimpRuler 2011-02-06 11:20:07 +01:00
Martin Nordholts
0cbb8ac0bf libgimpwidgets: Update gimpwidgets.def 2011-01-26 06:33:10 +01:00
Martin Nordholts
835d92e4ad libgimpwidgets: Fix gtk-doc warning 2011-01-26 06:26:36 +01:00
Omari Stephens
5cae0bf65c Bug 630748 - display filters do not work
Create and use Cairo-compatible API for display filters. Also
includes logic changes to the display filters to deal with cairo's
ARGB32 pre-multiplied buffer format.
2011-01-25 20:24:42 +01:00
Omari Stephens
14276add92 Add missing parens around macro arguments 2011-01-24 22:15:06 +01:00
Michael Natterer
3ef31e4cc8 libgimpwidgets: use new GdkWindow API only when available 2011-01-23 00:30:58 +01:00
Michael Natterer
d155be622d libgimpwidgets: fix ruler motion event tracking on offscreen overlays
Add a list of "track widgets" to GimpRuler and connect to their
motion-notify-event. Correctly translate the motion event's x/y to the
ruler's coordinate system when updating the marker.
2011-01-20 20:26:35 +01:00
Michael Natterer
8d2d16ac25 libgimp*: implement GObject::constructed() instead of ::constructor() 2011-01-12 22:03:33 +01:00
Michael Natterer
413dc0331d libgimpwidgets: don't call gtk_dialog_set_has_separator()
It's deprecated in GTK+ 2.22. Instead use g_object_set() and add a
comment as reminder to remove that too later.
2011-01-08 21:58:21 +01:00
Michael Natterer
73b5e1d8a6 libgimpwidgets: remove commented-out code 2011-01-07 19:38:34 +01:00
Michael Natterer
60ebedb319 libgimpwidgets: no need to set a GtkRange's update-policy to CONTINUOUS
because it's the default.
2011-01-07 15:06:56 +01:00
Mikael Magnusson
0e55c5e4d8 libgimpwidgets: avoid using a function only available since GTK+ 2.22 2010-12-18 00:31:56 +01:00
Mikael Magnusson
780579554a libgimpwidgets: undef GDK_DISABLE_DEPRECATED in gimppixmap.c 2010-12-17 22:59:50 +01:00
Mikael Magnusson
2471f37660 libgimpwidgets: port the ruler from deprecated gdk to cairo
Backported from the gtk3-port branch.
2010-12-17 22:59:49 +01:00
Mikael Magnusson
644a272f19 libgimpwidgets: port gimppreviewarea from deprecated gdk to cairo
Backported from the gtk3-port branch.
2010-12-17 22:59:46 +01:00
Michael Natterer
4a4994f4db libgimpwidgets: bring back unit format strings in GimpSizeEntry
Use the user-provided format string as long-format and try to create a
short-format by replacing "%s" and "%p" by "%a" for the popup. Works
nicely for all cases I've seen so far.
2010-11-05 16:30:23 +01:00
Michael Natterer
73a6ddf7b5 libgimpwidgets: use the short and long format strings for the unit combo
where the short one gets used for the combo itself, and the long one
for the popup.
2010-11-05 16:28:54 +01:00