Code

Add missing selection cue option to preferences for tweak, calligraphy, and paint...
[inkscape.git] / src / tweak-context.cpp
index a66f766cfcb2ea1e0bab2f98cf576b725850594f..09e13f1fc21a7e37f954690160c246d6c8c25f79 100644 (file)
@@ -71,6 +71,7 @@
 #include "isnan.h"
 #include "prefs-utils.h"
 #include "style.h"
+#include "box3d.h"
 
 #include "tweak-context.h"
 
@@ -263,6 +264,14 @@ sp_tweak_context_setup(SPEventContext *ec)
     tc->style_set_connection = ec->desktop->connectSetStyle( // catch style-setting signal in this tool
         sigc::bind(sigc::ptr_fun(&sp_tweak_context_style_set), tc)
     );
+
+    if (prefs_get_int_attribute("tools.tweak", "selcue", 0) != 0) {
+        ec->enableSelectionCue();
+    }
+
+    if (prefs_get_int_attribute("tools.tweak", "gradientdrag", 0) != 0) {
+        ec->enableGrDrag();
+    }
 }
 
 static void
@@ -835,6 +844,12 @@ sp_tweak_dilate (SPTweakContext *tc, NR::Point event_p, NR::Point p, NR::Point v
 
         SPItem *item = (SPItem *) items->data;
 
+        if (SP_IS_BOX3D(item)) {
+            // convert 3D boxes to ordinary groups before tweaking their shapes
+            item = SP_ITEM(box3d_convert_to_group(SP_BOX3D(item)));
+            selection->add(item);
+        }
+
         if (tc->mode == TWEAK_MODE_COLORPAINT || tc->mode == TWEAK_MODE_COLORJITTER) {
             if (do_fill || do_stroke || do_opacity) {
                 if (sp_tweak_color_recursive (tc->mode, item, item_at_point,