summaryrefslogtreecommitdiffstats
path: root/src/widgets/fill-style.cpp
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2010-03-09 10:12:09 +0000
committerJon A. Cruz <jon@joncruz.org>2010-03-09 10:12:09 +0000
commitbe18b3457f1b5c1205cdd45eae0a8a19b9c3e7b3 (patch)
tree30c0b9ea788d40e0011f36a06d776eef258fda22 /src/widgets/fill-style.cpp
parentFixed the Win32 uninstaller. (diff)
downloadinkscape-be18b3457f1b5c1205cdd45eae0a8a19b9c3e7b3.tar.gz
inkscape-be18b3457f1b5c1205cdd45eae0a8a19b9c3e7b3.zip
Initial F&S dialog setting of swatch colors.
(bzr r9169)
Diffstat (limited to 'src/widgets/fill-style.cpp')
-rw-r--r--src/widgets/fill-style.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/widgets/fill-style.cpp b/src/widgets/fill-style.cpp
index 0b08f36b5..87cd238a7 100644
--- a/src/widgets/fill-style.cpp
+++ b/src/widgets/fill-style.cpp
@@ -210,10 +210,11 @@ sp_fill_style_widget_update (SPWidget *spw)
SPPaintServer *server = SP_STYLE_FILL_SERVER (query);
- if (server && server->isSwatch()) {
- sp_paint_selector_set_swatch( psel, server );
+ if (server && SP_IS_GRADIENT(server) && SP_GRADIENT(server)->getVector()->isSwatch()) {
+ SPGradient *vector = SP_GRADIENT(server)->getVector();
+ sp_paint_selector_set_swatch( psel, vector );
} else if (SP_IS_LINEARGRADIENT (server)) {
- SPGradient *vector = sp_gradient_get_vector (SP_GRADIENT (server), FALSE);
+ SPGradient *vector = SP_GRADIENT(server)->getVector();
sp_paint_selector_set_gradient_linear (psel, vector);
SPLinearGradient *lg = SP_LINEARGRADIENT (server);
@@ -221,7 +222,7 @@ sp_fill_style_widget_update (SPWidget *spw)
SP_GRADIENT_UNITS (lg),
SP_GRADIENT_SPREAD (lg));
} else if (SP_IS_RADIALGRADIENT (server)) {
- SPGradient *vector = sp_gradient_get_vector (SP_GRADIENT (server), FALSE);
+ SPGradient *vector = SP_GRADIENT(server)->getVector();
sp_paint_selector_set_gradient_radial (psel, vector);
SPRadialGradient *rg = SP_RADIALGRADIENT (server);
@@ -411,8 +412,9 @@ sp_fill_style_widget_paint_changed ( SPPaintSelector *psel,
case SP_PAINT_SELECTOR_MODE_GRADIENT_LINEAR:
case SP_PAINT_SELECTOR_MODE_GRADIENT_RADIAL:
+ case SP_PAINT_SELECTOR_MODE_SWATCH:
if (items) {
- SPGradientType const gradient_type = ( psel->mode == SP_PAINT_SELECTOR_MODE_GRADIENT_LINEAR
+ SPGradientType const gradient_type = ( psel->mode != SP_PAINT_SELECTOR_MODE_GRADIENT_RADIAL
? SP_GRADIENT_TYPE_LINEAR
: SP_GRADIENT_TYPE_RADIAL );
@@ -518,10 +520,6 @@ sp_fill_style_widget_paint_changed ( SPPaintSelector *psel,
break;
- case SP_PAINT_SELECTOR_MODE_SWATCH:
- // TODO
- break;
-
case SP_PAINT_SELECTOR_MODE_UNSET:
if (items) {
SPCSSAttr *css = sp_repr_css_attr_new ();