X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fstate_circle.cpp;h=b83431b7c70714987920e91c6f9e09ff0aeab4ba;hb=4a6b5f2e444558761c4e8afccaa61fb2c58ec593;hp=0b25a576e6939a4dc75322b72c9f358597a5b50c;hpb=62136261cc9eed43f117b46c61361dda07dfce97;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/state_circle.cpp b/synfig-studio/trunk/src/gtkmm/state_circle.cpp index 0b25a57..b83431b 100644 --- a/synfig-studio/trunk/src/gtkmm/state_circle.cpp +++ b/synfig-studio/trunk/src/gtkmm/state_circle.cpp @@ -115,8 +115,8 @@ class studio::StateCircle_Context : public sigc::trackable Gtk::SpinButton spin_number_of_bline_points; Gtk::SpinButton spin_bline_point_angle_offset; - Gtk::CheckButton checkbutton_layer_circle; Gtk::CheckButton checkbutton_invert; + Gtk::CheckButton checkbutton_layer_circle; Gtk::CheckButton checkbutton_layer_region; Gtk::CheckButton checkbutton_layer_outline; Gtk::CheckButton checkbutton_layer_curve_gradient; @@ -156,12 +156,12 @@ public: Real get_bline_point_angle_offset()const { return adj_bline_point_angle_offset.get_value(); } void set_bline_point_angle_offset(Real f) { adj_bline_point_angle_offset.set_value(f); } - bool get_layer_circle_flag()const { return checkbutton_layer_circle.get_active(); } - void set_layer_circle_flag(bool x) { return checkbutton_layer_circle.set_active(x); } - bool get_invert()const { return checkbutton_invert.get_active(); } void set_invert(bool i) { checkbutton_invert.set_active(i); } + bool get_layer_circle_flag()const { return checkbutton_layer_circle.get_active(); } + void set_layer_circle_flag(bool x) { return checkbutton_layer_circle.set_active(x); } + bool get_layer_region_flag()const { return checkbutton_layer_region.get_active(); } void set_layer_region_flag(bool x) { return checkbutton_layer_region.set_active(x); } @@ -269,16 +269,16 @@ StateCircle_Context::load_settings() else set_bline_point_angle_offset(0); - if(settings.get_value("circle.layer_circle",value) && value=="0") - set_layer_circle_flag(false); - else - set_layer_circle_flag(true); - if(settings.get_value("circle.invert",value) && value != "0") set_invert(true); else set_invert(false); + if(settings.get_value("circle.layer_circle",value) && value=="0") + set_layer_circle_flag(false); + else + set_layer_circle_flag(true); + if(settings.get_value("circle.layer_region",value) && value=="1") set_layer_region_flag(true); else @@ -316,8 +316,8 @@ StateCircle_Context::save_settings() settings.set_value("circle.feather",strprintf("%f",(float)get_feather())); settings.set_value("circle.number_of_bline_points",strprintf("%d",(int)(get_number_of_bline_points() + 0.5))); settings.set_value("circle.bline_point_angle_offset",strprintf("%f",(float)get_bline_point_angle_offset())); - settings.set_value("circle.layer_circle",get_layer_circle_flag()?"1":"0"); settings.set_value("circle.invert",get_invert()?"1":"0"); + settings.set_value("circle.layer_circle",get_layer_circle_flag()?"1":"0"); settings.set_value("circle.layer_outline",get_layer_outline_flag()?"1":"0"); settings.set_value("circle.layer_region",get_layer_region_flag()?"1":"0"); settings.set_value("circle.layer_curve_gradient",get_layer_curve_gradient_flag()?"1":"0"); @@ -399,8 +399,8 @@ StateCircle_Context::StateCircle_Context(CanvasView* canvas_view): { egress_on_selection_change=true; // Set up the tool options dialog - //options_table.attach(*manage(new Gtk::Label(_("Circle Tool"))), 0, 2, 0, 1, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0); - options_table.attach(entry_id, 0, 2, 1, 2, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0); + options_table.attach(*manage(new Gtk::Label(_("Circle Tool"))), 0, 2, 0, 1, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0); + options_table.attach(entry_id, 0, 2, 1, 2, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0); enum_falloff.set_param_desc(ParamDesc("falloff") .set_local_name(_("Falloff")) @@ -594,8 +594,8 @@ StateCircle_Context::make_circle(const Point& _p1, const Point& _p2) layer=get_canvas_interface()->add_layer_to("circle",canvas,depth); layer_selection.push_back(layer); - layer->set_param("pos",p1); - get_canvas_interface()->signal_layer_param_changed()(layer,"pos"); + layer->set_param("origin",p1); + get_canvas_interface()->signal_layer_param_changed()(layer,"origin"); layer->set_param("radius",(p2-p1).mag()); get_canvas_interface()->signal_layer_param_changed()(layer,"radius"); @@ -616,6 +616,12 @@ StateCircle_Context::make_circle(const Point& _p1, const Point& _p2) layer->set_description(get_id()); get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description()); + + if(get_layer_outline_flag()) + { + layer->set_param("color",synfigapp::Main::get_background_color()); + get_canvas_interface()->signal_layer_param_changed()(layer,"color"); + } } ///////////////////////////////////////////////////////////////////////////