From 0477b2e5da044c5d4c61198f3200467bbf619362 Mon Sep 17 00:00:00 2001 From: Jabier Arraiza Cenoz Date: Tue, 6 Jun 2017 21:37:40 +0200 Subject: Substitute a bool paramenter by a button (bzr r15717) --- src/live_effects/lpe-powerclip.cpp | 28 ++++++++++++++++++++-------- src/live_effects/lpe-powerclip.h | 7 ++----- 2 files changed, 22 insertions(+), 13 deletions(-) (limited to 'src') diff --git a/src/live_effects/lpe-powerclip.cpp b/src/live_effects/lpe-powerclip.cpp index e4a6f9e60..d5666bdde 100644 --- a/src/live_effects/lpe-powerclip.cpp +++ b/src/live_effects/lpe-powerclip.cpp @@ -32,16 +32,15 @@ LPEPowerClip::LPEPowerClip(LivePathEffectObject *lpeobject) : Effect(lpeobject), inverse(_("Inverse clip"), _("Inverse clip"), "inverse", &wr, this, false), flatten(_("Flatten clip"), _("Flatten clip, see fill rule once convert to paths"), "flatten", &wr, this, false), - convert_shapes(_("Convert clip shapes to paths"), _("Convert clip shapes to paths (this is overwriting your current value)."), "convert_shapes", &wr, this, false), //tooltip empty to no show in default param set is_inverse("Store the last inverse apply", "", "is_inverse", &wr, this, "false", false) { registerParameter(&inverse); registerParameter(&flatten); - registerParameter(&convert_shapes); registerParameter(&is_inverse); is_clip = false; hide_clip = false; + convert_shapes = false; } LPEPowerClip::~LPEPowerClip() {} @@ -235,6 +234,12 @@ LPEPowerClip::toggleClip() { } } +void +LPEPowerClip::convertShapes() { + convert_shapes = true; + sp_lpe_item_update_patheffect(SP_LPE_ITEM(sp_lpe_item), false, false); +} + Gtk::Widget * LPEPowerClip::newWidget() { @@ -244,12 +249,7 @@ LPEPowerClip::newWidget() vbox->set_border_width(5); vbox->set_homogeneous(false); vbox->set_spacing(6); - Gtk::HBox * hbox = Gtk::manage(new Gtk::HBox(false,0)); - Gtk::Button * toggle_button = Gtk::manage(new Gtk::Button(Glib::ustring(_("Toggle clip visibiliy")))); - toggle_button->signal_clicked().connect(sigc::mem_fun (*this,&LPEPowerClip::toggleClip)); - toggle_button->set_size_request(140,30); - vbox->pack_start(*hbox, true,true,2); - hbox->pack_start(*toggle_button, false, false,2); + std::vector::iterator it = param_vector.begin(); while (it != param_vector.end()) { if ((*it)->widget_is_visible) { @@ -272,6 +272,18 @@ LPEPowerClip::newWidget() ++it; } + Gtk::HBox * hbox = Gtk::manage(new Gtk::HBox(false,0)); + Gtk::Button * toggle_button = Gtk::manage(new Gtk::Button(Glib::ustring(_("Toggle clip visibiliy")))); + toggle_button->signal_clicked().connect(sigc::mem_fun (*this,&LPEPowerClip::toggleClip)); + toggle_button->set_size_request(140,30); + vbox->pack_start(*hbox, true,true,2); + hbox->pack_start(*toggle_button, false, false,2); + Gtk::HBox * hbox2 = Gtk::manage(new Gtk::HBox(false,0)); + Gtk::Button * topaths_button = Gtk::manage(new Gtk::Button(Glib::ustring(_("Convert clips to paths, undoable")))); + topaths_button->signal_clicked().connect(sigc::mem_fun (*this,&LPEPowerClip::convertShapes)); + topaths_button->set_size_request(200,30); + vbox->pack_start(*hbox2, true,true,2); + hbox2->pack_start(*topaths_button, false, false,2); return dynamic_cast(vbox); } diff --git a/src/live_effects/lpe-powerclip.h b/src/live_effects/lpe-powerclip.h index b9c68c652..88d425f01 100644 --- a/src/live_effects/lpe-powerclip.h +++ b/src/live_effects/lpe-powerclip.h @@ -28,17 +28,14 @@ public: void addInverse (SPItem * clip_data); void removeInverse (SPItem * clip_data); void flattenClip(SPItem * clip_data, Geom::PathVector &path_in); - void setClipRule(SPItem * clip_data); -protected: - //virtual void addCanvasIndicators(SPLPEItem const *lpeitem, std::vector &hp_vec); - + void convertShapes(); private: BoolParam inverse; BoolParam flatten; - BoolParam convert_shapes; HiddenParam is_inverse; Geom::Path clip_box; bool is_clip; + bool convert_shapes; bool hide_clip; bool previous_hide_clip; }; -- cgit v1.2.3