Commit Graph

2184 Commits

Author SHA1 Message Date
ae9f6d1b3f app: remove the unused gimp_display_shell_expose_vectors() 2010-11-13 23:02:07 +01:00
5cea26b6e5 app: gimp_display_shell_expose_region(): return if the canvas is not realized
All GTK+ exposing functions do the same.
2010-11-13 22:58:43 +01:00
a9217d4233 app: set the grid canvas item invisible by default 2010-11-13 22:58:10 +01:00
e4532fe2a8 app: call gimp_canvas_item_begin,end_change() around passe partout changes
Also remove the "highlight" member from the GimpDisplayShell struct.
2010-11-12 20:18:03 +01:00
458230bf8d app: use a GimpCanvasPassePartout for drawing the crop highlight
and remove all old drawing logic.
2010-11-12 19:47:51 +01:00
cca8273f5e app: fix the canvas passe partout's extents 2010-11-12 19:45:01 +01:00
6bf13efbc8 app: use gimp_widget_flush_expose() for the statusbar's progress 2010-11-10 00:16:34 +01:00
cff73863c5 app: add GimpCanvasProgress, an on-canvas progress item 2010-11-09 19:35:04 +01:00
1541d8b666 app: make the shift-coordinates-by-anchor functions public API 2010-11-09 11:27:51 +01:00
b2a2e3200e app: derive GimpDisplayShell from GtkBox instead of GtkVBox
and avoid gtk_container_add() on boxes in some more plavces.
2010-10-30 15:12:20 +02:00
59a4e70b86 app: don't reserve a height for the statusbar label's icon
Reserve only a width. The height gets ignored by GTK+ 2.x and breaks
layout positioning in GTK+ 3.x which uses pango-cairo for all text
rendering.
2010-10-29 10:31:04 +02:00
8c65edcc55 app: make GimpScaleComboBox build with GTK+ >= 2.23.1 2010-10-26 16:40:41 +02:00
1e747cbb19 app: Update gimp_display_shell_transform_xy_f() gtk-doc
gimp_display_shell_transfrom_xy() is removed.
2010-10-26 14:22:53 +02:00
60d24b4c04 app: get rid of #ifdef USE_CAIRO_REGION almost everywhere
get replaced by GDK region functions and use the cairo region
functions unconditionally all over the place.
2010-10-22 19:58:11 +02:00
40797f1fd4 Bump down cairo version for USE_CAIRO_REGION 2010-10-22 22:45:59 +05:30
a798c9456c app/display: add new canvas item GimpCanvasPassePartout
This is supposed to replace the GimpDisplayShell highlight API,
but it is not yet used.
2010-10-18 22:17:27 +02:00
8c42c38c7e app: store the dialog's adjustments as GtkAdjustment pointers
instead of GtkObject ones and get rid of lots of casts.
2010-10-18 21:30:56 +02:00
0ad43df54e app: use the cairo_region_t hack in gimp_display_shell_set_highlight() 2010-10-18 20:25:02 +02:00
22db39afd2 app: fix incomplete earlier s/GtkAnchorType/GimpHandleAnchor/ change 2010-10-18 20:13:09 +02:00
479082075b app: use cairo_region_t for canvas items if cairo >= 1.10 is available
This is a gross hack that typedefs around between GdkRegion and
cairo_region_t and has some evil #ifdefs. This is going to die
immeditately once we can depend on cairo 1.10.
2010-10-18 20:01:05 +02:00
5b64b83569 app: introduce enum GimpHandleAnchor as replacement for GtkAnchorType
because the latter is gone in GTK+ 3.0
2010-10-18 12:50:17 +02:00
dc39857238 app: add GimpSegment as replacement for GdkSegment 2010-10-15 12:37:36 +02:00
74458f46ee app/libgimpwidgets: move GimpUnitStore and GimpUnitComboBox to libgimpwidgets 2010-10-14 22:15:25 +02:00
f3c2a75e44 app: overwrite cursors can have negative widths in RTL text 2010-10-14 02:43:37 +02:00
c79deb40dd app: don't use a timeout for delaying display flushing
because it might never be called. Instead, check the time since
the last flush_now and make sure they are at least 20 ms apart.
2010-10-11 23:33:33 +02:00
be2037ce03 app: limit realtime image updates to about 50 fps
which increases responsiveness while painting quite a bit.
2010-10-11 22:49:10 +02:00
3de4d7263a app: Bug 631619 - Drawing artifacts spread by paintbrush outline on canvas
Add a transform matrix to GimpCanvasBoundary and get rid of the whole
BoundSeg transform code in boundary.c and gimpbrushcore.c, it was
impossible to get this right on that level. Also fix te extents of
GimpCanvasBoundary os it leaves no artifacts.
2010-10-09 22:00:19 +02:00
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
cc8c546ed0 app: turn "edit-mask" into a property of GimpCanvasLayerBoundary 2010-10-09 15:34:20 +02:00
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
71a50bc58a app: rename selection member "hidden" to "show_selection"
and invert its meaning. This has confused me long enough now...
2010-10-09 12:55:11 +02:00
0cae0f2fca app: rename selection member "visible" to "shell_visible" 2010-10-09 12:51:20 +02:00
6b8141d548 app: wrap GimpBezierDesc in a boxed type to make property handling easier 2010-10-08 18:52:28 +02:00
914ac9aa11 app: no need to cairo_save()/restore() around drawing a canvas item 2010-10-08 16:13:21 +02:00
b59196c245 app: set shell->vectors to NULL in gimp_display_shell_items_free() 2010-10-08 15:46:00 +02:00
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
0b078d3dad app: several GimpCanvasPath fixes
- fix get_extents()
- don't use cairo_path_destroy() for a path we allocated ourselves
- pass a const GimpBezierDesc to new()
2010-10-07 14:08:48 +02:00
149ba1ec4b app: add a path canvas item class based on cairo_path_t (GimpBezierDesc)
and use it in gimp_display_shell_draw_vectors().
2010-10-06 23:02:16 +02:00
cc7755f876 Port stuff to gimp_item_is_text_layer()
Port stuff to gimp_item_is_text_layer() instead of
gimp_drawable_is_text_layer(). Nevermind the previous commit, it
should never have been pushed...
2010-10-05 07:39:00 +02:00
49a0be731e app: s/gimp_drawable_is_text_layer/gimp_item_is_text_layer/g 2010-10-05 07:12:30 +02:00
b74811324a app: don't use PROJ_ROUND() for pixel-adjusting canvas item drawing
When PROJ_ROUND()ing e.g. 3.8, it ends up at 4, then we added the 0.5
offset to draw a nice cairo line in the middle of the pixel,
effectively drawing a line that's meant to be at 3.8 at 4.5.  Instead,
we now use floor(x)+0.5 now which snaps the above example to 3.5.

Also, calculate arcs like we calculate rectangles (transform the arc's
bounding box and pixel-align that, then recalculate the center), so
arcs properly align with rectangles.
2010-10-04 21:48:39 +02:00
d88a348c18 app: add public API for the "guide-style" and "sample-point-style" properties
of the guide and sample point canvas items. They are too obscure to
additionally hide them, and these items are used rarely enough to
justify the additional parameter to the new() functions.
2010-10-03 22:14:40 +02:00
96df3c2a08 app: formatting 2010-10-03 02:39:04 +02:00
0b4bb51750 app: need to actually set the extents of the pen, not only calculate them 2010-10-03 02:31:54 +02:00
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
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
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
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
dd4f27ed4f app: remove gimp_display_shell_set_cursor_style() 2010-10-02 22:11:52 +02:00
7ffa463273 app: remove obsolete includes 2010-10-02 22:07:31 +02:00