Code

handle the case of no filter primitives
[inkscape.git] / src / sp-namedview.cpp
index fe6b805bc9b4558dd2e47f5d4b144258a08f43ff..da95a8ab70449d9714719d334d15a3226ad46ee9 100644 (file)
@@ -230,6 +230,7 @@ static void sp_namedview_set(SPObject *object, unsigned int key, const gchar *va
             sp_namedview_setup_grid(nv);
             /* Disable grid snaps if the grid is turned off */
             nv->snap_manager.grid.setEnabled(nv->showgrid);
+            nv->snap_manager.axonomgrid.setEnabled(nv->showgrid);
             object->requestModified(SP_OBJECT_MODIFIED_FLAG);
             break;
        case SP_ATTR_GRIDTYPE:
@@ -459,10 +460,12 @@ static void sp_namedview_set(SPObject *object, unsigned int key, const gchar *va
             break;
        case SP_ATTR_INKSCAPE_GRID_BBOX:
             nv->snap_manager.grid.setSnapTo(Inkscape::Snapper::BBOX_POINT, value ? sp_str_to_bool(value) : TRUE);
+            nv->snap_manager.axonomgrid.setSnapTo(Inkscape::Snapper::BBOX_POINT, value ? sp_str_to_bool(value) : TRUE);
             object->requestModified(SP_OBJECT_MODIFIED_FLAG);
             break;
        case SP_ATTR_INKSCAPE_GRID_POINTS:
             nv->snap_manager.grid.setSnapTo(Inkscape::Snapper::SNAP_POINT, value ? sp_str_to_bool(value) : FALSE);
+            nv->snap_manager.axonomgrid.setSnapTo(Inkscape::Snapper::SNAP_POINT, value ? sp_str_to_bool(value) : FALSE);
             object->requestModified(SP_OBJECT_MODIFIED_FLAG);
             break;
        case SP_ATTR_INKSCAPE_GUIDE_BBOX:
@@ -848,28 +851,24 @@ static void sp_namedview_setup_grid_item(SPNamedView *nv, SPCanvasItem *item)
         sp_canvas_item_hide(item);
     }
     
+    sp_canvas_item_set((GtkObject *) item,
+                       "color", nv->gridcolor,
+                       "originx", nv->gridorigin[NR::X],
+                       "originy", nv->gridorigin[NR::Y],
+                       "spacingy", nv->gridspacing[NR::Y],
+                       "empcolor", nv->gridempcolor,
+                       "empspacing", nv->gridempspacing,
+                       NULL);
     if (!btype){
         // CGRID
         sp_canvas_item_set((GtkObject *) item,
-                           "color", nv->gridcolor,
-                           "originx", nv->gridorigin[NR::X],
-                           "originy", nv->gridorigin[NR::Y],
                            "spacingx", nv->gridspacing[NR::X],
-                           "spacingy", nv->gridspacing[NR::Y],
-                           "empcolor", nv->gridempcolor,
-                           "empspacing", nv->gridempspacing,
                            NULL);
     } else {
         // CAXONOMGRID
         sp_canvas_item_set((GtkObject *) item,
-                           "color", nv->gridcolor,
-                           "originx", nv->gridorigin[NR::X],
-                           "originy", nv->gridorigin[NR::Y],
-                           "spacingy", nv->gridspacing[NR::Y],
                            "anglex", nv->gridangle[0],
                            "anglez", nv->gridangle[1],
-                           "empcolor", nv->gridempcolor,
-                           "empspacing", nv->gridempspacing,
                            NULL);
     }
 }