index 44a2e87f824d2015977bb26d505cb7cc57721918..ddd9fd96a04ebe3befd53a8302fd7a8252c8db23 100644 (file)
#include "widgets/gradient-image.h"
#include "style.h"
-#include "prefs-utils.h"
+#include "preferences.h"
#include "document-private.h"
#include "desktop.h"
#include "desktop-handles.h"
#include "sp-radial-gradient.h"
#include "gradient-chemistry.h"
#include "selection.h"
+#include "ui/icon-names.h"
#include "toolbox.h"
//########################
static void gr_toggle_type (GtkWidget *button, gpointer data) {
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
GtkWidget *linear = (GtkWidget *) g_object_get_data (G_OBJECT(data), "linear");
GtkWidget *radial = (GtkWidget *) g_object_get_data (G_OBJECT(data), "radial");
if (button == linear && gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (linear))) {
- prefs_set_int_attribute ("tools.gradient", "newgradient", SP_GRADIENT_TYPE_LINEAR);
+ prefs->setInt("/tools/gradient/newgradient", SP_GRADIENT_TYPE_LINEAR);
if (radial) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radial), FALSE);
} else if (button == radial && gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radial))) {
- prefs_set_int_attribute ("tools.gradient", "newgradient", SP_GRADIENT_TYPE_RADIAL);
+ prefs->setInt("/tools/gradient/newgradient", SP_GRADIENT_TYPE_RADIAL);
if (linear) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (linear), FALSE);
}
}
static void gr_toggle_fillstroke (GtkWidget *button, gpointer data) {
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
GtkWidget *fill = (GtkWidget *) g_object_get_data (G_OBJECT(data), "fill");
GtkWidget *stroke = (GtkWidget *) g_object_get_data (G_OBJECT(data), "stroke");
if (button == fill && gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (fill))) {
- prefs_set_int_attribute ("tools.gradient", "newfillorstroke", 1);
+ prefs->setBool("/tools/gradient/newfillorstroke", true);
if (stroke) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (stroke), FALSE);
} else if (button == stroke && gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (stroke))) {
- prefs_set_int_attribute ("tools.gradient", "newfillorstroke", 0);
+ prefs->setBool("/tools/gradient/newfillorstroke", false);
if (fill) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (fill), FALSE);
}
}
void
gr_apply_gradient (Inkscape::Selection *selection, GrDrag *drag, SPGradient *gr)
{
- SPGradientType new_type = (SPGradientType) prefs_get_int_attribute ("tools.gradient", "newgradient", SP_GRADIENT_TYPE_LINEAR);
- guint new_fill = prefs_get_int_attribute ("tools.gradient", "newfillorstroke", 1);
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ SPGradientType new_type = (SPGradientType) prefs->getInt("/tools/gradient/newgradient", SP_GRADIENT_TYPE_LINEAR);
+ guint new_fill = prefs->getBool("/tools/gradient/newfillorstroke", true);
// GRADIENTFIXME: make this work for multiple selected draggers.
}
static void
-gr_tb_selection_modified (Inkscape::Selection *selection, guint flags, gpointer data)
+gr_tb_selection_modified (Inkscape::Selection *selection, guint /*flags*/, gpointer data)
{
gr_tb_selection_changed (selection, data);
}
static void
-gr_drag_selection_changed (gpointer dragger, gpointer data)
+gr_drag_selection_changed (gpointer /*dragger*/, gpointer data)
{
gr_tb_selection_changed (NULL, data);
}
static void
-gr_defs_release (SPObject *defs, GtkWidget *widget)
+gr_defs_release (SPObject */*defs*/, GtkWidget *widget)
{
gr_tb_selection_changed (NULL, (gpointer) widget);
}
static void
-gr_defs_modified (SPObject *defs, guint flags, GtkWidget *widget)
+gr_defs_modified (SPObject */*defs*/, guint /*flags*/, GtkWidget *widget)
{
gr_tb_selection_changed (NULL, (gpointer) widget);
}
-static void gr_disconnect_sigc (GObject *obj, sigc::connection *connection) {
+static void gr_disconnect_sigc (GObject */*obj*/, sigc::connection *connection) {
connection->disconnect();
delete connection;
}
static void
-gr_edit (GtkWidget *button, GtkWidget *widget)
+gr_edit (GtkWidget */*button*/, GtkWidget *widget)
{
GtkWidget *om = (GtkWidget *) g_object_get_data (G_OBJECT(widget), "menu");
GtkWidget *
sp_gradient_toolbox_new(SPDesktop *desktop)
{
- GtkWidget *tbl = gtk_hbox_new(FALSE, 0);
+ Inkscape::Preferences *prefs = Inkscape::Preferences::get();
+ GtkWidget *tbl = gtk_toolbar_new();
gtk_object_set_data(GTK_OBJECT(tbl), "dtw", desktop->canvas);
gtk_object_set_data(GTK_OBJECT(tbl), "desktop", desktop);
sp_toolbox_add_label(tbl, _("<b>New:</b>"));
- aux_toolbox_space(tbl, AUX_SPACING);
+ // TODO replace aux_toolbox_space(tbl, AUX_SPACING);
{
GtkWidget *cvbox = gtk_vbox_new (FALSE, 0);
GtkWidget *button = sp_button_new_from_data( Inkscape::ICON_SIZE_DECORATION,
SP_BUTTON_TYPE_TOGGLE,
NULL,
- "fill_gradient",
+ INKSCAPE_ICON_PAINT_GRADIENT_LINEAR,
_("Create linear gradient"),
tt);
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_type), tbl);
g_object_set_data(G_OBJECT(tbl), "linear", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
- prefs_get_int_attribute ("tools.gradient", "newgradient", SP_GRADIENT_TYPE_LINEAR) == SP_GRADIENT_TYPE_LINEAR);
+ prefs->getInt("/tools/gradient/newgradient", SP_GRADIENT_TYPE_LINEAR) == SP_GRADIENT_TYPE_LINEAR);
gtk_box_pack_start(GTK_BOX(cbox), button, FALSE, FALSE, 0);
}
GtkWidget *button = sp_button_new_from_data( Inkscape::ICON_SIZE_DECORATION,
SP_BUTTON_TYPE_TOGGLE,
NULL,
- "fill_radial",
+ INKSCAPE_ICON_PAINT_GRADIENT_RADIAL,
_("Create radial (elliptic or circular) gradient"),
tt);
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_type), tbl);
g_object_set_data(G_OBJECT(tbl), "radial", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
- prefs_get_int_attribute ("tools.gradient", "newgradient", SP_GRADIENT_TYPE_LINEAR) == SP_GRADIENT_TYPE_RADIAL);
+ prefs->getInt("/tools/gradient/newgradient", SP_GRADIENT_TYPE_LINEAR) == SP_GRADIENT_TYPE_RADIAL);
gtk_box_pack_start(GTK_BOX(cbox), button, FALSE, FALSE, 0);
}
gtk_box_pack_start(GTK_BOX(cvbox), cbox, TRUE, FALSE, 0);
- gtk_box_pack_start(GTK_BOX(tbl), cvbox, FALSE, FALSE, 0);
+ gtk_toolbar_append_widget( GTK_TOOLBAR(tbl), cvbox, "", "" );
}
- aux_toolbox_space(tbl, AUX_SPACING);
+ // TODO replace aux_toolbox_space(tbl, AUX_SPACING);
sp_toolbox_add_label(tbl, _("on"), false);
- aux_toolbox_space(tbl, AUX_SPACING);
+ // TODO replace aux_toolbox_space(tbl, AUX_SPACING);
{
GtkWidget *cvbox = gtk_vbox_new (FALSE, 0);
GtkWidget *button = sp_button_new_from_data( Inkscape::ICON_SIZE_DECORATION,
SP_BUTTON_TYPE_TOGGLE,
NULL,
- "controls_fill",
+ INKSCAPE_ICON_OBJECT_FILL,
_("Create gradient in the fill"),
tt);
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_fillstroke), tbl);
g_object_set_data(G_OBJECT(tbl), "fill", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
- prefs_get_int_attribute ("tools.gradient", "newfillorstroke", 1) == 1);
+ prefs->getBool("/tools/gradient/newfillorstroke", true));
gtk_box_pack_start(GTK_BOX(cbox), button, FALSE, FALSE, 0);
}
GtkWidget *button = sp_button_new_from_data( Inkscape::ICON_SIZE_DECORATION,
SP_BUTTON_TYPE_TOGGLE,
NULL,
- "controls_stroke",
+ INKSCAPE_ICON_OBJECT_STROKE,
_("Create gradient in the stroke"),
tt);
g_signal_connect_after (G_OBJECT (button), "clicked", G_CALLBACK (gr_toggle_fillstroke), tbl);
g_object_set_data(G_OBJECT(tbl), "stroke", button);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button),
- prefs_get_int_attribute ("tools.gradient", "newfillorstroke", 1) == 0);
+ !prefs->getBool("/tools/gradient/newfillorstroke", true));
gtk_box_pack_start(GTK_BOX(cbox), button, FALSE, FALSE, 0);
}
gtk_box_pack_start(GTK_BOX(cvbox), cbox, TRUE, TRUE, 3);
- gtk_box_pack_start(GTK_BOX(tbl), cvbox, FALSE, FALSE, 0);
+ gtk_toolbar_append_widget( GTK_TOOLBAR(tbl), cvbox, "", "" );
}
sp_toolbox_add_label(tbl, _("<b>Change:</b>"));
- aux_toolbox_space(tbl, AUX_SPACING);
+ // TODO replace aux_toolbox_space(tbl, AUX_SPACING);
{
GtkWidget *vectors = gr_change_widget (desktop);
- gtk_box_pack_start (GTK_BOX (tbl), vectors, FALSE, FALSE, 0);
+ gtk_toolbar_append_widget( GTK_TOOLBAR(tbl), vectors, "", "" );
}
gtk_widget_show_all(tbl);