Commit Graph

14510 Commits

Author SHA1 Message Date
Michael Muré 2aeac1cf4e Merge branch 'soc-2010-cage-2' 2011-03-23 20:07:17 +01:00
Michael Natterer 91195e8593 app: remove the old tool presets system
Instead, keep around a GimpFilteredContainer in GimpToolInfo that
maintains a per-tool list of presets from the global preset factory.
Turn the tool options dialog's preset Save/Restore/Edit/Delete menus
and buttons into shortcuts for managing the active tool's presets.
2011-03-23 09:27:29 +01:00
Michael Natterer f3a99ed8f7 app: turn GimpFilteredContainer into a general purpose filter 2011-03-22 23:41:42 +01:00
Michael Natterer 051ef0ebcb app: add GimpTaggedContainer
which is a copy of GimpFilteredContainer with s/Filtered/Tagged/ and
no other change. #if 0 GimpFilteredContainer for now and use
GimpTaggedContainer instead all over the place.
2011-03-22 23:11:46 +01:00
Michael Natterer 49710c1cd4 app: cosmetic cleanups in GimpFilteredContainer 2011-03-22 22:26:30 +01:00
Michael Natterer 7cf14bd390 app: allow to change GimpToolPreset's icon
Also add an image and label that show what tool the preset is for.
This clearly needs more work...
2011-03-22 22:09:03 +01:00
Michael Natterer fa9453eea1 app: add gimp_prop_icon_picker_new()
and use it in GimpTemplateEditor instead of handling the icon picker
manually.
2011-03-22 15:20:03 +01:00
Michael Natterer ab9cb53be8 app: gimp_tool_preset_new(): ignore the passed name
and use GimpToolInfo's blurb, so new presets are by default called
"Blend", "Paintbrush" etc. and not simply "Untitled".
2011-03-22 15:08:11 +01:00
Michael Natterer 33dd20750f Bug 645456 - Inconsistent window (role) naming scheme
"preferences" -> "gimp-preferences"
2011-03-21 21:49:08 +01:00
Omari Stephens cc04620b96 Adjust Bug 559716 bugfix to not test exact double equality 2011-03-21 16:53:35 +01:00
Michael Natterer ec1108d62a Bug 559716 - Changing crop size in Crop Tool Options can make UI unresponsive
In gimp_rectangle_tool_update_options(), freeze()/thaw() notifications
around setting setting x, y, width, height, so all values are
up-to-date when "notify" is emitted. Also, only set the values that
have actually changed so we don't process notifications when no change
was done.
2011-03-21 14:38:26 +01:00
Michael Natterer a90961ef4a app: make GimpTextStyleEditor look a bit nicer
Add some spacing and move the color button to the bottom.
2011-03-21 01:00:37 +01:00
Michael Natterer 38287ba9f4 app: GimpTextTool: use the highlight color for the selected text 2011-03-20 23:59:19 +01:00
Michael Natterer 6378e9fc4d app: rename member GimpImageMapTool->shell to ->dialog
"shell" has confused me once too often today...
2011-03-20 18:27:11 +01:00
Michael Natterer 4149452279 Bug 643155 - Tool dialogs don't stay on top of the image window
Change the "GtkWidget *parent" parameter of GimpToolDialog to
"GimpDisplayShell". Also add API gimp_tool_dialog_set_shell() so an
existing dialog can be used on different images. Make sure the dialog
closes when the shell is unmapped (like when switching tabs in SWM),
and make the dialog transient for the toplevel GimpImageWindow.

Change all tool dialog users accordingly.
2011-03-20 18:15:42 +01:00
Michael Natterer 13bedf69e2 app: minor cleanups in GimpColorPickerTool 2011-03-20 16:57:23 +01:00
Michael Natterer 1f5e180334 app: move GimpToolDialog from app/widgets/ to app/display/
Zero logic changes yet, just a rename.
2011-03-20 13:34:03 +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 6d97fd3887 app: use a size entry instead of a spinbutton in GimpTextStyleEditor
so it's finally clear what unit the text size has.
2011-03-20 12:37:01 +01:00
Alexia Death 5f546938b6 app: Fix whitespace in last commit 2011-03-19 23:27:08 +02:00
Alexia Death 6d6ab78d2a app: Fix stroking brush size to brush default 2011-03-19 23:26:34 +02:00
Alexia Death ce606d9561 app: Fix a dynamics leak from new pdb fix 2011-03-19 22:48:17 +02:00
Alexia Death 5d5430e110 app: Fix pdb size and dynamics brush stuff
[ Mikael: deduplicated brush size setting and fixed some whitespace ]
2011-03-19 18:39:02 +01:00
Michael Natterer b3a597c7de Revert "app: Fix pdb size and dynamics issues"
This reverts commit 9bae2a15cb.
2011-03-19 16:43:09 +01:00
Michael Natterer bb80dfdc8e Revert "app: Fix pdb properly this time"
This reverts commit 1a8edd7d1d.
2011-03-19 16:42:53 +01:00
Alexia Death 1a8edd7d1d app: Fix pdb properly this time 2011-03-19 17:12:14 +02:00
Alexia Death 9bae2a15cb app: Fix pdb size and dynamics issues 2011-03-19 15:14:23 +02:00
Michael Natterer 4f62bdf436 app: paint the text cursor in the highlight color
so it can be distinguished from the text box rectangle more easily.
2011-03-19 10:11:47 +01:00
Michael Natterer 0789ee2669 app: add a 1px FG border around overlay frames
so they work on any background. Also remove disabled bling code.
2011-03-18 22:57:13 +01:00
Michael Natterer 140c9aae91 Bug 625273 - Insert Font and font-size into the Texteditor's Menubar
If the cursor position (or the current selection), doesn't contain any
font, font-size or color tags, display the default values from the
GimpText object instead of "nothing". Still display nothing if the
selection contains different fonts, sizes or colors.
2011-03-18 22:13:34 +01:00
Michael Natterer f09360ba80 app: GimpTextLayout: use the unit conversion functions from gimpunit.[ch]
instead of duplicating them. Multiply by PANGO_SCALE in the callers
and ceil() fixed text box pixel extents so we don't cut off stuff by
fractions of a pixel.
2011-03-18 21:39:28 +01:00
Michael Natterer ecbfb4a9e8 app: add a GimpText property and construct param to GimpTextStyleEditor
which will be used to get default values from.
2011-03-18 21:16:53 +01:00
Michael Natterer 61aa1854fd app: make GimpSpinScale's slow part change the value 10x slower than the fast part 2011-03-18 15:42:50 +01:00
Michael Natterer f1d1bb610d app: experimentally add fine-tuning to GimpSpinScale
by making the lower part change things in small steps.
2011-03-18 15:07:44 +01:00
Michael Natterer df731912a5 app: add a GimpTextStyleEditor to the text tool's editor dialog
so it's an alternative to on-screen editing for esoteric use cases
that can do everything on-screen editing is capable of.
2011-03-18 12:58:32 +01:00
Michael Natterer f13abfa3f0 app: change image parameter in gimp_text_layout_new() to xres,yres
Because GimpTextLayout doesn't depend on any image, it only needs a
resolution.
2011-03-18 02:31:20 +01:00
Michael Natterer 1c8149a553 Bug 632568 - 'gimp-drawable-transform-rotate-simple' makes GIMP crash in some cases
Applied modified patch from Massimo that makes sure we don't use
negative width/height if source and dest regions don't overlap.
2011-03-18 00:53:21 +01:00
Michael Natterer e24795f167 Bug 600554 - Implement layer group transforms
Same fix for the PDB: if the item to transform is a group layer, call
gimp_item_transform()/rotate()/... directly instead of going through
the wrong cut/transform/paste code path.
2011-03-17 22:00:38 +01:00
Michael Natterer 503acbae54 Bug 600554 - Implement layer group transforms
When transforming layer groups, don't cut out a buffer to transform.
Instead, simply call GimpTransformTool::transform() with
tr_tool->original being NULL, just as when we are transforming a
path. In the transform() implementations, simplify the code to not
look at the type of item to be transformed; instead, simply look at
tr_tool->original and transform it if it exists, otherwise call
gimp_item_transform() which does the right thing for all sorts of
items automatically.
2011-03-17 21:52:43 +01:00
Michael Natterer d3153960df app: rename gimp_transform_tool_doit() to gimp_transform_tool_transform() 2011-03-17 21:39:11 +01:00
Michael Natterer d7c66c66d0 Bug 142697 - Dock separators move between sessions
Removing my old and evil "fix" for the issue from 2004-06-01 seems
to make things work as they should.
2011-03-17 21:03:20 +01:00
Martin Nordholts 0d0ffd1265 Bug 644891 - Ctrl+e crashes gimp
Don't freak out if setting an URI on GimpImage that was getted with
the corresponding getter. Fix by Massimo.
2011-03-17 20:25:43 +01:00
Mukund Sivaraman 56d8850d38 Use a proper int to pointer cast 2011-03-18 00:06:14 +05:30
Michael Natterer 075c7d4a4d app: avoid the deprecated gdk_drawable_get_size() on GTK+ >= 2.24
Use gdk_window_get_width/height() instead.
2011-03-17 15:10:17 +01:00
Michael Natterer fdde231869 app: use gtk_widget_get_allocation() instead of gdk_drawable_get_size() 2011-03-17 15:09:19 +01:00
Michael Natterer 42b2498a06 app: add a cast when comparing GdkCursorType with GimpCursorType 2011-03-17 14:42:44 +01:00
Alexia Death 41b1bd36da app: Fix smooth intreaction with airbrush 2011-03-16 22:08:19 +02:00
Michael Natterer c07811f0a3 app: remove unused variables in gimp_drawable_duplicate() 2011-03-16 02:06:21 +01:00
Michael Natterer 9f30550f9a app: move drawable->type to private 2011-03-16 02:02:47 +01:00
Michael Natterer a62071e9eb app: remove mamber GimpDrawable::bytes
because it's always the same as GIMP_IMAGE_TYPE_BYTES(drawable->type)
2011-03-16 00:16:31 +01:00
Michael Natterer 54c7725417 app: GimpTextTool: remove disabled testing code 2011-03-14 14:28:08 +01:00
Michael Natterer 22808b996f app: GimpTextOptions: implement GimpToolOptions::reset()
and avoid resetting the rectangle options, so the text box keeps its
position.
2011-03-14 14:12:43 +01:00
Michael Natterer 90058cded7 app: add missing tooltips in the text style overlay widget 2011-03-14 13:05:30 +01:00
Michael Natterer 75548264d0 app: set the text option's unit menu to "plural"
It gets changed to "abbreviation" for the permanently displayed
string automatically.
2011-03-14 12:58:34 +01:00
Michael Natterer 8184296b3c app: add gimp_container_get_neighbor_of() to GimpContainer
instead of gimp_container_get_neighbor_of_active() in gimp-utils.c.
Move the additional GimpContext logic of the old function into the
callers, but use the new function in more places.
2011-03-13 02:14:44 +01:00
Mikael Magnusson b81276ca83 app: fix goption warning
Using G_OPTION_FLAG_NO_ARG with G_OPTION_ARG_NONE is not a valid combination,
glib 2.28.2 warns about it.

(gimp:20379): GLib-WARNING **: goption.c:2132: ignoring no-arg, optional-arg or filename flags (8) on option "debug-handlers" of type 0
2011-03-09 15:37:18 +01:00
Massimo Valentini 166c76b62d Bug 630069 - In single-window mode, canvas badly positioned in all successive tabs
The problem is that gimp_image_window_keep_canvas_pos() connects a
signal handler too early, with data not yet valid, the handler is
executed after the canvas position is computed correctly and so
invalid data overrides the valid.

Checks the return value of gtk_widget_translate_coordinates() to avoid
connecting handlers when their execution is considered harmful.
2011-03-09 07:34:27 +01:00
Michael Natterer 62f2ae80c8 app: move GimpItem's width and height members to private 2011-03-08 18:10:59 +01:00
Michael Natterer f7ce31d62f app: fake the size of a gruop layer by overriding GimpViewable::get_size()
instead of messing with GimpItem's width and height members.
2011-03-08 18:04:23 +01:00
Michael Natterer 5bd1b318af app: cosmetic cleanup 2011-03-08 17:15:47 +01:00
Michael Natterer b1d6f1b0fd app: lose "default" from protected GimpViewRenderer rendering API
and rename render_surface() to render_temp_buf().
2011-03-08 17:12:39 +01:00
Michael Natterer a2d27983d6 app: remove widget parameter from gimp_view_renderer_default_render_surface() 2011-03-08 17:03:30 +01:00
Michael Natterer 2281645f5b app: remove unused function temp_buf_new_check() 2011-03-08 16:50:58 +01:00
Michael Natterer 3e93f45703 app: keep the preview TempBuf and GdkPixbuf in GimpViewablePrivate
instead of attaching them as object data.
2011-03-08 16:38:25 +01:00
Michael Natterer 383cc27f30 app: move all GimpViewable members to private 2011-03-08 16:23:53 +01:00
Michael Natterer bb6436cb44 libgimp: deprecate and rename the global pararasite functions
just as it was done for items and images. Remove the "parasite" PDB
group completely.
2011-03-08 14:31:04 +01:00
Michael Natterer 7fae2b2d40 libgimp: rename the "misc" pdb group to "gimp"
So we finally have a proper place for PDB procedures that don't act on
an object like image, item, ...
2011-03-08 13:58:56 +01:00
Michael Natterer 87646e9ace libgimp: deprecate and rename the image parasite functions
in exactly the way the drawable functios were turned into item ones.
2011-03-08 13:19:21 +01:00
Michael Natterer e69ecba237 app: move all GimpSettingsBox members to private 2011-03-08 11:32:49 +01:00
Michael Natterer b8d148283b app: move all GimpSettingsEditor members to private 2011-03-08 02:32:14 +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 514a5548cd configure: require GLib >= 2.28.1 2011-03-07 17:11:28 +01:00
Michael Natterer fc7bd98d92 app: move all GimpStrokeOptions members to private 2011-03-05 21:00:28 +01:00
Michael Natterer 5ad45dae03 app: move all GimpFillOptions members to private 2011-03-05 20:26:41 +01:00
Michael Natterer 616285fa7d app: fix possible warning when removing layers, channels or vectors
Don't call gimp_viewable_is_ancestor() on a NULL ancestor.
2011-03-04 01:49:32 +01:00
Michael Natterer 7a47e36c63 app: fix "grabbing" of extended devices
If grabbing fails with GDK_GRAB_ALREADY_GRABBED (which it always
does), simply silently ignore that and assume the grab succeesed
anyway (puke).
2011-03-03 22:38:50 +01:00
Michael Natterer e3c0a4e549 app: move all GimpDynamics members to private 2011-03-03 18:43:56 +01:00
Michael Natterer c31d675ac1 app: move all GimpDynamicsOutput members to private 2011-03-03 11:48:35 +01:00
Michael Natterer 672286515c app: remove gimp_data_name_compare() prototype, the function doesn't exist 2011-03-03 11:32:45 +01:00
Michael Natterer 21ad9d33b7 app: don't ref the layer mask twice when keeping it around while loading
Don't g_object_ref() *and* g_object_ref_sink() it when temporatily
attaching it as object data to its layer.
2011-03-03 10:57:38 +01:00
Michael Muré fe7aa4e113 Merge branch 'master' into soc-2010-cage-2 2011-03-02 15:08:11 +01:00
Michael Natterer c550eae5e1 app: move all GimpImagefile members to private 2011-03-02 12:26:04 +01:00
Michael Natterer 5b09e61c46 app: move all GimpTemplate members to private 2011-03-02 10:16:43 +01:00
Kevin Cozens 8438bc5bb7 Commiting auto-generated files with recently corrected PDB help text. 2011-03-01 17:06:59 -05:00
Michael Natterer 7faaf4df41 libgimp: rename the newly added item parasite functions
gimp-item-find-parasite -> gimp-item-get-parasite
gimp-item-list-parasites -> gimp-item-get-parasite-list

Also changed the signature of gimp-item-get-parasite-list's C wrapper
in libgimp to be sane.
2011-03-01 22:19:48 +01:00
Michael Natterer 0bb5a76405 app: fix wilber dawing offset on widgets that don't have a window 2011-03-01 17:11:22 +01:00
Michael Natterer ebe4b4102f Bug 643587 - Opening two xcf with vectors crashes gimp
Fix the crash and the warning pointed out in the bug.
2011-03-01 17:05:58 +01:00
Michael Natterer 30e847c921 app: forgot to implement dragging from GimpContainerIconView 2011-03-01 15:32:08 +01:00
Michael Natterer f45e171f09 app: place the gimpview-popup at the button event's root coordinates
instead of fiddling with the widget's and its window's positions.
2011-03-01 14:53:54 +01:00
Michael Natterer f82daa557a app: pack stuff in boxes instead of tables in GimpDeviceStatus
Makes the widget work correctly in all allocation situations.
2011-03-01 13:28:58 +01:00
Michael Natterer 30100cf613 app: add new widget GimpIconPicker, ripped out of GimpTemplateEditor 2011-03-01 12:31:17 +01:00
Michael Natterer f0f94ba6a1 app: move all GimpTemplateEditor members to private 2011-03-01 11:50:16 +01:00
Michael Natterer d3a83c9940 app: fix export and delete sensitivity in GimpSettingsEditor
and make sure "select-item" is emitted also when NULL is selected,
so the sensitivity is set correctly.
2011-03-01 01:29:35 +01:00
Michael Natterer 145db8d57c Bug 639305 - Image tabs pushes toolbox to left
Set the notebook to scrollable. Not a final fix, but enough to fix the
immediate problem.
2011-03-01 00:56:23 +01:00
Michael Natterer 9b5dc7559a app: set GimpFreeSelectTool active only while mouse-1 is down
First step towards tightening the tool state machine...
2011-02-28 21:04:42 +01:00
Michael Natterer 9cac8e7b42 app: GimpDeviceStatus: don't call gdk_display_get_name() on a NULL display 2011-02-28 17:36:53 +01:00
Michael Natterer 3a767c0c15 app: get rid of the arrow in GimpDeviceStatus
Instead, use an event box and set its state to SELECTED when the
device is active. Also cleaned up spacings and general appearance a
bit. Still a mess.
2011-02-28 16:43:21 +01:00
Michael Natterer a1712a0ec7 app: emit "changed" when GimpDeviceInfo's device gets (un)set 2011-02-28 16:08:12 +01:00
Michael Natterer b21f5be73f app: use GimpDeviceInfo's accessors 2011-02-28 15:55:02 +01:00
Michael Natterer c49a7113e5 app: set the device manager's sort_func via g_object_new()
Setting it in init() had it overwritten by NULL because it's a
construct property.
2011-02-28 15:48:13 +01:00
Michael Natterer ee844c6395 app: GimpDeviceManager refactoring part two
- change gimp_devices_get_list() to gimp_devices_get_manager()
- remove gimp_devices_get_current()
- let GimpDeviceStatus connect to the manager's "notify::current-device"
  directly and remove device status updating code from gui.c
- cleanup in gimpdevices.c
2011-02-28 14:37:00 +01:00
Michael Natterer 21a0e55005 app: device manager refactoring part one
Add a GimpDeviceManager object and take over most code from
gimpdevices.c, but leave all functions in gimpdevices.c there as
wrappers in order to make rebasing in gtk3-port simpler.
2011-02-28 12:57:15 +01:00
Michael Natterer 4f59bb3431 Bug 581338 - Layer size does not change using the pdb 'gimp-text-layer-resize'
Fix the fix: use box-unit, not unit, for the box extents.
2011-02-28 00:41:48 +01:00
Michael Natterer d136b9f7d2 app: redo the last commit and call proximity_in() at all logical places
Keep the comment at the place where calling it isn't immediately
obvious, and add checks to proximity_in() and out() so they bail out
when the proximity state is already set correctly.
2011-02-27 12:16:51 +01:00
Michael Natterer 75add92218 app: add utility functions proximity_in() and proximity_out()
and use them instead of manually setting proximity. Also add comments
about why we call the proximity functions where we call them (instead
of calling them where it seems more logical).
2011-02-27 12:08:09 +01:00
Michael Natterer ca618093cf app: don't show the line to the next free select point when not in proximity
like when leaving the canvas or crossing a window above (tools receive
one oper_update() with proximity = FALSE to indicate the pointer
leaving the canvas).
2011-02-27 11:49:54 +01:00
Michael Natterer 955fecc3cd app: replace a wrong G_LIKELY() by G_UNLIKELY() in tool_events() 2011-02-27 11:08:36 +01:00
Michael Natterer 85af450b3c app: forgot to #include "widgets/gimpwidgets-utils.h" 2011-02-24 16:54:39 +01:00
Michael Natterer c11b0d2a79 app: move tool event debug output to a utility function
to reduce clutter in gimp_display_shell_canvas_tool_events().
2011-02-24 12:34:57 +01:00
Michael Natterer ef905d4b9e app: pick another GDK_KEY_foo key name commit from gtk3-port 2011-02-24 03:29:12 +01:00
Michael Natterer de8a07703a app: name display scrollbar callbacks like the signal they are handling
instead of calling them all foo_update() which means absolutely nothing.
Also rename nav_button_press() to navigation_button_press().
2011-02-24 02:15:53 +01:00
Michael Natterer 3c0453b3c0 app: clean up static functions in the new tool-events.c file 2011-02-24 02:15:53 +01:00
Michael Natterer c09ad998a4 app: split tool event handling out into an own file
it was simply getting too hairy in the callbacks.c file.
2011-02-24 02:15:53 +01:00
Michael Natterer 09947733d6 app: use some of the new GDK_KEY_foo #defines from GTK+ 2.22
and use them in gimpdisplayshell-callbacks.c so I can do some
refactoring there without making rebasing the gtk3-port branch almost
impossible.
2011-02-24 02:15:53 +01:00
Michael Natterer 8f294661b2 app: don't #include "core/gimpprogress.h" when not needed 2011-02-22 17:32:33 +01:00
Michael Natterer ac9ffde880 app: formatting and other minor cleanups 2011-02-22 16:27:18 +01:00
Michael Natterer 7a8600e6bd app: use gdk_flush() in gimp_widget_flush_expose()
instead of a completely bogus event processing loop which had no
effect but flushing the event queue implicitly.
2011-02-22 15:07:17 +01:00
Michael Natterer ca2fde3950 app: move default icon assignment a few lines up 2011-02-22 01:57:52 +01:00
Alexia Death 56dd924b9c app: add default dynamics icon 2011-02-20 18:47:40 +02:00
Michael Natterer 4030e3f446 app: make gimp_display_shell_flush_event_queue() private 2011-02-20 16:58:37 +01:00
Michael Natterer 9151899aab app: move variable to local scope in gimp_display_shell_canvas_tool_events() 2011-02-20 16:33:46 +01:00
Michael Natterer 36cc10c4dc app: rename gimp_display_shell_[un]transform_coordiante() to _coords() 2011-02-20 16:29:20 +01:00
Michael Natterer 4bf3a136e0 app: factor out GimpDisplayShell tool event retrieval and untransforming 2011-02-20 16:23:17 +01:00
Michael Natterer 7bb58aedf9 app: make input GimpCoords const in gimpdisplayshell-transform.[ch] 2011-02-20 16:11:20 +01:00
Michael Natterer d300882401 app: factor out GimpDisplayShell cursor updating to a utility function 2011-02-20 15:38:58 +01:00
Michael Natterer f7bb5f460c app: rename the functions dealing with GimpDisplayShell's software cursor
to gimp_display_shell_foo_software_cursor() in order to remove
confusion with the functions that deal with the windowing system's
cursor.
2011-02-20 14:46:52 +01:00
Michael Natterer b338aa0e71 app: forgot precondition checks in gimpdisplayshell-grab.c 2011-02-20 13:16:46 +01:00
Michael Natterer d504eeb048 app: move GimpDisplayShell pointer/keyboard grabbing to utility functions
Spit warnings in the functions if grabbing fails and return a boolean
success value. Bail out in the callers upon grab failure instead of
assuming that grabbing always succeeds and running into an
inconsistent state that can cause all sorts of problems.
2011-02-20 12:12:48 +01:00
Michael Natterer 8333dfde7b Add some #if GTK_CHECK_VERSION (2, 24, 0) for creating foreign window
so we don't use deprecated API and make the gtk3 port simpler.
2011-02-16 22:51:02 +01:00
Michael Natterer 31b4d3801e libgimpwidgets: add properties GimpColorButton:area-width and :area-height 2011-02-15 20:55:32 +01:00
Michael Natterer c3ff71df8b app: connect the blob editor's and the ink option's properties explicitly
instead of using gimp_config_connect(model,view,NULL) because that
also connected the model's name to the view's *widget* name, which is
a really bad idea.
2011-02-15 18:48:38 +01:00
Alexia Death 8136bdb914 app: fix an error in aspect ratio dynamics 2011-02-14 21:17:54 +02:00
Michael Natterer 95f14f5de8 app: add an "edit-name" binding signal and default to F2 2011-02-14 20:01:08 +01:00
Michael Natterer 543b97bfb3 Bug 641761 - "Smooth Stroke" option in Blend tool
Show the smooth stroke options only for paint tools.
2011-02-14 10:38:32 +01:00
Michael Natterer 02477f5563 Bug 625167 - Problem exporting floating selections from within layer groups
Add "gboolean merge_active_group" to gimp_image_merge_visible_layers()
and pass FALSE from the PDB wrapper so plug-in invoked layer merging
always acts on the toplevel container as it did in 2.6. Do the same
when opening an image as layer.

Also, added a "Merge within active group only" toggle to the merge
layers dialog and pass it down to the core, but default to TRUE here
so.
2011-02-14 09:45:59 +01:00
Michael Natterer 4807a1848a app: don't make flatten and merge insensitive if there is a floating selection 2011-02-14 01:45:16 +01:00
Michael Natterer d9dd65529f app: include floating selection removal in the layer merge undo group
and pull undo group starting/ending out of the
gimp_image_merge_layers() utility function.
2011-02-14 01:43:55 +01:00
Michael Natterer 9f89bda3b1 app: when removing groups, check if the active item was in the group
and set a new active item.
2011-02-14 01:25:45 +01:00
Michael Natterer 1453632678 app: add GimpTileBackendTileManager which does nothing so far
but will help GEGL migration a lot.
2011-02-13 22:48:00 +01:00
Michael Natterer 063e9e54ee Require GEGL 0.1.6 2011-02-13 21:59:27 +01:00
Michael Natterer cb615737d3 app: save-before-committing! 2011-02-13 21:33:26 +01:00
Michael Natterer 40be8ad089 Bug 581338 - Layer size does not change using the pdb 'gimp-text-layer-resize'
Set the text box mode to "fixed", and convert the passed in pixels to
the text layer's unit when setting the text box' width and height.
Spotted by Massimo.
2011-02-13 21:27:34 +01:00
Michael Natterer a604a12eb5 libgimp: fix the docs of gimp_vectors_to_selection() 2011-02-13 18:31:14 +01:00
Michael Natterer 92b6d70448 libgimp: remove the layer/channel/vectors raise/lower/position procedures
and add them to the list of compat_procs instead.
2011-02-13 18:29:08 +01:00
Michael Natterer 6818dae23e libgimp: remove the drawable and vectors parasite PDB functions completely
and simply add them to the list of "compat_procs" which have a
replacement with identical signature. Move the libgimp C functions to
non-generated files.
2011-02-13 17:48:39 +01:00
Michael Natterer b4c9987de6 libgimp: move the item parasite functions to the parasites files
and rename them yet again to be gimp_item_foo_parasite() instead of
gimp_item_parasite_foo() because the latter is just a misnaming (they
are not GimpItemParasites, they are GimpParasites attached to
GimpItems, just as layers are attached to images).
2011-02-13 17:28:30 +01:00
Michael Natterer aa667f790e app: rename gimp_image_select_fuzzy() to gimp_image_select_contiguous_color()
and update all documentation accordingly. Also reorder the
gimp_image_select procedures.
2011-02-13 17:13:28 +01:00
Eric Grivel 20279459dd Bug 634183 - GIMP crashes when editing very high images
Implemented a fix for the ink blob overflow problem.
2011-02-13 15:09:27 +01:00
Mikael Magnusson 8e49a5fafb app: fix a typo 2011-02-12 18:16:05 +01:00
Michael Natterer 014cc2140e libgimp: document which context setting affects what prodecures 2011-02-12 15:20:46 +01:00
Michael Natterer b33076bea5 libgimp: document which context settings affect the new transform API 2011-02-11 21:15:31 +01:00
Michael Natterer ec196a8ac4 app: allow to set a color for GimpCurveView's primary curve
and redo how the curves tool sets its curves in order to support this
without code duplication. Also change the color of the yellow curve in
the dynamics output editor to orange because yellow is hardly visible.
2011-02-10 20:05:50 +01:00
Martin Nordholts 8bf46b3efb app/tests: Cleanup temp files after tests
Remove files in /tmp after tests so that other users on the same
machine (like buildbots) also can run make distcheck without getting
"can't overwrite file" errors.
2011-02-09 23:48:18 +01:00
Michael Natterer 3ba0554628 app: use proper vivid colors for the background curves
instead of dull ones. The curve view already displays them with 0.5
opacity, so there is no reason to make them even harder to distinguish.
2011-02-09 09:26:06 +01:00
Michael Natterer aaee95d545 app: experimentally color the background curves 2011-02-09 01:07:48 +01:00
Michael Natterer 6c252921af app: handle the inputs generically in GimpDynamicsOutputEditor
instead of having explicit code for each input in all functions.
2011-02-09 00:27:25 +01:00
Michael Natterer 5a28791cfb app: connect to the background curves' "dirty" signal in GimpCurveView
and make sure curves are not added twice to the background list.
Also warn when trying to remove a non-existent background curve.
2011-02-09 00:24:43 +01:00
Michael Natterer 2ed861fb8d Bug 638795 - Brush Dynamics Curve editor stutters
Update the toggles in the treeview only if a boolean property of the
output changes, and not on *each* output change which includes each
tiny curve editing.

Also fix formatting in the whole file.
2011-02-08 22:09:52 +01:00
Alexia Death 9e3aa5c1d2 app: Clean up event eval 2011-02-08 22:10:34 +02:00
Alexia Death f0f47e8d47 app: Remove a bit of code from event eval 2011-02-08 21:21:16 +02:00
Michael Natterer e3b5c55ca2 Bug 597117 - impossible to drop a group as a sibling inside a group
Properly distinguish between dropping after a group and into it, by
having three drop areas on a collapsed row. Still handle expanded rows
as before, but indicate dropping into visually just as on a collapsed
row.
2011-02-08 09:35:38 +01:00
Michael Natterer 3873aa5cac app: gimp_data_duplicate() reset name, filename, writable and deletable
to default values on the copy, so the duplicated data behaves as
documented, even if a subclass copied too much. Makes duplicated
dynamics work.
2011-02-07 19:38:23 +01:00
Michael Natterer 708555a378 app: keep a reference to channels and vectors around removing them
because we temporarily need them after removal from their item trees,
and bad things can happen if they are not kept alive by the undo stack
(like when undo is disabled while loading an image).
2011-02-07 11:35:58 +01:00
Barak Itkin 18b9ba1c87 app: Add some comment documentation to code 2011-02-07 03:29:23 +02:00
Michael Natterer a12af14a59 app: don't forget to free the layer's new name 2011-02-07 00:52:34 +01:00
Michael Natterer 0d2de3e7c1 app: don't gimp_object_set_name() on the image's layer after opening
Instead, use gimp_item_rename(). Also change the name before creating
a display for the image, to avoid confusing the undo dialog.
2011-02-07 00:50:54 +01:00
Michael Natterer ef28d7fee6 app: don't gimp_object_set_name() on an item that's attached to an image
because it bypasses the unique name logic used by gimp_item_rename().
2011-02-06 23:56:24 +01:00
peter sikking, m+mi works 6db80c765d remove garbage I injected 2011-02-06 20:21:20 +01:00
peter sikking, m+mi works 7cb5c67bc8 removing references to ps-menurc 2011-02-06 19:57:59 +01:00
Michael Natterer 92f130fbc3 app: also run device history coords through the axis mapping curve function 2011-02-06 13:26:25 +01:00
Michael Natterer 8d8c6bb9ea configure: build with DISABLE_DEPRECATED also for GTK+ 2.24
Bump the "too new" test to GTK+ 2.26 which will never be released, but
this way we can keep the configure check around for later reuse after
the switch to GTK+ 3.x. Also bump the "too new" GLib and Pango
versions to really future versions so we early-catch deprecations
in the current development cycle.
2011-02-06 12:50:14 +01:00
Michael Natterer f4af9b549e Globally switch to saying "window_id" instead of just "window"
when dealing with native window handles. Also get rid of using
GdkNativeWindow and simply consistently use guint32 all over the
place. This is more obvious and consistent and keeps the diff to the
gtk3-port branch smaller.
2011-02-06 12:07:55 +01:00
Michael Natterer 16b020fc42 app: clean up paint core cleanup 2011-02-06 11:22:23 +01:00
Michael Natterer 012eb1dd93 app: zero the reallocated keys and axes arrays in GimpDeviceInfo 2011-02-06 11:20:07 +01:00
Michael Natterer e309d3cdf8 app: check that the model is not NULL before using it in GimpContainerComboBox
to be safe against GimpContainerView API being called during widget
destruction.
2011-02-06 11:20:07 +01:00
Michael Natterer 11ac0296b9 app: ref/unref the context in gimp_image_editor_set_context() 2011-02-06 11:20:07 +01:00
Michael Natterer 1931cca5ab libgimp: deprecate the entire old gimp_foo_select() API
It's now completely replaced by the new gimp_image_select_foo() functions.
2011-02-06 11:20:07 +01:00
Michael Natterer bc5e0a79ab libgimp: remove "select-transparent" parameters from the new selection API
and use the sample-transparent setting from GimpPDBContext instead.
2011-02-06 11:20:07 +01:00
Michael Natterer d3a291d2df pdb: add "sample-transparent" as GimpPDBContext property
and add PDB API to get/set it.
2011-02-06 11:20:07 +01:00
Michael Natterer c15488d10a libgimp: remove "threshold" parameters from the new selection API
and use the sample-threshold setting from GimpPDBContext instead.
2011-02-06 11:20:07 +01:00
Michael Natterer 2e16d932ec pdb: add "sample-threshold" as GimpPDBContext property
and add PDB API to get/set it.
2011-02-06 11:20:07 +01:00
Michael Natterer f76bcab221 app: move "default-threshold" from GimpGuiConfig to GimpCoreConfig 2011-02-06 11:20:06 +01:00
Alexia Death 1cf5295d2e app: Fix couple of bugs in smooth code 2011-02-06 00:17:51 +02:00
Michael Natterer a116681982 app: move all GimpGroupLayer members to a private struct 2011-02-03 22:30:22 +01:00
Michael Natterer f8e8952147 app: clean up dynamics duplicate implementation 2011-02-03 19:47:52 +01:00
Martin Nordholts 93f63335dc app: End core/gimpdynamics.c with newline
Fix compiler warning.
2011-02-03 08:04:26 +01:00
Martin Nordholts 3e0d0b862a app/tests: Add test-save-and-export
Add some regression tests for how the URIs associated with an image is
handled during, save, import etc.
2011-02-02 22:32:30 +01:00
Martin Nordholts 6c6cf7a881 app: Move import and export URI updates to file_save()
We should handle import-URI and export-URI at a lower level so
e.g. the import URI is reset when gimp_dnd_xds_save_image() is
used.

This change also simplifies unit testing.
2011-02-02 22:31:27 +01:00
Martin Nordholts 1702822720 app: Fix copy-paste error in file-save-dialog.c
Fix what must have been a copy-paste error, we can not want to set
GIMP_FILE_SAVE_LAST_URI_KEY after we have exported.
2011-02-02 22:31:27 +01:00
Petr Ovtchenkov b370a0ebe6 app: Support building with GTK 2.24 for gimpscalecombobox.h 2011-02-02 22:29:37 +01:00
Martin Nordholts 3728f6f7d7 app/tests: Add gimp_test_utils_create_image_from_dalog() 2011-02-02 22:29:24 +01:00
Martin Nordholts 6ea36f3383 app: Use gimp_image_set_uri()
I forgot to do this...
2011-02-02 22:28:47 +01:00
Martin Nordholts 366cddc856 app: gimp_image_get/set_imported/exported/save_a_copy_uri()
Add more proper core API for GimpImage URI management.
2011-02-02 22:28:46 +01:00
Martin Nordholts 8d61a61c0e app: Remove GIMP_FILE_EXPORT_TO_URI_KEY
Remove GIMP_FILE_EXPORT_TO_URI_KEY which is always identical to
GIMP_FILE_EXPORT_URI_KEY.
2011-02-02 22:28:46 +01:00
Martin Nordholts d449317501 app: Add and use gimp_image_get_string_untitled() 2011-02-02 22:28:46 +01:00
Alexia Death 60a77f6db2 app: Fix and enable duplicate for dynamics 2011-02-02 21:48:10 +02:00
Michael Natterer 6a08376d49 app: add new virtual function GimpItem::unset_removed()
and implement it in GimpLayer to unset the removed flag on the layer
mask. Remove layer mask special casing from gimp_image_add_layer().
Make sure that all an item's children get their removed flag unset in
gimp_item_unset_removed().
2011-02-02 19:42:29 +01:00
Martin Nordholts a69cd7467d app/tests: Update gimpdir/tags.xml
The order is changed after tests are run, make the change already in
the version controlled version.
2011-02-02 08:34:39 +01:00
Alexia Death 75593c3fea app: Fix missing outline with aspect 0.0 2011-02-02 01:04:24 +02:00
Alexia Death 418632916a app: Fix outline offset 2011-02-02 00:58:09 +02:00
Alexia Death 6a89db0f53 app: Minor aspect ratio fixes 2011-02-02 00:33:08 +02:00
Michael Natterer 40e11d7ad1 app: pass the image to g_object_new() in gimp_text_layer_from_layer() 2011-02-01 14:15:46 +01:00
Michael Natterer eacd80446d app: finally get rid of gimp_item_configure() and drawable_configure()
and turn them into gimp_item_new() and gimp_drawable_new()
2011-02-01 12:47:24 +01:00
Michael Natterer ccd3beb8ff app: don't use gimp_drawable_configure() in gimp_drawable_duplicate()
Instead, copy over the needed drawable members manually.
2011-02-01 10:46:53 +01:00
Michael Natterer 5c8ec234cc app: add "image" as construct property to GimpItem
- The image *must* now be passed to g_object_new() when creating items
- Remove the "image" parameter from all item configure() functions
- Set the item's ID in gimp_item_set_image() if it has none yet
2011-02-01 10:28:10 +01:00
Michael Natterer 12e531f512 app: gimp_item_replace_item(): if the item has an ID, remove it from the item hash 2011-01-31 23:53:59 +01:00
Michael Natterer e893e3130c app: don't leak the item's old parasite list in gimp_item_replace_item() 2011-01-31 23:52:41 +01:00
Michael Natterer ad88eb55a2 app: add accessors for GimpItem::parasites and move it to private 2011-01-31 23:51:18 +01:00
Michael Natterer af160141db app: add gimp_item_unset_removed() and move item->removed to private 2011-01-30 21:57:45 +01:00
Michael Natterer fd655490e8 app: move most of GimpItem's members to a private struct 2011-01-30 21:49:51 +01:00
Michael Natterer f63a8fcfe6 app: remove some leftover dead code
probably from before some text layer saving refactoring.
2011-01-30 20:43:01 +01:00
Michael Natterer 90419e0672 app: add "gboolean push_undo" to gimp_item_parasite_attach/detach()
and use this API instead of manually fiddling with the item's
GimpParasiteList.
2011-01-30 20:40:43 +01:00
Michael Natterer 96efc7ea1c app: reset an item's "removed" state as it is added to its parent container
and not "manually" from the resp. undo functions.
2011-01-30 19:36:27 +01:00
Michael Natterer 0428be2944 app: add gimp_item_replace_item() which is a bad hack and documented as such
in order to get rid of fiddling with GimpItem internals inside
gimptextlayer-xcf.c
2011-01-30 19:26:32 +01:00
Michael Natterer cfecdc8b70 app: use accessors instead of using GimpItem members directly 2011-01-30 18:58:05 +01:00
Michael Natterer 70f88c4320 app: don't update the highlight when the rectangle tool is resumed
It causes an infinite invalidation loop.
2011-01-27 21:36:58 +01:00
Michael Natterer 1205a6aedd pdb: add "sample-criterion" as property to the PDB context
See commit below
2011-01-27 21:26:16 +01:00
Michael Natterer bb6083a1eb pdb: add "sample-merged" as property to the PDB context
- add API to get/set the new state
- remove sample-merged parameters from the new gimp_image_select_foo() API
- update procedure documentation
2011-01-27 21:26:16 +01:00
Martin Nordholts ab5bd03a9c Show maintainers after creators in About-dialog
It makes sense to show maintainers after creators in the About-dialog,
do that.
2011-01-27 18:52:00 +01:00
Martin Nordholts 285a42eef3 app: Calculate number of creators in about dialog 2011-01-27 18:52:00 +01:00
Martin Nordholts 480d6e0cf2 app: Add and use gimp_image_get_uri() 2011-01-26 08:19:39 +01:00
Martin Nordholts ac773489e4 app: gimp_image_get_uri() -> gimp_image_get_uri_or_untitled() 2011-01-26 07:55:14 +01:00
Alexia Death 452819143a app: half-sane aspect ratio implementation 2011-01-25 23:28:02 +02: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
Michael Natterer 47eaecdc9d libgimp: deprecate a bunch of old selection API
namely ellipse_select(), free_select(), rect_select() and
round_rect_select() because they are fully replaced by the new
gimp_image_select_foo() functions. Will deprecate the rest as soon as
I have figured how to put the parameter overkill of the remaining
functions into context properties.
2011-01-25 19:28:30 +01:00
Michael Natterer 9703bed2ef libgimp: reorder the parameters of the new and unused gimp-image-select API
Make the common "image" and "operation" parameters come first.
2011-01-24 14:53:42 +01:00
Martin Nordholts 3c95ed31e0 Fix compiler warning about missing newline 2011-01-24 08:10:01 +01:00
Alexia Death 5f9bd0c044 app: add reset buttons to all brush settings sliders 2011-01-23 18:17:25 +02:00
Alexia Death e41b5699dd app: remove some dead code in imagehoses 2011-01-23 12:24:33 +02:00
Michael Natterer 33479c1086 app: use gegl_node_has_pad() instead of gegl_node_get_pad() 2011-01-22 23:54:25 +01:00
Michael Natterer 3e38686693 app: also bump the babl and gegl versions in sanity.c 2011-01-22 23:53:38 +01:00
Michael Natterer 27179d6219 app: don't duplicate code when setting GimpSpinScale's cursor 2011-01-22 23:23:02 +01:00
Alexia Death 49ed64c69e app: remove dupilcate angle and velocity calculation from imagehoses 2011-01-23 00:09:56 +02:00
Michael Muré 7056d38681 cagetool: implement rubber band selection for edit mode, if the cage is closed 2011-01-22 15:38:35 +01:00
Michael Muré aa98319f1b cage tool: implement options_notify to allow switching back to edit mode
and update fill option
2011-01-22 14:17:28 +01:00
Michael Muré d80c9474cb cagetool: fix regression causing non affine-invariant transformation
+ update in print_cage debug function
2011-01-22 14:17:28 +01:00
Michael Muré 3f581c37b6 cagetool: fix a drawing bug when adding point to the cage while moving cursor 2011-01-22 14:17:28 +01:00
Michael Muré f379f3c467 fix rubber band selection for layer with offset 2011-01-22 14:17:28 +01:00
Michael Muré e7d219d387 Cage tool: add rubber band selection for deform mode 2011-01-22 14:17:28 +01:00
Michael Muré dd28e1fe02 Implementation of the multi-selection in the cage tool and refactoring that come with.
This editing mode should work like the path tool.
The backup of the cages point for undo is replaced by a displacement that affect
all the selected point in CageConfig with commit/reset displacement.
2011-01-22 14:17:28 +01:00
Michael Muré 006c7ab9f4 refactor of the GimpCageConfig with a custom GimpCagePoint data structure 2011-01-22 14:17:28 +01:00
Michael Muré 23193cba2f Rewrite of the cage tool as a state machine 2011-01-22 14:17:28 +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 e27b5f6da2 app: remove unused variable in gimp_channel_tree_view_constructed() 2011-01-20 20:26:35 +01:00
Michael Natterer 4186d0114f app: add comment to improve readability 2011-01-20 20:26:34 +01:00
Michael Natterer 550669962b 622863 - Input Devices list is not resizeable
Derive from GtkPaned instead of GtkBox, and change the handle size to
12px via gtkrc so spacing rules are followed.
2011-01-20 20:26:34 +01:00
Michael Natterer eb04265ce3 app: gimp_brush_core_clamp_brush_scale() -> gimp_brush_clamp_scale() 2011-01-17 23:20:49 +01:00
Michael Natterer 202124c438 app: implement GObject::constructed() instead of ::constructor() 2011-01-14 09:38:46 +01:00
Øyvind Kolås cad3778eea gegl-tool: remove render ops from blacklist
This allows fractal-explorer, checkerboard and the newly added grid op to
render.
2011-01-13 23:02:50 +00:00
Michael Natterer 503a9cebce app: implement GObject::constructed() instead of ::constructor() 2011-01-13 10:06:07 +01:00