X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fui%2Fwidget%2Fstyle-swatch.cpp;h=df543c8d399c731134d2bc2143a363605f3d872f;hb=569ef8f6dbacc8a8b0b933d02a806c2e091ce02b;hp=cad07fbd6ed3435cb6b87e2e31baf3a50152357c;hpb=3a8e479f331858946168c32bfc7622c9010b6680;p=inkscape.git diff --git a/src/ui/widget/style-swatch.cpp b/src/ui/widget/style-swatch.cpp index cad07fbd6..df543c8d3 100644 --- a/src/ui/widget/style-swatch.cpp +++ b/src/ui/widget/style-swatch.cpp @@ -289,21 +289,7 @@ StyleSwatch::setStyle(SPStyle *query) paint = &(query->stroke); } - if (paint->set && paint->type == SP_PAINT_TYPE_COLOR) { - guint32 color = sp_color_get_rgba32_falpha (&(paint->value.color), - SP_SCALE24_TO_FLOAT ((i == SS_FILL)? query->fill_opacity.value : query->stroke_opacity.value)); - ((Inkscape::UI::Widget::ColorPreview*)_color_preview[i])->setRgba32 (color); - _color_preview[i]->show_all(); - place->add(*_color_preview[i]); - gchar *tip; - if (i == SS_FILL) { - tip = g_strdup_printf (_("Fill: %06x/%.3g"), color >> 8, SP_RGBA32_A_F(color)); - } else { - tip = g_strdup_printf (_("Stroke: %06x/%.3g"), color >> 8, SP_RGBA32_A_F(color)); - } - _tooltips.set_tip(*place, tip); - g_free (tip); - } else if (paint->set && paint->type == SP_PAINT_TYPE_PAINTSERVER) { + if (paint->set && paint->isPaintserver()) { SPPaintServer *server = (i == SS_FILL)? SP_STYLE_FILL_SERVER (query) : SP_STYLE_STROKE_SERVER (query); if (SP_IS_LINEARGRADIENT (server)) { @@ -320,7 +306,20 @@ StyleSwatch::setStyle(SPStyle *query) _tooltips.set_tip(*place, (i == SS_FILL)? (_("Pattern fill")) : (_("Pattern stroke"))); } - } else if (paint->set && paint->type == SP_PAINT_TYPE_NONE) { + } else if (paint->set && paint->isColor()) { + guint32 color = paint->value.color.toRGBA32( SP_SCALE24_TO_FLOAT ((i == SS_FILL)? query->fill_opacity.value : query->stroke_opacity.value) ); + ((Inkscape::UI::Widget::ColorPreview*)_color_preview[i])->setRgba32 (color); + _color_preview[i]->show_all(); + place->add(*_color_preview[i]); + gchar *tip; + if (i == SS_FILL) { + tip = g_strdup_printf (_("Fill: %06x/%.3g"), color >> 8, SP_RGBA32_A_F(color)); + } else { + tip = g_strdup_printf (_("Stroke: %06x/%.3g"), color >> 8, SP_RGBA32_A_F(color)); + } + _tooltips.set_tip(*place, tip); + g_free (tip); + } else if (paint->set && paint->isNone()) { _value[i].set_markup(_("None")); place->add(_value[i]); _tooltips.set_tip(*place, (i == SS_FILL)? (_("No fill")) : (_("No stroke")));