Commit Graph

3536 Commits

Author SHA1 Message Date
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
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
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
Alexia Death 49ed64c69e app: remove dupilcate angle and velocity calculation from imagehoses 2011-01-23 00:09:56 +02: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 Natterer eb04265ce3 app: gimp_brush_core_clamp_brush_scale() -> gimp_brush_clamp_scale() 2011-01-17 23:20:49 +01:00
Michael Natterer 5e4eee4653 app: implement GObject::constructed() instead of ::constructor() 2011-01-12 22:53:58 +01:00
Michael Natterer 292ac61056 Bug 638042 - Undo/Redo name for toggling "Disable Layer Mask" is incorrect
Apply modified patch from Andrew Church which says "Enable" or
"Disable" and not always "Apply" in the undo description.
2011-01-09 21:44:37 +01:00
Michael Natterer e82e40033a app: some cosmetic cleanup in the item's node handling code 2010-12-19 20:39:18 +01:00
Alexia Death 904048cdcb app: Clearly present Fade and Color dynamics options as such 2010-11-25 19:06:16 +02:00
Michael Natterer d46b53f63d Bug 635040 - Edit -> Stroke Path performs no action on an incomplete path
Add error reporting to gimp_drawable_stroke_vectors() and produce the
same warning as the paint core when trying to stroke a path with zero
or one points only.
2010-11-25 11:31:40 +01:00
Michael Natterer 04c4eedb4c app: indentation 2010-11-19 12:02:57 +01:00
Alexia Death 20afb328a7 app: Unify direction calculation for painting and stroking 2010-11-17 00:03:07 +02:00
Michael Natterer e7f8758f5c app: remove gimp_image_map_is_busy() again 2010-11-10 19:37:58 +01:00
Michael Natterer 41cad26f12 app: don't run the main loop manually after calling gimp_progress_set_value() 2010-11-10 00:14:22 +01:00
Alexia Death 27c77e6a5e Merge branch 'master' into soc-2010-cage-2 2010-11-04 00:41:45 +02:00
Michael Natterer d899328a1c app: some updates in the new colormap palette proxy code
- update the palette when single colormap entries change
- set the palette to 16 columns
- add an accessor for the palette
2010-10-28 02:16:51 +02:00
Michael Natterer a27b6f5f47 app: keep a GimpPalette around that proxies the image's indexed colormap
and add it to the palette factory as internal object. Work in progress
on the way to getting rid of the ugly code in the colormap editor.
2010-10-27 15:40:43 +02:00
Michael Natterer f46122b862 app: add lots of accessors to GimpPalette
and use them all over the place instead of directly accessing the struct.
2010-10-27 14:36:44 +02:00
Martin Nordholts ee81f23f0a app: Add gimp_enum_get_value_name() utility function 2010-10-26 14:23:08 +02:00
Michael Natterer f8d6821790 app: get rid of selection_control() in core/ and display/
- replace gimp_display_shell_selection_control() by undraw() and restart()
  which actually say what they are doing
- remove enum GimpSelectionControl
- replace GimpImage::selection_control() by ::selection_invalidate()
  because none of the other enum values was used any longer
2010-10-09 20:28:37 +02:00
Michael Natterer 545e65dda6 app: add gimp_display_shell_selection_pause() and _resume()
and use them instead of gimp_display_shell_selection_control() with
the resp. enum values. Remove the GIMP_SELECTION_PAUSE and _RESUME
enums values and thus the presence of this concept in the core.
2010-10-09 14:26:33 +02:00
Michael Natterer 55f01bf6f3 app: remove gimp_display_shell_draw_vectors()
which is the last bit of non-item drawing of stuff that is not
somehow the image itself... wheee!

This involves reverting commit
6bce0641d4 and adding back all the
vectors handlers that were in gimpdisplayshell-callbacks.c before.
Change the callbacks to manage proxy items for all the image's
vectors.
2010-10-08 01:03:56 +02:00
Sven Neumann 20ec80b20e app: formatting 2010-10-07 22:21:32 +02:00
Michael Natterer 3e69ae0039 app: add a layer boundary canvas item class
and use it to draw the layer boundary. Remove a lot of stuff
that was there only to draw the boundary before:

- remvoe all layer boundary stuff from the selection code
- remove gimp_display_shell_draw_layer()
- remove enum values GIMP_SELECTION_LAYER_ON,OFF from core-enums.h
- remove all lines calling gimp_image_selection_control() with
  the removed enum values
- remove gimp_layer_boundary()
2010-10-03 00:28:40 +02:00
Michael Natterer 8c214f95ca app: fix showing the layer boundary when there is a floating selection
...which I broke myself back in 2003 (sic!).
2010-10-02 22:30:30 +02:00
Michael Natterer 26d0035be0 app: draw guides using GimpCanvasItems
- Add signals GimpImage::guide_added(), removed() and moved()
- Remove singal GimpImage::update_guide()
- Adapt core code to emit the new signals instead of update_guide()
- Have the shell connect to the new signals and update guide canvas
  items as needed
- Remove gimp_display_shell_draw_guides()
2010-10-01 10:34:15 +02:00
Michael Natterer 07051535da app: remove GimpImage signal "update-sample-point" 2010-10-01 09:27:57 +02:00
Michael Natterer 0c613ba87d app: port sample point drawing to GimpCanvasItems
- Add GimpImage signal "sample-point-moved" and emit it when needed
- Let the shell connect to the sample point add, remove and move signals
  and update the canvas items accordingly
- Remove gimp_display_shell_draw_sample_points()
2010-10-01 09:27:57 +02:00
Michael Natterer 26f6f2992a app: remove GIMP_SAMPLE_POINT_DRAW_SIZE from gimpsamplepoint.h
and add it to gimpcanvassamplepoint.c, it doesn't need to be public
any longer.
2010-09-30 10:12:15 +02:00
Alexia Death 74e5864fa6 Merge branch 'master' into soc-2010-cage-2 2010-09-26 23:08:15 +03:00
Sven Neumann 8cfb8c2143 app: update vectors from the freeze handler as well
This is needed so that the area covered by the vectors before the
change is exposed. Ideally of course the update signal should
include the changed area.
2010-09-17 21:28:30 +02:00
Michael Natterer 6bce0641d4 app: add signal GimpImage::update_vectors() and have the image manage updates
...just as we do for drawables. Connect to adding, removing, modifying
and toggling visibility of all vectors and emit "update-vectors"
accordingly. Add an update-vectors signal handler to GimpDisplayShell
and remove all other vectors handlers.
2010-09-17 11:31:57 +02:00
Michael Natterer 4d3b52ec6c pdb: return the resulting floating selection in the item transform API
This was actually documented to be the return value of all transform
procedures since 1.2, but it was always broken and returned the
passed-in drawable. Therefore it's only fixed for the new item API,
the old procedures keep their semantics (and will all be deprecated
anyway).
2010-09-16 00:36:03 +02:00
Michael Natterer f1cf31f9da app: don't pass default names to gimp_drawable_configure()
because gimp_item_configure() uses the default name from GimpItemClass
anyway if a NULL name gets passed.
2010-09-15 16:36:16 +02:00
Sven Neumann 9c8736a56f app: formatting 2010-09-11 23:02:15 +02:00
Michael Natterer 8b38bde642 app: remove the "auto_center" params from gimpdrawable-transform.[ch]
Instead, add utility functions that calculate the centers for rotate
and flip and use them where we used to pass "auto_center". This looks
pretty much poinless, but a commit will follow that makes it look
better...
2010-09-07 23:43:18 +02:00
Michael Natterer 095ae5cc9b app: move mask_bounds() and mask_intersect() from GimpDrawable to GimpItem
There is nothing drawable-specific in there, and having them on
GimpItem enables some simplifications, esp. in upcoming PDB
wrappers. None of these refactorings is in this commit though.
2010-09-07 21:30:46 +02:00
Michael Natterer 24b6c27e42 app: use gimp_drawable_mask_intersect() instead of mask_bounds() 2010-09-07 17:43:39 +02:00
Michael Natterer df1575234c app: make the code in gimp_drawable_mask_intersect() a bit more readable 2010-09-07 17:08:54 +02:00
Martin Nordholts 3e60cacfd5 app/core: Init bestcolor in gimpimage-convert.c
Init bestcolor in gimpimage-convert.c to fix warning about "may be
used uninitialized in this function".
2010-09-03 08:52:26 +02:00
Alexia Death d98bd748e7 Merge branch 'master' into soc-2010-cage-2 2010-09-01 11:21:58 +03:00
Martin Nordholts 0dc4b5de72 Fix a bunch of warnings 2010-08-31 22:46:36 +02:00
Alexia Death aee148a486 Merge branch 'master' into soc-2010-cage-2 2010-08-26 21:50:55 +03:00
Sven Neumann f1d89f712d Bug 626446 - segfaults when started with -i argument
We don't need a standard tool-preset object, so just remove the
code that was copied and pasted from other GimpData objects.
Fixes the crash on startup in non-interactive mode.
2010-08-25 21:47:22 +02:00
Alexia Death c06ed13a14 core: Add function to test if image map is busy 2010-08-15 02:32:31 +03:00
Michael Natterer fe72f5985b app: reduce code duplication in gimpimage-duplicate.c 2010-08-08 18:00:08 +02:00
Michael Natterer 1ba9de4567 Bug 620646 - Little defect about duplication of images
Add a dedicated function to duplicate the floating selection and
remove all the evil floating selection code from all other
functions. The new function correctly duplicates floating selections
on channels and layer masks and is also aware of layer groups.
2010-08-08 17:50:08 +02:00
Michael Natterer b2642272a4 app: add gimp_item_stack_get_item_by_path()
which finds an item by its path as returned by gimp_item_get_path().
2010-08-08 17:31:39 +02:00
Michael Muré a68eb9d72d remove the unneeded anymore GimpCage data structure 2010-08-08 13:27:51 +02:00
Michael Muré c24029c230 gimpcage: fix of a bug in the bounding box computation 2010-08-08 13:23:56 +02:00
Michael Muré df842ba87c gimpcage: add a missing update of the scaling factor 2010-08-08 13:23:45 +02:00
Michael Muré 2ef73c356e GimpCage: now reverse the cage before computation if needed 2010-08-08 13:23:12 +02:00
Michael Muré 1b67742e4f gimpcage: add a function to compute the bounding box of the deformed cage. Computing of the coefficient is done accordingly. Update of the gegl op. Also add a wip function to compute if the cage is clockwise or not. 2010-08-08 13:22:24 +02:00
Michael Muré 81f9e6019b gimpcage: add a second series of point for the deformed cage, with access function. Also add the computing of the scaling factor and a function to reverse the cage. 2010-08-08 13:22:04 +02:00
Michael Muré 3715837edf gimpcage: add a function that return the normal to an edge of the cage 2010-08-08 13:21:30 +02:00
Michael Muré f994d57732 gimpcage data structure:
- fix of the iteration of the buffers
- missing term in the computing
- expose the compute coefficient function
2010-08-08 13:20:58 +02:00
Michael Muré 2157a67cea app/core/gimpcage: add access functions to the cage data structure (add a vertice, remove the last, move a vertice, check if a point is near a vertice)
app/tools/gimpcagetool: The tool can now draw a cage, add vertices, remove the last, close the cage
2010-08-08 13:20:24 +02:00
Michael Muré 1856516547 Beginning of GimpCage data structure, with the computation of the coefficient (test needed) 2010-08-08 13:20:00 +02:00
Michael Muré f6316285be structure of the cage tool, with an options object 2010-08-08 13:17:10 +02:00
Michael Muré 24652b4fbd empty gobject for GimpCage (data structure), GimpOperationCage (Gegl op) and GimpCageTool (frontend) 2010-08-08 13:16:57 +02:00
Sven Neumann 8cf801c8e0 app: allow to delete curve points
Pressing Delete in the Curve view now deletes the selected point
on the curve.
2010-07-26 01:08:44 +02:00
Michael Natterer 3184c440b3 app: introduce GimpItem::to_selection()
Which replaces all the deparate functions to turn layers, channels,
layer masks and vectors into selections. Use the new virtual function
all over the place instead of calling the functions in
gimpchannel-select.c manually.
2010-07-20 23:09:19 +02:00
Michael Natterer 31d7061e20 app: remove "item_type" parameter from gimp_param_spec_item_id()
and from gimp_value_get_item(). The functions are used nowhere, and
the parameter is now in the way of adding item support to the PDB.
2010-07-08 22:40:48 +02:00
Michael Natterer 314a6ab926 app: merge the layer, channel and vectors repositioning APIs
into an API based on GimpItem.
2010-07-08 18:08:13 +02:00
Michael Natterer 70a3addcb9 app: harden precondition checks in GimpItemTree
Instead of checking if the item is attached and belon's to the tree's
image (which did miss e.g. passing a channel to the layer tree), we
now check if gimp_item_get_tree(item) returns right tree.
2010-07-08 15:06:19 +02:00
Martin Nordholts 706900c4f6 Bug 589010 - Don't make Alt-Clicked layers active
Add a "pre-clicked" signal to GimpCellRendererViewable that can
prevent a selection from happening. Move the Alt-Click code in
GimpLayerTreeView to this signal and if a layer is Alt-Clicked, don't
go ahead and make the layer active. Also add a test for this use case.
2010-06-27 21:46:53 +02:00
Michael Natterer 2813fce0b8 Bug 613838 - Error in gimp-hue-saturation PDB call
The "hue" parameter from the PDB is in a [-180..180] range, not in
[-100..100]. Note that unlike stated in the bug, this is not an
incompatible change, because it simply got broken between 2.4 and
2.6.
2010-06-27 01:15:46 +02:00
Michael Natterer d596695afc app: run dispose explicitely on the paint_options before unrefing them 2010-06-26 23:22:53 +02:00
Michael Natterer 324fa432b6 app: free the tag_ref_counts hash table in dispose() 2010-06-26 18:25:44 +02:00
Michael Natterer e24c2d2249 app: add a local "container" variable to make the code more readable 2010-06-26 15:49:10 +02:00
Michael Natterer e0d5bab077 app: remove the static variables for the "standard_foo" fallback members
Instead, call gimp_foo_get_standard() when a fallback object is
needed (keeping them around as static variables was a silly
micro-optimization).
2010-06-24 22:33:33 +02:00
Michael Natterer b2b1cb135b app: move the instance debug facility to the new file app/gimp-debug.c
Build it unconditionally but enable it via GIMP_DEBUG=instances
2010-06-24 19:11:56 +02:00
Michael Natterer 44e6acbef8 app: the name of the standard paint is "gimp-paintbrush" not "GimpPaintbrush" 2010-06-24 18:38:19 +02:00
Michael Natterer 67590c04d1 app: unref tool options and presets in dispose() instead of finalize() 2010-06-24 18:38:18 +02:00
Michael Natterer bfbdf1cfb8 app: unref the paint options in dispose() instead of finalize() 2010-06-24 18:38:18 +02:00
Michael Natterer 5db9d31498 app: drop all object references in dispose() insatead of finalize() 2010-06-24 18:38:18 +02:00
Michael Natterer 06bf098fa9 app: run dispose on the tool infos before unrefing their container
because they contain reference cycles with the tool options
2010-06-24 18:38:18 +02:00
Michael Natterer a5b6544b6e app: unref options->tool_info in dispose() instead of finalize() 2010-06-24 18:38:17 +02:00
Michael Natterer c9bde335f0 app: don't additionally ref the standard data objects
Instead, set their statically remembered pointer as a weak pointer so
it's nullified automatically if they are ever finalized. Doesn't
actually get rid of them upon exit yet, this is just a preparation.
2010-06-24 18:38:16 +02:00
Michael Natterer e44d81bd4b app: add a debug facility that keeps track of allocated GimpObjects 2010-06-23 22:32:14 +02:00
Michael Natterer 09ebdcb06b app: don't leak each transformed brush mask 2010-06-22 23:06:35 +02:00
Barak Itkin 5930b13084 app: add context to all undo descriptions
Description of undo actions should be marked as action descriptions,
and not as commands. This is required for translation for some
language (like Hebrew) that require a different grammatical tense for
describing actions
2010-06-09 18:50:23 +02:00
Michael Natterer 5dd9e4bbc3 app: remove member GimpDrawable::has_alpha
because it is always the same as GIMP_IMAGE_TYPE_HAS_ALPHA(drawable->type),
so simply use that instead.
2010-06-08 10:10:04 +02:00
Michael Natterer 8a27702ac3 app: add simple macros GIMP_TIMER_START() and GIMP_TIMER_END()
which measure the time taken between them and print out a message.
Use it for projection benchmarking and add timing to scaling.
2010-06-06 20:24:27 +02:00
Michael Natterer 17961941fc app: use gegl:scale for scaling if use-gegl is TRUE 2010-06-06 19:54:44 +02:00
Michael Natterer 301b990a46 app: add gimp_drawable_apply_operation_to_tiles()
which uses a passed-in tile manager instead of
the drawable's shadow tiles as sink.
2010-06-06 19:52:39 +02:00
Michael Natterer 8cefb2913e app: use g_strcmp0() where strings can be NULL instead of checking manually 2010-06-06 19:15:49 +02:00
Michael Natterer 6d67ffd6f0 app: some cleanup in GimpFilteredContainer 2010-06-06 18:55:07 +02:00
Michael Natterer 72bcb72c44 app: rename gimp_template_create_image() to gimp_image_new_from_template()
and move it from gimptemplate.c to gimpimage-new.c
2010-06-05 22:42:00 +02:00
Michael Natterer 649bd8f678 Bug 619131 - Attempting to flip FG/BG hard-edge gradient locks up GIMP
Don't have the "prev" pointer of the right gradient segment point to
itself, causing an infinite loop when iterating the gradient reversed.
2010-05-20 10:11:18 +02:00
Alexia Death b0d02666a3 app: A few more generic aspect ratio fixes 2010-05-14 20:58:27 +03:00
Alexia Death 74f907ca33 app: Fix curve application to tilt aspect ratio maping 2010-05-10 00:22:39 +03:00
Alexia Death 4816a61dcb app: Aspect ratio fixes 2010-05-10 00:21:55 +03:00
Alexia Death 0cb1ada818 app: convert aspect ratio to scale_x&scale_y just before matrix transform 2010-05-10 00:11:07 +03:00
Michael Natterer 506469f9f9 app: minor formatting cleanup 2010-04-26 18:52:49 +02:00
Alexia Death 5e1c9d228c app: Fix tool preset editor init 2010-04-24 18:51:42 +03:00
Alexia Death 06c1b290d0 app: Add tool preset editor to controll what elements get applied
I had to remove the asserrt in tool preset constructor, because with it
it wasnt possible to initalize an empty model object for the editor.
At init time the gimp object passed to the constructor is not yet available.
2010-04-24 17:55:54 +03:00
Alexia Death 93ab387fb4 app: add use flags to tool preset 2010-04-24 15:54:35 +03:00
Michael Natterer 8f813ec52b app: print a warning if a wrong tool is set on a GimpToolOptions object
Use a real g_warning() because this is a programming error. Please
report all warnings.
2010-04-21 20:53:16 +02:00
Michael Natterer bb00c53bf5 app: make sure tool options are created with the right tool set 2010-04-20 20:04:24 +02:00
Michael Natterer c835fad2c9 app: make sure GimpToolOptions always have the right GimpToolInfo set
Override GimpContext's "tool" property and add an evil function that
makes sure we don't set a tool that doesn't match the options. Needed
because tool options are read from disk and thus unreliable per se,
additional we were stupid and wrote wrong tool options to disk.
2010-04-20 20:00:34 +02:00
Michael Natterer 5c3cf19095 Revert "app: Make drawable updates happen at fixed framerate"
This reverts commit 32aca3c8b6.
Clearly needs more review, thinking and discussion.
2010-04-18 15:03:16 +02:00
Alexia Death 32aca3c8b6 app: Make drawable updates happen at fixed framerate 2010-04-18 15:53:22 +03:00
Michael Natterer 4c4c861aa1 app: make sure GimpToolPreset got the "gimp" construct property passed
and pass a Gimp when creating the preset editor's local model.
2010-04-11 16:18:21 +02:00
Michael Natterer b676a1add0 app: make tool preset loading work
- add "Gimp" property to GimpToolPreset
- implement GimpConfigInterface::deserialize_property() and deserialize
  the "tool-options" locally so we can pass the required "gimp" construct
  property.
2010-04-11 15:43:29 +02:00
Michael Natterer caad58d203 app: add a GimpContext parameter to GimpDataLoadFunc 2010-04-11 13:12:41 +02:00
Michael Natterer 4fcf34699f app: flip context and name parameters in GimpDataNewFunc 2010-04-10 19:55:42 +02:00
Alexia Death 78a4cae2d5 app: Rewire the the feature formely known as harndess back to gui as force 2010-04-09 00:44:52 +03:00
Alexia Death 9ed712ddc4 app: Fix ceil/floor amplifying errors in transform size calculation 2010-04-08 00:31:40 +03:00
Michael Natterer 430b0e5517 app: add a GimpContext parameter to all functions which create GimpData
and pass a context whereever needed. Fix up gimp_tool_preset_new()
to actually make a copy of the context's active tool's options.
2010-04-05 13:26:31 +02:00
Michael Natterer 98a5e77200 app: formatting 2010-04-04 18:56:40 +02:00
Michael Natterer efed2bf623 app: some cleanup and fixes in the tool preset infrastructure 2010-04-04 13:58:55 +02:00
Alexia Death 29f7fe87b0 Base infra for tool presets. 2010-04-03 21:06:15 +03:00
Michael Natterer 4da60dd1b3 app: add context->dynamics_name to the context's memsize 2010-04-01 20:46:31 +02:00
Michael Natterer 021a49ce73 Add tile_manager_duplicate() which does quick tile-by-tile COW copy
and use it instead of duplicating the same code twice less efficiently.
2010-03-19 19:18:18 +01:00
Michael Natterer de583d4c28 Make gimp_buffer_new() ref the passed tiles
and clean up gimp-edit.c a bit as a result.
2010-03-19 19:18:18 +01:00
Michael Natterer 8688037a58 Optionally make a copy of the drawable's tiles in GimpDrawableModUndo
instead of simply reffing drawable->tiles. Add boolean property "copy-tiles"
and a boolean parameter to gimp_image_undo_push_drawable_mod() to control
the new feature. However, pass FALSE in gimp_drawable_real_set_tiles() (which
currently is the undo's only user)
2010-03-18 10:25:18 +01:00
Øyvind Kolås e30cdddeb0 app: include gegl-plugin.h in gimpdrawable.c
GimpDrawable uses gegl_operation_invalidate () which is part of the
plug-in/operation API, not the core GEGL API.
2010-03-17 22:26:40 +00:00
Alexia Death 3607a73744 app: Make sure outline and brush transform use the same kind of matrix 2010-03-17 19:49:21 +02:00
Alexia Death 336de7935f app: Add dynamics to airbrush Flow 2010-03-14 19:09:55 +02:00
Alexia Death f1a1114ed7 app: Order dynamics in editor a bit more sensibly 2010-03-14 18:12:24 +02:00
Alexia Death 5fda650281 app: Support for wheel input found in highend wacom tablets&tools 2010-03-09 22:23:44 +02:00
Alexia Death 20d77451fd app: Fix brush tools behavior at very small scale values
Tiny scale value now results in no stamp.
2010-03-07 15:56:38 +02:00
Michael Natterer 6650693d29 app: move gimp_image_pick_layer() to its own file
and add a (still unused) text layer picking function.
2010-03-07 01:55:31 +01:00
Aurimas Juška 73b86bd9c9 app: Fix GimpTag reference handling 2010-03-03 23:35:20 +02:00
Michael Natterer e9abde75ee app: if there is no "text", generate the layer name from "markup"
Add gimp_markup_extract_text() which does just what it says (includes
code stolen from gmarkup.c), and use it if the layer's text object
doesn't have any text set.
2010-03-02 21:19:57 +01:00
Alexia Death 15081a3a73 app: Make catmul-rom coords intepolation clamp pressure 2010-02-24 02:15:50 +02:00
Michael Natterer 7ea07c884b app: some code cleanup
- move curve creation and signal connection to a utility function
- formatting cleanup
2010-02-23 20:59:10 +01:00
Alexia Death ced0c1af79 app: Fix some code ugliness intoduced by my last commit 2010-02-23 21:16:35 +02:00
Alexia Death 0e1715fae2 app: Make the curve changes have immedate effect and have a working curve 2010-02-23 20:16:28 +02:00
Alexia Death 3a8c234261 app: Make all inputs for an output respect curves 2010-02-23 17:41:01 +02:00
Alexia Death 902e49fcc8 app: Make dynamics output curve getting work right. 2010-02-23 17:41:01 +02:00
rubikcube 62c0472ca5 Bug 600316 - Animated brushes, angle calculation
This was just a small bug in the angle->index calculation.
2010-02-23 14:32:24 +01:00
Alexia Death bdf4269e30 app: Add props for curves 2010-02-22 20:34:11 +02:00
Michael Natterer 652c6756c4 app: cosmetic cleanups in the new dynamics stuff in core/ 2010-02-22 08:53:50 +01:00
Alexia Death 468b30b585 app: Add type for dynamics output 2010-02-22 01:00:16 +02:00
Michael Natterer 0908e53148 app: use the new unit conversion functions
and get rid of the brainfuck idea that app/ has to use _gimp_unit_foo()
functions, passing a gimp pointer. Instead, simply use the libgimpbase
API all over the place. Should we ever allow more than one gimp instance,
they will simply have to share one unit database.
2010-02-21 16:46:39 +01:00
Michael Natterer 592fce0f7b app: properly implement GimpData::duplicate() 2010-02-16 19:58:06 +01:00
Michael Natterer 12aa801441 app: protect against calling a subclass' GimpItem::get_node() impl directly
gimp_drawable_get_mode_node() was calling gimp_drawable_get_node()
instead of gimp_item_get_node() if the mode_node didn't already exist.
Fortunately that was never the case i nthe current code. Added
warnings in the GimpItem::get_node() impls that would go off in such a
situation.
2010-02-14 20:26:16 +01:00
Michael Natterer 5f46061830 app: add gimp_item_peek_node() and use it
so we can avoid peeking into the GimpItem struct if we want to get to
the item's node without implicitly creating it if it doesn't already
exist.
2010-02-14 13:55:45 +01:00
Michael Natterer f9cb5fbc10 app: derive GimpContext from GimpViewable instead of GimpObject
because the device info container wants to be displayed in a container
view soon. Also we are about to get lists of tool presets and stuff,
which are also contexts.
2010-02-13 15:04:32 +01:00
Michael Natterer c4562c5a93 core: use g_param_spec_boxed() for tile managers, not g_param_spec_pointer() 2010-02-10 12:42:30 +01:00
Michael Natterer 8afdbd8053 Let gimp_item_tree_get_insert_pos() return a boolean indicating success
and move more precondition checks there. Remove lots and lots of
checks from all its callers and simply bail out if it returns FALSE.
2010-02-09 22:32:54 +01:00