Commit Graph

14483 Commits

Author SHA1 Message Date
Michael Natterer 4a73ac6869 app: add a newline 2011-04-07 23:47:27 +02:00
Martin Nordholts 6b5e495841 app: Remove comments about cachelines in GimpDisplayShell
Remove comments about cachelines in GimpDisplayShell that no one cares
about in 2011.
2011-04-07 07:12:32 +02:00
Martin Nordholts 3b243bdcfe app: Add gimp_display_get_action_name() utility function 2011-04-07 07:12:32 +02:00
Mikael Magnusson b00cb3be79 Remove stray semicolon 2011-04-06 23:40:56 +02:00
Mikael Magnusson ac403ce11d Add a controller for binding mouse buttons 2011-04-06 23:35:14 +02:00
Michael Natterer 7fae1b3c50 app: update the tool's state after the wheel controller has handled the event 2011-04-06 22:50:20 +02:00
Michael Natterer febc1da4be app: ignore button 1 release if we have no pointer grab
which is more correct than the previous commit
2011-04-06 22:44:08 +02:00
Michael Natterer 14d30fd795 app: ignore button releases while another button's action is going on
- ignore button 1 release if we are button-2-scrolling
- ignore button 2 release if we are not button-2-scrolling
2011-04-06 22:30:44 +02:00
Michael Natterer 754d45c357 app: completely ignore focus change events while we have a grab
in order to be safe against whatever windowing system / event manager
depending event order. Also properly update the tool's state after a
button reelease, and after a space release.
2011-04-06 21:37:46 +02:00
Martin Nordholts 18286d29ec app/tests: Use gdk_window_get_display()
Use gdk_window_get_display() (available since GTK+ 2.24 which we now
depend on) and not gdk_drawable_get_display(), which is deprecated.
2011-04-06 21:05:24 +02:00
Michael Natterer cb6b821c70 app: tool_manager: correctly preserve tool state across a push/pop
tool_manager_select_tool(): don't reset the previously active tool if
it is only temporarily pushed to the tool stack.

tool_manager_pop_tool(): don't try to restore the previously active
tool's state because it was not reset on push().
2011-04-06 20:40:26 +02:00
Michael Natterer 9778b6a440 app: GimpEditSelectionTool: activate the tool *after* pushing it
because pushing sets its focus_display which is now only possible
while the a tool is not active.
2011-04-06 20:33:23 +02:00
Michael Natterer b659aec9a7 app: GimpMoveTool: activate the tool before starting GimpEditSelectionTool
Also halt it uncontitionally in button_release() because we can't
get there any longer if the tool isn't active.
2011-04-06 20:32:04 +02:00
Michael Natterer 24ee3370b8 Depend on GTK+ >= 2.24.3, cairo >= 1.20.1, gdk-pixbuf >= 2.22.1
and completely separate configure and sanity checks for gdk-pixbuf
from GTK+, because it's now distributed as a separate package. Remove
all sorts of conditional compiling based on GDK_CHECK_VERSION() and
CAIRO_VERSION.
2011-04-06 19:58:24 +02:00
Michael Natterer a83876040d app: make GimpBrushCache debug spew depend on GIMP_LOG=brush-cache 2011-04-06 09:15:50 +02:00
Michael Natterer 0315f483e6 app: some general GimpPaintCore cleanup 2011-04-06 09:11:25 +02:00
Mukund Sivaraman 5c55f8e897 app: Fix Alt+0 case when switching tabs 2011-04-06 11:58:58 +05:30
Mukund Sivaraman 110b3daa97 app: Make alt+[number] switch tabs in single-window mode 2011-04-06 11:52:10 +05:30
Michael Natterer 21b8007b29 app: add GimpBrushCache which stores brush stuff based on transform parameters
such as masks and outlines. The cache is currently very stupid and
only cacheds the last transformed object. Add caches to GimpBrush for
its mask, its pixmap and its boundary, and remove the same caches and
a ton of members from GimpBrushCore. This involves adding lots of
const qualifiers because GimpBrush returns const pointers now for
trasnformed stuff.
2011-04-05 22:15:30 +02:00
Michael Natterer 8d5ac2c780 app: make TempBuf parameter of temp_buf_get_data() const 2011-04-05 22:15:30 +02:00
Martin Nordholts 67755ab987 app/tests: Update include for gimp_display_shell_canvas_tool_events() 2011-04-05 22:04:25 +02:00
Michael Natterer e2226e9933 app: add gimp_brush_start_use() and gimp_brush_end_use()
and use them in GimpBrushCore when setting/unsetting a brush. They
will be used for managing some caches inside GimpBrush.
2011-04-05 19:18:26 +02:00
Michael Natterer c8c1b4ece6 app: remove gimp_brush_spacing_changed(), it should never have been public 2011-04-05 19:09:56 +02:00
Michael Natterer a50f668d87 app: GimpBrushCore: simplify brush and dynamics setting
by checking for an actual change in the setters. Remove the
"foo != core->foo" checks from all callers.
2011-04-05 19:05:55 +02:00
Michael Natterer 054957a1ee app: s/nbrushes/n_brushes/ in GimpBrushPipe 2011-04-05 15:16:06 +02:00
Michael Natterer 7db7cc111c app: clean up gimpbrush-boundary.c a bit and prepare for outline approximation 2011-04-05 14:52:44 +02:00
Michael Muré 7f6d06d3e9 cagetool: fix buffer leak 2011-04-05 10:18:07 +02:00
Michael Muré 2200b80033 cagetool: fix the restoration of the image when going back to edit mode 2011-04-05 00:05:56 +02:00
Michael Muré ec25c6be42 cage tool: fix transformed area going away when setting a cage,
going back to edit mode, edit the cage then going to deform mode
2011-04-05 00:05:56 +02:00
Michael Natterer eda5cdf666 app: add gimp_bezier_desc_new_from_bound_segs() to GimpBezierDesc
and remove that code from gimpbrush-boundary.c
2011-04-04 22:06:32 +02:00
Michael Natterer 46819a05da app: fix transformation in GimpCanvasPath 2011-04-04 21:41:46 +02:00
Michael Natterer d008fcd588 app: remove the entire brush boundary code from GimpBrushCore 2011-04-04 21:24:41 +02:00
Michael Natterer 647a576cd4 app: use the new brush boundary API in GimpBrushTool 2011-04-04 21:14:57 +02:00
Michael Natterer cf52b10e9b app: implement gimp_brush_transform_boundary()
There is infinite room for optimization, but the API and pixel-perfect
functionality is there, which is step one.
2011-04-04 21:11:39 +02:00
Michael Natterer 99e0e73fc6 app: add "x" and "y" properties to GimpCanvasPath
so paths can be rendered at any position. Pass 0,0 from all places
that draw GimpVectors.
2011-04-04 20:58:38 +02:00
Michael Natterer 9e1db5dc92 app: add empty stub gimp_brush_transform_boundary()
as a separate commit because it reindents the entire header.
2011-04-04 19:21:25 +02:00
Michael Natterer 7d39d800fc app: GimpColorTool and GimpMoveTool: don't start the draw tool twice
and some minor coding style cleanup.
2011-04-04 19:20:04 +02:00
Michael Natterer ac9b487795 app: fix GimpBrush transform parameter names and coding style 2011-04-04 18:57:48 +02:00
Michael Natterer 8b4870dad7 app: move GimpBezierDesc from app/vectors/ to app/core/ 2011-04-04 18:40:12 +02:00
Michael Natterer 492e0f9cfd app: some more mostly cosmetic tool cleanup 2011-04-04 08:19:12 +02:00
Michael Natterer 39fa147c17 app: unset GimpSpinScale's context sensitive cursor when the pointer leaves 2011-04-04 01:10:44 +02:00
Enrico Schröder d4316902a2 app: DodgeBurn/Convolve: Fix error in behavior of modifier keys
Fix for bug #632816: When holding shift key to go to LineDraw mode,
then pressing ctrl and releasing shift before ctrl, the release of
ctrl switches the function of DodgeBurn and Convolute tool. This patch
adds a variable to GimpDodgeBurnTool/GimpConvolveTool to only switch
said function on releasing ctrl when it has been toggled previously.
2011-04-04 00:38:01 +02:00
Michael Natterer 036c5aff73 app: constify "color" parameter in GimpColorTool::picked() 2011-04-04 00:08:57 +02:00
Michael Natterer ea34b145e8 app: some random tool cleanup 2011-04-04 00:01:30 +02:00
Michael Natterer 32c6177c1e app: gimp_canvas_sample_point_set(): x and y are integers not doubles 2011-04-03 23:42:26 +02:00
Michael Natterer 70e5cf57a1 app: move GimpColorPickerTool's shutdown code to control(HALT) 2011-04-03 23:33:07 +02:00
Michael Natterer 6d73eead54 app: emit "notify::tool-options" when GimpToolPreset's options change
Fixes the "dirty" state and thus saving of modified presets.
2011-04-03 19:34:31 +02:00
Michael Natterer fce5c7ea26 app: add "gboolean focus_in" to gimp_display_shell_update_focus()
and use it to update the tool's state also when the canvas gets a
FOCUS_OUT.
2011-04-03 19:02:19 +02:00
Michael Natterer 5a76519c88 app: call gimp_display_shell_update_focus() in more cases
instead of duplicating its functionality.
2011-04-03 18:52:24 +02:00
Michael Natterer a0641d73d6 app: remove the hackish "button_press_before_focus" from GimpDisplayShell
and simply *always* set the tool to the right state before sending it
a button_press. GimpTool's state setting functions are now smart
enough to simply ignore setting the same state again. When recieving a
FOCUS_IN, skip state setting when the pointer is grabbed, which is a
safe indicator for tool interaction going on. This hopefully fixes
states for both click-to-focus and focus-follows-mouse *and* fixes the
previously warning case where a new image was opened into an already
focussed canvas (the warning then happened on button press, and the
tool was in an inconsistent state).
2011-04-03 18:42:50 +02:00