Commit graph

28279 commits

Author SHA1 Message Date
Martin Nordholts c87af702b1 configure.ac: Require libpoppler 0.6.0
Require libpoppler 0.6.0 for poppler_document_new_from_data().
2010-10-03 10:18:24 +02:00
Martin Nordholts 5275270b36 build/buildbot: Supress AM_PROG_LIBTOOL warning with autoconf 2.68 2010-10-03 08:48:45 +02:00
Martin Nordholts 01e6f57354 Use AC_CONF_PROGRAM in AC_COMPILE_IFELSE to silence autoconf 2.68 2010-10-03 08:48:45 +02:00
Michael Natterer 96df3c2a08 app: formatting 2010-10-03 02:39:04 +02:00
Michael Natterer 0b4bb51750 app: need to actually set the extents of the pen, not only calculate them 2010-10-03 02:31:54 +02:00
Michael Natterer f3450431a3 app: add a pen canvas item class and use it in the foreground select tool
Remove gimp_display_shell_draw_pen().
2010-10-03 02:26:40 +02:00
Michael Natterer ff6d0f36b3 app: remove obsolete include 2010-10-03 02:25:53 +02:00
Michael Natterer ba6aa8258e app: implement the "points" property using GimpArray
instead of poking into private from new(). This way the item is
properly subclassable.
2010-10-03 01:43:22 +02:00
Michael Natterer dbce9d49d9 app: fix scrolling in of dashed lines
Before, the pattern offset was always relative to the widget, which
completely destroyed the stipples when the got scrolled in. Now we
simply set the shell's scroll offsets as cairo translation and
everything looks perfect.
2010-10-03 00:52:46 +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 dd4f27ed4f app: remove gimp_display_shell_set_cursor_style() 2010-10-02 22:11:52 +02:00
Michael Natterer 7ffa463273 app: remove obsolete includes 2010-10-02 22:07:31 +02:00
Michael Natterer 1d45f6295e app: add a software cursor canvas item
and use it to draw the sw cursor. Almost every aspect of the old code
was ugly and hard to read, this is so much nicer...
2010-10-02 21:56:36 +02:00
Michael Natterer cfa17dc744 app: fix last fix for the region leak...
The fix was bogusly destroying a region that is still needed
for the last end_change() if the change count is > 1.
2010-10-02 21:52:42 +02:00
Michael Natterer cad95533dd app: queue a draw on the canvas in gimp_canvas_set_bg_color()
Instead of doing it in gimp_display_shell_set_padding() from where
it's called.
2010-10-02 21:13:31 +02:00
Michael Natterer 502d7c815b app: add a canvas grid item class and use it to draw the grid
Remove gimp_display_shell_draw_grid().
2010-10-02 20:57:40 +02:00
Michael Natterer 2731a9c7b9 app: manage the stroking/filling state of child items correctly in all cases
It was correct only for the currently existing use cases.
2010-10-02 19:58:35 +02:00
Michael Natterer b392ae6515 app: don't leak the changed region in gimp_canvas_item_end_change() 2010-10-02 19:57:41 +02:00
Michael Natterer 7dbaf348c5 app: fix gimp_text_buffer_get_color_tag()
Change the generated tag names to use #rrggbb notation and compare the
colors on an 8 bit basis to make sure the comparison and the tag names
exist in the same set of values (otherwise the text buffer gets into
an inconsistent state that can even lead to crashes).
2010-10-02 19:53:39 +02:00
Michael Natterer 68b380fa4e app: forgot to check for "color_differs" for breaking out of a loop
Shouldn't change anything, just be slightly faster in some cases.
2010-10-02 19:51:49 +02:00
Michael Natterer d6f343943b app: fix text cursor extents so it doesn't leave artifacts 2010-10-02 19:49:59 +02:00
Michael Natterer 10111126ae app: add a "visible" property and API to GimpCanvasItem
and use it to set visibility of guides and sample points, so this
reression is fixed.

- return NULL extents for invisible items and never draw them
- do nothing for invisible items in more places, like the group

While hacking this, it turned out that it was a braino to collect an
item's region before and after a change in
dispatch_properties_changed(), so a new update had to be devised:

- add a "change count" and new API begin_change()/end_change()
- in begin_change(), remember the item's extents before the change
- in end_change(), combine old and current extents and emit "update"
- add some protected function to emit "update", and to figure if
  it makes sense at all to emit "update" on an item.
2010-10-01 20:41:27 +02:00
Michael Natterer f0d01f611c app: don't bother to emit an "update" region if no handler is connected
because constructing the region can be expensive. Also make sure not
to use g_object_set() if nothing would change to further reduce
"update" emissions.
2010-10-01 17:43:41 +02:00
Michael Natterer d9cd9f8a07 app: add an "update" signal to GimpCanvasItem
which gets emitted when the item wants to be redrawn:

- Emit "update" it when any item property changes
- Groups connect to their children and forward "update" for them
- The shell connects to its group of canvas items and exposed
  the affected area
- Remove gimp_display_shell_expose_item()
- Move all the shell's item group code into gimpdisplayshell-items.c
2010-10-01 17:13:00 +02:00
Michael Natterer d3f19baf0d app: remove "shell" parameter from GimpCanvasItem's public APIs
because each item has a shell now. Keep the parameter in the virtual
functions though because that saves a lot of code in the subclasses.
2010-10-01 14:54:53 +02:00
Michael Natterer 33ab94517f app: add gimp_draw_tool_add_stroke_group() and add_fill_group()
and use it in all tools which have groups.
2010-10-01 14:24:46 +02:00
Michael Natterer 201bfe3e25 app: add a "shell" property to GimpCanvasItem
and pass it to all constructors. The GimpDisplayShell is needed
because items are going to become more powerful soon.
2010-10-01 14:13:45 +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 3b4f2ec94c app: add a GimpCanvasProxyGroup that will be used for guides 2010-10-01 10:33:39 +02:00
Michael Natterer 07051535da app: remove GimpImage signal "update-sample-point" 2010-10-01 09:27:57 +02:00
Michael Natterer 6a2785173d app: port GimpSamplePointEditor to the "sample-point-moved" signal 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 0f73269484 app: remove "item" parameter from gimp_canvas_proxy_group_remove_item() 2010-10-01 09:27:57 +02:00
Michael Natterer 75b4c8096f app: add a proxy group which will keep sample point canvas items 2010-10-01 09:27:57 +02:00
Michael Natterer f6314b4896 app: add GimpCanvasProxyGroup
which is a group that keeps a mapping between arbitrary pointers and
canvas items. No MVC whatsoever yet, just a simple hash table.
2010-10-01 09:27:57 +02:00
Gil Forcada 36ee0a7367 Updated Catalan translation 2010-09-30 23:55:11 +02:00
Sven Neumann ec5fa2fb26 plug-ins: unify handling of return values
For consistency Use a static GParam array for the return values
in all plug-ins.
2010-09-30 22:46:30 +02:00
Mukund Sivaraman cad6ba9b94 Make values static to avoid returning bogus ptr
God knows how many other plug-ins have this.
2010-09-30 23:14:56 +05:30
Mukund Sivaraman 14f9074675 Remove unused code 2010-09-30 23:01:33 +05:30
Michael Natterer bab2c37f48 app: don't include "core/gimpsamplepoint.h" 2010-09-30 13:28:04 +02:00
Sven Neumann 2a67bfcb10 app: document the new display title option 2010-09-30 10:14:43 +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
Mukund Sivaraman f03cf53e0c Convert tabs to spaces in last commit 2010-09-30 12:54:26 +05:30
Mukund Sivaraman fee8f4008e Avoid overflow in expression 2010-09-30 12:47:19 +05:30
Michael Natterer ad331d5626 app: minor cleanup in gimp_display_shell_expose_item() 2010-09-30 09:05:55 +02:00
Michael Natterer 7f1cadddd0 app: use temporary canvas items for exposing guides and sample points
and remove gimp_display_shell_expose_guide() and _sample_point().
2010-09-30 09:02:36 +02:00
Bogdan Szczurek aa47dd22f0 app: Support 'M' for 'megapixels' in image title format string 2010-09-30 08:07:20 +02:00
Michael Natterer 2ced18cc87 app: add gimp_draw_tool_add_sample_point()
and use it in the color tool. Also rename
gimp_draw_tool_add_guide_line() to gimp_draw_tool_add_guide().
2010-09-30 02:03:16 +02:00
Michael Natterer cbd1d8cd51 app: remove gimp_display_shell_draw_sample_point()
and draw all sample points in gimp_display_shell_draw_sample_points().
2010-09-30 01:37:28 +02:00