index 81462f56a109c01b46e2c2e08ee6c7bcb8f59d05..991e415d5eef98544efd1cc618bf9094224a1ac7 100644 (file)
void
sp_gradient_vector_selector_set_gradient (SPGradientVectorSelector *gvs, SPDocument *doc, SPGradient *gr)
{
- static bool suppress = FALSE;
+ static gboolean suppress = FALSE;
g_return_if_fail (gvs != NULL);
g_return_if_fail (SP_IS_GRADIENT_VECTOR_SELECTOR (gvs));
if (norm != gr) {
/* We do extra undo push here */
/* If handler has already done it, it is just NOP */
+ // FIXME: looks like this is never a valid undo step, consider removing this
sp_document_done (SP_OBJECT_DOCUMENT (norm), SP_VERB_CONTEXT_GRADIENT,
/* TODO: annotate */ "gradient-vector.cpp:350");
}
@@ -418,7 +419,7 @@ sp_gvs_defs_modified (SPObject *defs, guint flags, SPGradientVectorSelector *gvs
static GtkWidget *sp_gradient_vector_widget_new (SPGradient *gradient, SPStop *stop);
static void sp_gradient_vector_widget_load_gradient (GtkWidget *widget, SPGradient *gradient);
-static bool sp_gradient_vector_dialog_delete (GtkWidget *widget, GdkEvent *event, GtkWidget *dialog);
+static gint sp_gradient_vector_dialog_delete (GtkWidget *widget, GdkEvent *event, GtkWidget *dialog);
static void sp_gradient_vector_dialog_destroy (GtkObject *object, gpointer data);
static void sp_gradient_vector_widget_destroy (GtkObject *object, gpointer data);
@@ -428,7 +429,7 @@ static void sp_gradient_vector_color_dragged (SPColorSelector *csel, GtkObject *
static void sp_gradient_vector_color_changed (SPColorSelector *csel, GtkObject *object);
static void update_stop_list( GtkWidget *mnu, SPGradient *gradient, SPStop *new_stop);
-static bool blocked = FALSE;
+static gboolean blocked = FALSE;
static void grad_edit_dia_stop_added_or_removed (Inkscape::XML::Node *repr, Inkscape::XML::Node *child, Inkscape::XML::Node *ref, gpointer data)
{
}
}
+ Inkscape::XML::Document *xml_doc;
+ xml_doc = SP_OBJECT_REPR(gradient)->document();
+
if (i < 1) {
gchar c[64];
- sp_svg_write_color (c, 64, 0x00000000);
+ sp_svg_write_color (c, sizeof(c), 0x00000000);
Inkscape::CSSOStringStream os;
os << "stop-color:" << c << ";stop-opacity:" << 1.0 << ";";
Inkscape::XML::Node *child;
- child = sp_repr_new ("svg:stop");
+ child = xml_doc->createElement("svg:stop");
sp_repr_set_css_double(child, "offset", 0.0);
child->setAttribute("style", os.str().c_str());
SP_OBJECT_REPR (gradient)->addChild(child, NULL);
- child = sp_repr_new ("svg:stop");
+ child = xml_doc->createElement("svg:stop");
sp_repr_set_css_double(child, "offset", 1.0);
child->setAttribute("style", os.str().c_str());
SP_OBJECT_REPR (gradient)->addChild(child, NULL);
}
if (i < 2) {
sp_repr_set_css_double(SP_OBJECT_REPR(stop), "offset", 0.0);
- Inkscape::XML::Node *child = SP_OBJECT_REPR(stop)->duplicate();
+ Inkscape::XML::Node *child = SP_OBJECT_REPR(stop)->duplicate(SP_OBJECT_REPR(gradient)->document());
sp_repr_set_css_double(child, "offset", 1.0);
SP_OBJECT_REPR(gradient)->addChild(child, SP_OBJECT_REPR (stop));
}
SPColorSelector *csel = (SPColorSelector*)g_object_get_data (G_OBJECT (tbl), "cselector");
guint32 const c = sp_stop_get_rgba32(stop);
csel->base->setAlpha(SP_RGBA32_A_F (c));
- SPColor color;
- sp_color_set_rgb_float (&color, SP_RGBA32_R_F (c), SP_RGBA32_G_F (c), SP_RGBA32_B_F (c));
+ SPColor color( SP_RGBA32_R_F (c), SP_RGBA32_G_F (c), SP_RGBA32_B_F (c) );
// set its color, from the stored array
csel->base->setColor( color );
GtkWidget *offspin = GTK_WIDGET (g_object_get_data (G_OBJECT (tbl), "offspn"));
sp_repr_set_css_double(SP_OBJECT_REPR(stop), "offset", stop->offset);
sp_document_done (SP_OBJECT_DOCUMENT (stop), SP_VERB_CONTEXT_GRADIENT,
- /* TODO: annotate */ "gradient-vector.cpp:642");
+ _("Change gradient stop offset"));
blocked = FALSE;
}
}
if (next != NULL) {
- new_stop_repr = SP_OBJECT_REPR(stop)->duplicate();
+ new_stop_repr = SP_OBJECT_REPR(stop)->duplicate(SP_OBJECT_REPR(gradient)->document());
SP_OBJECT_REPR(gradient)->addChild(new_stop_repr, SP_OBJECT_REPR(stop));
} else {
next = stop;
- new_stop_repr = SP_OBJECT_REPR(sp_prev_stop(stop, gradient))->duplicate();
+ new_stop_repr = SP_OBJECT_REPR(sp_prev_stop(stop, gradient))->duplicate(SP_OBJECT_REPR(gradient)->document());
SP_OBJECT_REPR(gradient)->addChild(new_stop_repr, SP_OBJECT_REPR(sp_prev_stop(stop, gradient)));
}
Inkscape::CSSOStringStream os;
gchar c[64];
- sp_svg_write_color (c, 64, cnew);
+ sp_svg_write_color (c, sizeof(c), cnew);
gdouble opacity = (gdouble) SP_RGBA32_A_F (cnew);
os << "stop-color:" << c << ";stop-opacity:" << opacity <<";";
SP_OBJECT_REPR (newstop)->setAttribute("style", os.str().c_str());
+ sp_repr_set_css_double( SP_OBJECT_REPR(newstop), "offset", (double)newstop->offset);
sp_gradient_vector_widget_load_gradient (vb, gradient);
Inkscape::GC::release(new_stop_repr);
gtk_widget_set_sensitive (offslide, TRUE);
gtk_widget_set_sensitive (GTK_WIDGET (offspin), TRUE);
sp_document_done (SP_OBJECT_DOCUMENT (gradient), SP_VERB_CONTEXT_GRADIENT,
- /* TODO: annotate */ "gradient-vector.cpp:715");
+ _("Add gradient stop"));
}
static void
sp_gradient_vector_widget_load_gradient (vb, gradient);
update_stop_list(GTK_WIDGET(mnu), gradient, NULL);
sp_document_done (SP_OBJECT_DOCUMENT (gradient), SP_VERB_CONTEXT_GRADIENT,
- /* TODO: annotate */ "gradient-vector.cpp:747");
+ _("Delete gradient stop"));
}
}
/* Signals */
- gtk_signal_connect (GTK_OBJECT (Offset_adj), "value_changed",
- GTK_SIGNAL_FUNC (offadjustmentChanged), vb);
+ gtk_signal_connect (GTK_OBJECT (Offset_adj), "value_changed",
+ GTK_SIGNAL_FUNC (offadjustmentChanged), vb);
// gtk_signal_connect (GTK_OBJECT (slider), "changed", GTK_SIGNAL_FUNC (offsliderChanged), vb);
gtk_widget_show (hb);
f = gtk_frame_new (_("Stop Color"));
gtk_widget_show (f);
gtk_box_pack_start (GTK_BOX (vb), f, TRUE, TRUE, PAD);
- csel = (GtkWidget*)sp_color_selector_new (SP_TYPE_COLOR_NOTEBOOK, SP_COLORSPACE_TYPE_NONE);
+ csel = (GtkWidget*)sp_color_selector_new (SP_TYPE_COLOR_NOTEBOOK);
g_object_set_data (G_OBJECT (vb), "cselector", csel);
gtk_widget_show (csel);
gtk_container_add (GTK_CONTAINER (f), csel);
@@ -1009,8 +1013,7 @@ sp_gradient_vector_widget_load_gradient (GtkWidget *widget, SPGradient *gradient
SPColorSelector *csel = SP_COLOR_SELECTOR(g_object_get_data (G_OBJECT (widget), "cselector"));
// set alpha
csel->base->setAlpha(SP_RGBA32_A_F (c));
- SPColor color;
- sp_color_set_rgb_float (&color, SP_RGBA32_R_F (c), SP_RGBA32_G_F (c), SP_RGBA32_B_F (c));
+ SPColor color( SP_RGBA32_R_F (c), SP_RGBA32_G_F (c), SP_RGBA32_B_F (c) );
// set color
csel->base->setColor( color );
}
@@ -1026,7 +1029,7 @@ sp_gradient_vector_widget_load_gradient (GtkWidget *widget, SPGradient *gradient
if (SP_OBJECT_REPR(gradient)->attribute("inkscape:collect")) {
SPDocument *document = SP_OBJECT_DOCUMENT (gradient);
bool saved = sp_document_get_undo_sensitive(document);
- sp_document_set_undo_sensitive (document, FALSE);
+ sp_document_set_undo_sensitive (document, false);
SP_OBJECT_REPR(gradient)->setAttribute("inkscape:collect", NULL);
sp_document_set_undo_sensitive (document, saved);
}
wd.stop = 0;
}
-static bool
+static gboolean
sp_gradient_vector_dialog_delete (GtkWidget *widget, GdkEvent *event, GtkWidget *dialog)
{
gtk_window_get_position ((GtkWindow *) dlg, &x, &y);
@@ -1119,10 +1122,7 @@ static void sp_gradient_vector_color_dragged(SPColorSelector *csel, GtkObject *o
csel->base->getColorAlpha(stop->specified_color, &stop->opacity);
stop->currentColor = false;
- blocked = FALSE;
- SPColorPreview *cpv = (SPColorPreview *)g_object_get_data (G_OBJECT(gtk_menu_get_active (GTK_MENU(gtk_option_menu_get_menu (mnu)))), "preview");
- sp_color_preview_set_rgba32(cpv, sp_stop_get_rgba32(stop));
-
+ blocked = FALSE;
}
static void
csel = (SPColorSelector*)g_object_get_data (G_OBJECT (object), "cselector");
csel->base->getColorAlpha( color, &alpha );
- rgb = sp_color_get_rgba32_ualpha (&color, 0x00);
+ rgb = color.toRGBA32( 0x00 );
sp_repr_set_css_double (SP_OBJECT_REPR (stop), "offset", stop->offset);
Inkscape::CSSOStringStream os;
gchar c[64];
- sp_svg_write_color (c, 64, rgb);
+ sp_svg_write_color (c, sizeof(c), rgb);
os << "stop-color:" << c << ";stop-opacity:" << (gdouble) alpha <<";";
SP_OBJECT_REPR (stop)->setAttribute("style", os.str().c_str());
// g_snprintf (c, 256, "stop-color:#%06x;stop-opacity:%g;", rgb >> 8, (gdouble) alpha);
//SP_OBJECT_REPR (stop)->setAttribute("style", c);
sp_document_done (SP_OBJECT_DOCUMENT (ngr), SP_VERB_CONTEXT_GRADIENT,
- /* TODO: annotate */ "gradient-vector.cpp:1124");
+ _("Change gradient stop color"));
blocked = FALSE;
+
+ SPColorPreview *cpv = (SPColorPreview *)g_object_get_data (G_OBJECT(gtk_menu_get_active (GTK_MENU(gtk_option_menu_get_menu (mnu)))), "preview");
+ sp_color_preview_set_rgba32(cpv, sp_stop_get_rgba32(stop));
}
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :