Code

remove many unnecessary to_2geom and from_2geom calls
[inkscape.git] / src / dialogs / stroke-style.cpp
index 9dc7131fcb15843bc3d775fa28e57aaf9d1184d0..373ee5832e43583ea01fd3c8b74df06092da6077 100644 (file)
@@ -134,9 +134,8 @@ sp_stroke_style_paint_widget_new(void)
  * On construction, simply does an update of the stroke style paint object.
  */
 static void
-sp_stroke_style_paint_construct(SPWidget *spw, SPPaintSelector *psel)
+sp_stroke_style_paint_construct(SPWidget *spw, SPPaintSelector */*psel*/)
 {
-    (void)psel;
 #ifdef SP_SS_VERBOSE
     g_print( "Stroke style widget constructed: inkscape %p repr %p\n",
              spw->inkscape, spw->repr );
@@ -150,12 +149,11 @@ sp_stroke_style_paint_construct(SPWidget *spw, SPPaintSelector *psel)
  * On signal modified, invokes an update of the stroke style paint object.
  */
 static void
-sp_stroke_style_paint_selection_modified ( SPWidget *spw,
-                                        Inkscape::Selection *selection,
-                                        guint flags,
-                                        SPPaintSelector *psel)
+sp_stroke_style_paint_selection_modified( SPWidget *spw,
+                                          Inkscape::Selection */*selection*/,
+                                          guint flags,
+                                          SPPaintSelector */*psel*/ )
 {
-    (void)selection;
     if (flags & ( SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_PARENT_MODIFIED_FLAG |
                   SP_OBJECT_STYLE_MODIFIED_FLAG) ) {
         sp_stroke_style_paint_update(spw);
@@ -167,11 +165,10 @@ sp_stroke_style_paint_selection_modified ( SPWidget *spw,
  * On signal selection changed, invokes an update of the stroke style paint object.
  */
 static void
-sp_stroke_style_paint_selection_changed ( SPWidget *spw,
-                                        Inkscape::Selection *selection,
-                                        SPPaintSelector *psel )
+sp_stroke_style_paint_selection_changed( SPWidget *spw,
+                                         Inkscape::Selection */*selection*/,
+                                         SPPaintSelector */*psel*/ )
 {
-    (void)selection;
     sp_stroke_style_paint_update (spw);
 }
 
@@ -180,11 +177,10 @@ sp_stroke_style_paint_selection_changed ( SPWidget *spw,
  * On signal change subselection, invoke an update of the stroke style widget.
  */
 static void
-sp_stroke_style_widget_change_subselection ( Inkscape::Application *inkscape,
-                                        SPDesktop *desktop,
-                                        SPWidget *spw )
+sp_stroke_style_widget_change_subselection( Inkscape::Application */*inkscape*/,
+                                            SPDesktop */*desktop*/,
+                                            SPWidget *spw )
 {
-    (void)inkscape;
     sp_stroke_style_paint_update (spw);
 }
 
@@ -248,10 +244,7 @@ sp_stroke_style_paint_update (SPWidget *spw)
                     sp_update_pattern_list (psel, pat);
                 }
             } else if (query->stroke.set && query->stroke.isColor()) {
-                gfloat d[3];
-                sp_color_get_rgb_floatv (&query->stroke.value.color, d);
-                SPColor color( d[0], d[1], d[2] );
-                sp_paint_selector_set_color_alpha (psel, &color, SP_SCALE24_TO_FLOAT (query->stroke_opacity.value));
+                sp_paint_selector_set_color_alpha (psel, &query->stroke.value.color, SP_SCALE24_TO_FLOAT (query->stroke_opacity.value));
 
             }
             break;
@@ -274,10 +267,9 @@ sp_stroke_style_paint_update (SPWidget *spw)
  */
 static void
 sp_stroke_style_paint_mode_changed( SPPaintSelector *psel,
-                                    SPPaintSelectorMode mode,
+                                    SPPaintSelectorMode /*mode*/,
                                     SPWidget *spw )
 {
-    (void)mode;
     if (gtk_object_get_data(GTK_OBJECT(spw), "update")) {
         return;
     }
@@ -289,9 +281,9 @@ sp_stroke_style_paint_mode_changed( SPPaintSelector *psel,
     sp_stroke_style_paint_changed(psel, spw);
 }
 
-static gchar *undo_label_1 = "stroke:flatcolor:1";
-static gchar *undo_label_2 = "stroke:flatcolor:2";
-static gchar *undo_label = undo_label_1;
+static gchar const *const undo_label_1 = "stroke:flatcolor:1";
+static gchar const *const undo_label_2 = "stroke:flatcolor:2";
+static gchar const *undo_label = undo_label_1;
 
 /**
  * When a drag callback occurs on a paint selector object, if it is a RGB or CMYK
@@ -571,13 +563,10 @@ sp_stroke_radio_button(GtkWidget *tb, char const *icon,
 }
 
 static void
-sp_stroke_style_widget_transientize_callback(Inkscape::Application *inkscape,
-                                        SPDesktop *desktop,
-                                        SPWidget *spw )
+sp_stroke_style_widget_transientize_callback(Inkscape::Application */*inkscape*/,
+                                             SPDesktop */*desktop*/,
+                                             SPWidget */*spw*/ )
 {
-    (void)inkscape;
-    (void)desktop;
-    (void)spw;
 // TODO:  Either of these will cause crashes sometimes
 //    sp_stroke_style_line_update( SP_WIDGET(spw), desktop ? sp_desktop_selection(desktop) : NULL);
 //    ink_markers_menu_update(spw);
@@ -591,10 +580,8 @@ sp_stroke_style_widget_transientize_callback(Inkscape::Application *inkscape,
 static GtkWidget *
 sp_marker_prev_new(unsigned psize, gchar const *mname,
                    SPDocument *source, SPDocument *sandbox,
-                   gchar *menu_id, NRArena const *arena, unsigned visionkey, NRArenaItem *root)
+                   gchar const *menu_id, NRArena const */*arena*/, unsigned /*visionkey*/, NRArenaItem *root)
 {
-    (void)arena;
-    (void)visionkey;
     // Retrieve the marker named 'mname' from the source SVG document
     SPObject const *marker = source->getObjectById(mname);
     if (marker == NULL)
@@ -614,7 +601,7 @@ sp_marker_prev_new(unsigned psize, gchar const *mname,
     Inkscape::GC::release(mrepr);
 
 // Uncomment this to get the sandbox documents saved (useful for debugging)
-    //FILE *fp = fopen (g_strconcat(mname, ".svg", NULL), "w");
+    //FILE *fp = fopen (g_strconcat(menu_id, mname, ".svg", NULL), "w");
     //sp_repr_save_stream (sp_document_repr_doc (sandbox), fp);
     //fclose (fp);
 
@@ -627,8 +614,8 @@ sp_marker_prev_new(unsigned psize, gchar const *mname,
         return NULL; // sandbox broken?
 
     // Find object's bbox in document
-    NR::Matrix const i2doc(sp_item_i2doc_affine(SP_ITEM(object)));
-    NR::Maybe<NR::Rect> dbox = SP_ITEM(object)->getBounds(i2doc);
+    Geom::Matrix const i2doc(sp_item_i2doc_affine(SP_ITEM(object)));
+    boost::optional<NR::Rect> dbox = SP_ITEM(object)->getBounds(i2doc);
 
     if (!dbox) {
         return NULL;
@@ -638,11 +625,13 @@ sp_marker_prev_new(unsigned psize, gchar const *mname,
     double sf = 0.8;
     GdkPixbuf* pixbuf = NULL;
 
-    Glib::ustring key = svg_preview_cache.cache_key(source->uri, mname, psize);
+    gchar *cache_name = g_strconcat(menu_id, mname, NULL);
+    Glib::ustring key = svg_preview_cache.cache_key(source->uri, cache_name, psize);
+    g_free (cache_name);
     pixbuf = svg_preview_cache.get_preview_from_cache(key);
 
     if (pixbuf == NULL) {
-        pixbuf = render_pixbuf(root, sf, *dbox, psize);
+        pixbuf = render_pixbuf(root, sf, to_2geom(*dbox), psize);
         svg_preview_cache.set_preview_in_cache(key, pixbuf);
     }
 
@@ -682,7 +671,7 @@ ink_marker_list_get (SPDocument *source)
  * Adds previews of markers in marker_list to the given menu widget
  */
 static void
-sp_marker_menu_build (GtkWidget *m, GSList *marker_list, SPDocument *source, SPDocument *sandbox, gchar *menu_id)
+sp_marker_menu_build (GtkWidget *m, GSList *marker_list, SPDocument *source, SPDocument *sandbox, gchar const *menu_id)
 {
     // Do this here, outside of loop, to speed up preview generation:
     NRArena const *arena = NRArena::create();
@@ -733,10 +722,8 @@ sp_marker_menu_build (GtkWidget *m, GSList *marker_list, SPDocument *source, SPD
  *
  */
 static void
-sp_marker_list_from_doc (GtkWidget *m, SPDocument *current_doc, SPDocument *source, SPDocument *markers_doc, SPDocument *sandbox, gchar *menu_id)
+sp_marker_list_from_doc (GtkWidget *m, SPDocument */*current_doc*/, SPDocument *source, SPDocument */*markers_doc*/, SPDocument *sandbox, gchar const *menu_id)
 {
-    (void)current_doc;
-    (void)markers_doc;
     GSList *ml = ink_marker_list_get(source);
     GSList *clean_ml = NULL;
 
@@ -790,7 +777,7 @@ gchar const *buffer = "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:sodipodi=
 }
 
 static void
-ink_marker_menu_create_menu(GtkWidget *m, gchar *menu_id, SPDocument *doc, SPDocument *sandbox)
+ink_marker_menu_create_menu(GtkWidget *m, gchar const *menu_id, SPDocument *doc, SPDocument *sandbox)
 {
     static SPDocument *markers_doc = NULL;
 
@@ -845,9 +832,8 @@ ink_marker_menu_create_menu(GtkWidget *m, gchar *menu_id, SPDocument *doc, SPDoc
  * Creates a menu widget to display markers from markers.svg
  */
 static GtkWidget *
-ink_marker_menu( GtkWidget *tbl, gchar *menu_id, SPDocument *sandbox)
+ink_marker_menu( GtkWidget */*tbl*/, gchar const *menu_id, SPDocument *sandbox)
 {
-    (void)tbl;
     SPDesktop *desktop = inkscape_active_desktop();
     SPDocument *doc = sp_desktop_document(desktop);
     GtkWidget *mnu = gtk_option_menu_new();
@@ -870,7 +856,7 @@ ink_marker_menu( GtkWidget *tbl, gchar *menu_id, SPDocument *sandbox)
         gtk_widget_set_sensitive(mnu, TRUE);
     }
 
-    gtk_object_set_data(GTK_OBJECT(mnu), "menu_id", menu_id);
+    gtk_object_set_data(GTK_OBJECT(mnu), "menu_id", const_cast<gchar *>(menu_id));
     gtk_option_menu_set_menu(GTK_OPTION_MENU(mnu), m);
 
     /* Set history */
@@ -906,7 +892,7 @@ sp_marker_select(GtkOptionMenu *mnu, GtkWidget *spw)
     }
     gchar *markid = (gchar *) g_object_get_data(G_OBJECT(gtk_menu_get_active(GTK_MENU(gtk_option_menu_get_menu(mnu)))),
                                                 "marker");
-    gchar *marker = "";
+    gchar const *marker = "";
     if (strcmp(markid, "none")){
        gchar *stockid = (gchar *) g_object_get_data(G_OBJECT(gtk_menu_get_active(GTK_MENU(gtk_option_menu_get_menu(mnu)))),
                                                 "stockid");
@@ -923,7 +909,7 @@ sp_marker_select(GtkOptionMenu *mnu, GtkWidget *spw)
     }
 
     SPCSSAttr *css = sp_repr_css_attr_new();
-    gchar *menu_id = (gchar *) g_object_get_data(G_OBJECT(mnu), "menu_id");
+    gchar const *menu_id = (gchar const *) g_object_get_data(G_OBJECT(mnu), "menu_id");
     sp_repr_css_set_property(css, menu_id, marker);
 
     // Also update the marker dropdown menus, so the document's markers
@@ -953,18 +939,18 @@ sp_marker_select(GtkOptionMenu *mnu, GtkWidget *spw)
 };
 
 static int
-ink_marker_menu_get_pos(GtkMenu* mnu, gchar* markname) {
-
+ink_marker_menu_get_pos(GtkMenu *mnu, gchar const *markname)
+{
     if (markname == NULL)
-        markname = (gchar *) g_object_get_data(G_OBJECT(gtk_menu_get_active(mnu)), "marker");
+        markname = (gchar const *) g_object_get_data(G_OBJECT(gtk_menu_get_active(mnu)), "marker");
 
     if (markname == NULL)
         return 0;
 
-    GList *kids = GTK_MENU_SHELL(mnu)->children;
+    GList const *kids = GTK_MENU_SHELL(mnu)->children;
     int i = 0;
     for (; kids != NULL; kids = kids->next) {
-        gchar *mark = (gchar *) g_object_get_data(G_OBJECT(kids->data), "marker");
+        gchar const *mark = (gchar const *) g_object_get_data(G_OBJECT(kids->data), "marker");
         if ( mark && strcmp(mark, markname) == 0 ) {
             break;
         }
@@ -1302,9 +1288,8 @@ sp_stroke_style_line_widget_new(void)
  * the stroke line style to be updated.
  */
 static void
-sp_stroke_style_line_construct(SPWidget *spw, gpointer data)
+sp_stroke_style_line_construct(SPWidget *spw, gpointer /*data*/)
 {
-    (void)data;
 #ifdef SP_SS_VERBOSE
     g_print( "Stroke style widget constructed: inkscape %p repr %p\n",
              spw->inkscape, spw->repr );
@@ -1322,12 +1307,11 @@ sp_stroke_style_line_construct(SPWidget *spw, gpointer data)
  * Triggers update action.
  */
 static void
-sp_stroke_style_line_selection_modified ( SPWidget *spw,
-                                       Inkscape::Selection *selection,
-                                       guint flags,
-                                       gpointer data )
+sp_stroke_style_line_selection_modified( SPWidget *spw,
+                                         Inkscape::Selection *selection,
+                                         guint flags,
+                                         gpointer /*data*/ )
 {
-    (void)data;
     if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_PARENT_MODIFIED_FLAG)) {
         sp_stroke_style_line_update (spw, selection);
     }
@@ -1339,11 +1323,10 @@ sp_stroke_style_line_selection_modified ( SPWidget *spw,
  * Triggers update action.
  */
 static void
-sp_stroke_style_line_selection_changed ( SPWidget *spw,
-                                       Inkscape::Selection *selection,
-                                       gpointer data )
+sp_stroke_style_line_selection_changed( SPWidget *spw,
+                                        Inkscape::Selection *selection,
+                                        gpointer /*data*/ )
 {
-    (void)data;
     sp_stroke_style_line_update (spw, selection);
 }
 
@@ -1630,9 +1613,8 @@ sp_stroke_style_scale_line(SPWidget *spw)
  * Causes all line styles to be applied to all selected items.
  */
 static void
-sp_stroke_style_width_changed(GtkAdjustment *adj, SPWidget *spw)
+sp_stroke_style_width_changed(GtkAdjustment */*adj*/, SPWidget *spw)
 {
-    (void)adj;
     if (gtk_object_get_data(GTK_OBJECT(spw), "update")) {
         return;
     }
@@ -1645,9 +1627,8 @@ sp_stroke_style_width_changed(GtkAdjustment *adj, SPWidget *spw)
  * Causes all line styles to be applied to all selected items.
  */
 static void
-sp_stroke_style_miterlimit_changed(GtkAdjustment *adj, SPWidget *spw)
+sp_stroke_style_miterlimit_changed(GtkAdjustment */*adj*/, SPWidget *spw)
 {
-    (void)adj;
     if (gtk_object_get_data(GTK_OBJECT(spw), "update")) {
         return;
     }
@@ -1660,9 +1641,8 @@ sp_stroke_style_miterlimit_changed(GtkAdjustment *adj, SPWidget *spw)
  * Causes all line styles to be applied to all selected items.
  */
 static void
-sp_stroke_style_line_dash_changed(SPDashSelector *dsel, SPWidget *spw)
+sp_stroke_style_line_dash_changed(SPDashSelector */*dsel*/, SPWidget *spw)
 {
-    (void)dsel;
     if (gtk_object_get_data(GTK_OBJECT(spw), "update")) {
         return;
     }