void sp_color_picker_color_mod(SPColorSelector *csel, GObject *cp) { if (_in_use) { return; } else { _in_use = true; } SPColor color; float alpha = 0; csel->base->getColorAlpha(color, alpha); guint32 rgba = color.toRGBA32( alpha ); ColorPicker *ptr = reinterpret_cast<ColorPicker *>(cp); (ptr->_preview).setRgba32 (rgba); if (ptr->_undo && SP_ACTIVE_DESKTOP) DocumentUndo::done(sp_desktop_document(SP_ACTIVE_DESKTOP), SP_VERB_NONE, /* TODO: annotate */ "color-picker.cpp:130"); ptr->on_changed (rgba); _in_use = false; ptr->_changed_signal.emit (rgba); ptr->_rgba = rgba; }