X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Ftweak-context.cpp;h=13299b5a4004fef123cb90f05cc659879cd7ca24;hb=99f8079bc0a32aef279e4af06de4cbf4bd853563;hp=3cc26393b958f73cf55bc62408b13f0dc8ac753c;hpb=aaad24af78ccaa6eb2b855e3eda021755632ed48;p=inkscape.git diff --git a/src/tweak-context.cpp b/src/tweak-context.cpp index 3cc26393b..13299b5a4 100644 --- a/src/tweak-context.cpp +++ b/src/tweak-context.cpp @@ -21,7 +21,6 @@ #include "svg/svg.h" #include "display/canvas-bpath.h" -#include "display/bezier-utils.h" #include #include "macros.h" @@ -30,7 +29,6 @@ #include "desktop.h" #include "desktop-events.h" #include "desktop-handles.h" -#include "desktop-affine.h" #include "desktop-style.h" #include "message-context.h" #include "pixmaps/cursor-tweak-move.xpm" @@ -57,7 +55,6 @@ #include "path-chemistry.h" #include "sp-gradient.h" #include "sp-stop.h" -#include "sp-stop-fns.h" #include "sp-gradient-reference.h" #include "sp-linear-gradient.h" #include "sp-radial-gradient.h" @@ -210,23 +207,27 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) switch (tc->mode) { case TWEAK_MODE_MOVE: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to move."), sel_message); - break; event_context->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_MOVE_IN_OUT: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move in; with Shift to move out."), sel_message); + event_context->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_MOVE_JITTER: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move randomly."), sel_message); + event_context->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_SCALE: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to scale down; with Shift to scale up."), sel_message); + event_context->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_ROTATE: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to rotate clockwise; with Shift, counterclockwise."), sel_message); + event_context->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_MORELESS: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to duplicate; with Shift, delete."), sel_message); + event_context->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_PUSH: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to push paths."), sel_message); @@ -254,6 +255,7 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) break; case TWEAK_MODE_COLORPAINT: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to paint objects with color."), sel_message); + event_context->cursor_shape = cursor_color_xpm; break; case TWEAK_MODE_COLORJITTER: tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to randomize colors."), sel_message); @@ -422,13 +424,21 @@ sp_tweak_dilate_recursive (Inkscape::Selection *selection, SPItem *item, Geom::P } if (SP_IS_GROUP(item) && !SP_IS_BOX3D(item)) { + GSList *children = NULL; for (SPObject *child = sp_object_first_child(SP_OBJECT(item)) ; child != NULL; child = SP_OBJECT_NEXT(child) ) { if (SP_IS_ITEM(child)) { - if (sp_tweak_dilate_recursive (selection, SP_ITEM(child), p, vector, mode, radius, force, fidelity, reverse)) - did = true; + children = g_slist_prepend(children, child); } } + for (GSList *i = children; i; i = i->next) { + SPItem *child = SP_ITEM(i->data); + if (sp_tweak_dilate_recursive (selection, SP_ITEM(child), p, vector, mode, radius, force, fidelity, reverse)) + did = true; + } + + g_slist_free(children); + } else { if (mode == TWEAK_MODE_MOVE) { @@ -526,6 +536,7 @@ sp_tweak_dilate_recursive (Inkscape::Selection *selection, SPItem *item, Geom::P } Inkscape::GC::release(copy); } + did = true; } } }