Commit graph

4126 commits

Author SHA1 Message Date
Michael Natterer dccb909009 app: make GimpTempBuf reference counted
and remove the "take_ownership" parameter from
gimp_temp_buf_create_buffer(), simply always ref the buf.
2012-05-02 17:51:00 +02:00
Michael Natterer d5d8e36d21 app: gimp_-namespace all GimpTempBuf functions 2012-05-02 17:51:00 +02:00
Michael Natterer 42a5f01be3 app: rename TempBuf to GimpTempBuf 2012-05-02 17:51:00 +02:00
Michael Natterer 7441a1f6f7 app: turn the TempBuf's "bytes" into "format" and port everything to it 2012-05-02 17:50:59 +02:00
Michael Natterer ff86f85744 app: remove x, y and color parameters from temp_buf_new()
Fix the places that passed the color by either temp_buf_data_clear()
or memset(), and assign x and y manually, they are going to vanish
completely soon.
2012-05-02 17:50:58 +02:00
Michael Natterer c14738806e app: use gimp_image_get_layer_format() instead of dealing with image_type 2012-05-02 17:50:57 +02:00
Michael Natterer aa8e580381 app: make color buttons generated for GEGL tools continuously update the caller 2012-05-02 17:50:49 +02:00
Michael Natterer 96dbfc54b4 app: fix/enable continuous color updates in GimpColorPanel 2012-05-02 17:50:49 +02:00
Michael Natterer f80b6a067a app: anal 2012-05-02 17:50:47 +02:00
Øyvind Kolås 8994acc6a8 app: handle negative fractions correctly in spinscale 2012-05-02 17:50:45 +02:00
Øyvind Kolås d7e9c6b7fe app: git_spin_scale invoke value_changed when setting gamma 2012-05-02 17:50:44 +02:00
Øyvind Kolås 5666697362 app: initialize gamma of spin scale to 1.0 2012-05-02 17:50:44 +02:00
Øyvind Kolås 7181402a62 app: clean up warning in spinscale 2012-05-02 17:50:44 +02:00
Øyvind Kolås b8e340b5bc app: update paramspec duplication with changes in gegl paramspecs 2012-05-02 17:50:44 +02:00
Øyvind Kolås 553b7c7c03 app: add configurable nonlinear mapping (gamma) to spinscale widget
The default value is 1.0 which is linear and the old behavior, values above
1.0 gives finer control in the lower portions of the range, the lower half of
the widget behaves like before doing small relative adjustments.
2012-05-02 17:50:44 +02:00
Øyvind Kolås 1cee8d79bf app: respect GEGLs ui-range hints for properties 2012-05-02 17:50:44 +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 28913496bb app: use a GimpSpinScale instead of a scale entry in the prop_table 2012-05-02 17:50:43 +02:00
Michael Natterer 867da8f293 app: add gimp_context_get_foreground,background_pixel()
which takes a Babl format to convert from/to.
Include <gegl.h> in a million places.
2012-05-02 17:50:41 +02:00
Michael Natterer 36e982e2ed app: port gimp_image_pick_color() to return a Babl format
instead of a GimpImageType.
2012-05-02 17:50:39 +02:00
Michael Natterer 8d5471502e app: move GimpHistogram from base/ to core/ 2012-05-02 17:46:13 +02:00
Michael Natterer 5a7b7d9a4b app: add gimp_gegl_buffer_get_tile_manager()
and ust it in some get_memsize() functions instead of having a
FIXME. So many files changed because they need to inlcude <gegl.h>
now.
2012-05-02 17:46:07 +02:00
Michael Natterer 765c2cfea2 app: replace GimpDraable's type by a Babl format
and change gimp_drawable_new() and all gimp_layer_new() variants to
take formats instead of types.
2012-05-02 17:46:06 +02:00
Michael Natterer 3ec245a991 app: add opacity and paint_mode to gimp_edit_fill[_full]()
and use it instead of bucket-fill in the non-seed-fill case.
2012-05-02 17:46:01 +02:00
Michael Natterer ffeb3515db app: add gimp_edit_fill_full() which takes color and pattern
and use it for dropping colors and patterns on the display
and on the layers dialog, instead of using the overkill
gimp_drawable_bucket_fill_full().
2012-05-02 17:46:01 +02:00
Michael Natterer fbf11ba84f app: don't call gimp_layer_get_edit_mask() when the layer has no mask 2012-05-02 17:45:57 +02:00
Michael Natterer 69b2aa880f app: add gimp_pattern_create_buffer() and use it in gimp_edit_fill_internal() 2012-05-02 17:45:56 +02:00
Michael Natterer 88388467cc app: move the layer mask show, edit, apply API from GimpLayerMask to GimpLayer
because it would require really evil hacks to honor these properties
in the gegl projection if they were on the mask, and because they
actually belong to the layer.
2012-05-02 17:45:56 +02:00
Michael Natterer 169221bc51 app: replace some color_region() and pattern_region() by GEGL code 2012-05-02 17:45:52 +02:00
Michael Natterer d771249466 app: completely port GimpBuffer to using GeglBuffer not TileManager 2012-05-02 17:45:47 +02:00
Michael Natterer 90706f8427 app: make sure explicitly saved color tool settings don't end up in "recent"
reset the "time" property after applying the stored setting, otherwise
explicitly storing the config as setting will also copy the time, and
the stored object will be considered to be among the automatically
stored recently used settings
2012-04-02 11:50:47 +02:00
Michael Natterer 7cbd1c5739 app: don't dereference a NULL session_info->p->factory_entry 2012-03-30 09:55:45 +02:00
Massimo Valentini a29c096614 app: initialize also GimpRGB's alpha component
Conditional jump or move depends on uninitialised value(s)
==29000==    at 0x4C33CBC: gimp_color_area_set_color (gimp/libgimpwidgets/gimpcolorarea.c:425)
==29000==    by 0x4C3505B: gimp_color_button_set_color (gimp/libgimpwidgets/gimpcolorbutton.c:642)
==29000==    by 0x5DA5BE: gimp_text_style_editor_set_color (gimp/app/widgets/gimptextstyleeditor.c:700)
==29000==    by 0x5DB0D4: gimp_text_style_editor_update_idle (gimp/app/widgets/gimptextstyleeditor.c:1090)
==29000==    by 0x57E9E95: gdk_threads_dispatch (gtk-2-24/gdk/gdk.c:512)

Steps to reproduce:

<Ctrl>N <Enter> T
click on canvas
type something

select the text entered and change its color using
the color button from the text style editor
2012-03-13 20:44:47 +01:00
Massimo Valentini a80a63443d app: initialize a GtkTreeIter
Conditional jump or move depends on uninitialised value(s)
==28871==    at 0x4A09863: bcmp (/builddir/build/BUILD/valgrind-3.6.1/memcheck/mc_replace_strmem.c:692)
==28871==    by 0x4C487C7: gimp_int_store_row_inserted (gimp/libgimpwidgets/gimpintstore.c:220)
==28871==    by 0x8342B03: g_closure_invoke (glib/gobject/gclosure.c:774)
==28871==    by 0x8353129: signal_emit_unlocked_R (glib/gobject/gsignal.c:3232)
==28871==    by 0x835A72A: g_signal_emit_valist (glib/gobject/gsignal.c:3033)
==28871==    by 0x835A8F1: g_signal_emit (glib/gobject/gsignal.c:3090)
==28871==    by 0x529EF63: gtk_list_store_insert (gtk-2-24/gtk/gtkliststore.c:1039)
==28871==    by 0x5CEB6B: gimp_stroke_editor_constructed (gimp/app/widgets/gimpstrokeeditor.c:229)
==28871==    by 0x8348222: g_object_newv (glib/gobject/gobject.c:1731)
==28871==    by 0x8348565: g_object_new_valist (glib/gobject/gobject.c:1820)
==28871==    by 0x8348873: g_object_new (glib/gobject/gobject.c:1535)
==28871==    by 0x5CEE74: gimp_stroke_editor_new (gimp/app/widgets/gimpstrokeeditor.c:320)
==28871==    by 0x4C3842: stroke_dialog_new (gimp/app/dialogs/stroke-dialog.c:176)
==28871==    by 0x4A3B5C: select_stroke_cmd_callback (gimp/app/actions/select-commands.c:349)

Steps to reproduce:

On a 64 bits machine run gimp-2.7

<Ctrl>N <Enter> <Ctrl>A
and activate <Edit>/Stroke Selection... (<Alt>E S)
2012-03-13 20:44:47 +01:00
Michael Natterer b1483144cf app: remove unused variable in GimpSpinScale 2012-02-22 23:38:35 +01:00
Michael Natterer aadfc82f11 app: various GimpSpinScale fixes
- make it respect RTL mode better, something is still weird though
- don't fiddle with the entry's inner_border
- place label and number on the same line
- adjust size_request to respect the label's requisition
- set the label to ellipsize
2012-02-22 22:48:42 +01:00
Michael Natterer fbd746f95a app: don't rely on gtk_container_remove() to always destroy the child
Instead, either destroy the child instead of removing it, or remove
*and* destroy it in cases where the remove() api on the "parent"
doesn't match GTK+'s parent/child relation (like with all our dock
widgets). We can't rely on remove() to implicitly detstroy, because
there might be arbitrary other code holding references, such as
accessibility modules and whatnot. Most likely fixes unclear crashes
in accessibility code and other crashes we blamed GTK+ for.
2012-02-21 00:36:18 +01:00
Christian Krippendorf 43b6d6922c Bug 615227 - Undo while scaling layer freezes GIMP
Don't run into an infinite loop when the undo editor is used
while we're in the middle of an undo group.
2012-02-13 08:17:47 +01:00
Michael Natterer 90065a517e app: try harder to show filename and file size in Image -> Properties
by using gimp_image_get_any_uri() instead of get_filename() or get_uri().
2012-02-11 22:54:06 +01:00
Michael Natterer af6b840aaf Bug 666561 - Clicking on the expand icon next to a group expands the wrong group
gimp_item_tree_view_row_expanded(): only select the active item if its
immediate parent was expanded, not if *any* group was expanded.
2012-02-09 20:38:46 +01:00
Massimo Valentini b994280473 Bug 668814: Cannot move cursor right in on canvas editor
One possible way to decrease the incompatibilities
between letter spacing in a tagged gtk_text_buffer
and in an equivalent pango_layout

Remove also a valgrind reported invalid write in
gimptextbuffer.c
2012-02-09 12:36:43 +01: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 79d997457b app: set GimpToolPresetEditor insensitive for non-editable presets 2012-02-06 22:03:30 +01:00
Michael Natterer f72806bbcd app: fix GimpContainerTreeView name editing so it always works the same
no matter how editing was started (double click, keyboard activate, F2).

Connect to "editing-started" of the name cell and set the object's
real name directly on the GtkCellEditable, instead of trying to hack
around in the tree store before the actual editing starts.
2012-02-06 19:28:37 +01:00
Michael Natterer 947ea55a07 app: chain up last in gimp_container_tree_view_set_context()
so all the view renderers already have the right context when the
parent interface code selects the right item, which in turn requires
the context to be already set on the renderers. Fixes warnings when
dragging dockables around.
2012-02-06 01:33:01 +01:00
Alexia Death c585737f3a app: Add import type as third preference on Export 2012-02-02 21:17:35 +02:00
Michael Natterer 17f1f2a2fa app: use G_N_ELEMENTS() and remove GIMP_N_TAB_STYLE_CANDIDATES define 2012-02-01 20:38:10 +01:00
Michael Natterer d11f9d7dbf Bug 664885 - Open 'Document History' --> always a additional history tab appears
Really find a *widget* in gimp_dialog_factory_find_widget(), don't
just return the first found session info's widget. It's perfectly fine
for a session info to have a NULL widget, if that dialog is not
currently open.
2012-01-31 22:00:17 +01:00
Michael Natterer cac442c2df app: port dockable showing in widgets/ to GimpWindowStrategy 2012-01-30 23:52:59 +01:00