projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Apply patch #17: Implement a Fill/Outline system in place of Foreground/Background...
[synfig.git]
/
synfig-studio
/
trunk
/
src
/
gtkmm
/
state_rectangle.cpp
diff --git
a/synfig-studio/trunk/src/gtkmm/state_rectangle.cpp
b/synfig-studio/trunk/src/gtkmm/state_rectangle.cpp
index
d01a943
..
aa21c23
100644
(file)
--- a/
synfig-studio/trunk/src/gtkmm/state_rectangle.cpp
+++ b/
synfig-studio/trunk/src/gtkmm/state_rectangle.cpp
@@
-519,6
+519,12
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
if (get_layer_rectangle_flag())
{
layer=get_canvas_interface()->add_layer_to("rectangle",canvas,depth);
if (get_layer_rectangle_flag())
{
layer=get_canvas_interface()->add_layer_to("rectangle",canvas,depth);
+ if (!layer)
+ {
+ get_canvas_view()->get_ui_interface()->error(_("Unable to create layer"));
+ group.cancel();
+ return;
+ }
layer_selection.push_back(layer);
layer->set_param("point1",p1);
layer_selection.push_back(layer);
layer->set_param("point1",p1);
@@
-535,12
+541,6
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
layer->set_description(get_id());
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
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");
- }
}
///////////////////////////////////////////////////////////////////////////
}
///////////////////////////////////////////////////////////////////////////
@@
-552,13
+552,18
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
synfigapp::PushMode push_mode(get_canvas_interface(),synfigapp::MODE_NORMAL);
Layer::Handle layer(get_canvas_interface()->add_layer_to("curve_gradient",canvas,depth));
synfigapp::PushMode push_mode(get_canvas_interface(),synfigapp::MODE_NORMAL);
Layer::Handle layer(get_canvas_interface()->add_layer_to("curve_gradient",canvas,depth));
- assert(layer);
+ if (!layer)
+ {
+ get_canvas_view()->get_ui_interface()->error(_("Unable to create layer"));
+ group.cancel();
+ return;
+ }
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Gradient"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
{
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Gradient"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());
@@
-581,7
+586,7
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
// only link the curve gradient's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
// only link the curve gradient's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());
@@
-611,13
+616,18
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
synfigapp::PushMode push_mode(get_canvas_interface(),synfigapp::MODE_NORMAL);
Layer::Handle layer(get_canvas_interface()->add_layer_to("plant",canvas,depth));
synfigapp::PushMode push_mode(get_canvas_interface(),synfigapp::MODE_NORMAL);
Layer::Handle layer(get_canvas_interface()->add_layer_to("plant",canvas,depth));
- assert(layer);
+ if (!layer)
+ {
+ get_canvas_view()->get_ui_interface()->error(_("Unable to create layer"));
+ group.cancel();
+ return;
+ }
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Plant"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
{
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Plant"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());
@@
-640,7
+650,7
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
// only link the plant's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
// only link the plant's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());
@@
-670,7
+680,12
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
synfigapp::PushMode push_mode(get_canvas_interface(),synfigapp::MODE_NORMAL);
Layer::Handle layer(get_canvas_interface()->add_layer_to("region",canvas,depth));
synfigapp::PushMode push_mode(get_canvas_interface(),synfigapp::MODE_NORMAL);
Layer::Handle layer(get_canvas_interface()->add_layer_to("region",canvas,depth));
- assert(layer);
+ if (!layer)
+ {
+ get_canvas_view()->get_ui_interface()->error(_("Unable to create layer"));
+ group.cancel();
+ return;
+ }
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Region"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Region"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
@@
-681,13
+696,10
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
layer->set_param("invert",get_invert());
get_canvas_interface()->signal_layer_param_changed()(layer,"invert");
layer->set_param("invert",get_invert());
get_canvas_interface()->signal_layer_param_changed()(layer,"invert");
- if(get_layer_outline_flag())
- layer->set_param("color",synfigapp::Main::get_background_color());
-
- // I don't know if it's safe to reuse the same layer_param_connect action, so I'm
+ // I don't know if it's safe to reuse the same LayerParamConnect action, so I'm
// using 2 separate ones.
{
// using 2 separate ones.
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());
@@
-710,7
+722,7
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
// only link the region's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
// only link the region's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());
@@
-738,7
+750,12
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
if (get_layer_outline_flag())
{
Layer::Handle layer(get_canvas_interface()->add_layer_to("outline",canvas,depth));
if (get_layer_outline_flag())
{
Layer::Handle layer(get_canvas_interface()->add_layer_to("outline",canvas,depth));
- assert(layer);
+ if (!layer)
+ {
+ get_canvas_view()->get_ui_interface()->error(_("Unable to create layer"));
+ group.cancel();
+ return;
+ }
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Outline"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
layer_selection.push_back(layer);
layer->set_description(get_id()+_(" Outline"));
get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
@@
-750,7
+767,7
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
get_canvas_interface()->signal_layer_param_changed()(layer,"invert");
{
get_canvas_interface()->signal_layer_param_changed()(layer,"invert");
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());
@@
-773,7
+790,7
@@
StateRectangle_Context::make_rectangle(const Point& _p1, const Point& _p2)
// only link the outline's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
// only link the outline's origin parameter if the option is selected and we're creating more than one layer
if (get_layer_link_origins_flag() && layers_to_create > 1)
{
- synfigapp::Action::Handle action(synfigapp::Action::create("
layer_param_c
onnect"));
+ synfigapp::Action::Handle action(synfigapp::Action::create("
LayerParamC
onnect"));
assert(action);
action->set_param("canvas",get_canvas());
assert(action);
action->set_param("canvas",get_canvas());