Fix 1829182: "Right click context menu not always appears".
[synfig.git] / synfig-studio / trunk / src / gtkmm / state_bline.cpp
index bead76f..6cf1e54 100644 (file)
@@ -374,7 +374,7 @@ StateBLine_Context::StateBLine_Context(CanvasView* canvas_view):
        load_settings();
 
        // Set up the tool options dialog
-       options_table.attach(*manage(new Gtk::Label(_("BLine Tool"))),  0, 2, 0, 1, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0);
+       options_table.attach(*manage(new Gtk::Label(_("BLine 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(checkbutton_layer_outline,                                 0, 2,  2,  3, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0);
        options_table.attach(checkbutton_layer_region,                                  0, 2,  3,  4, Gtk::EXPAND|Gtk::FILL, Gtk::EXPAND|Gtk::FILL, 0, 0);
@@ -621,7 +621,11 @@ StateBLine_Context::run_()
                        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)
+                       {
+                               group.cancel();
+                               throw String(_("Unable to create layer"));
+                       }
                        layer_selection.push_back(layer);
                        layer->set_description(get_id()+_(" Gradient"));
                        get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
@@ -680,7 +684,11 @@ StateBLine_Context::run_()
                        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)
+                       {
+                               group.cancel();
+                               throw String(_("Unable to create layer"));
+                       }
                        layer_selection.push_back(layer);
                        layer->set_description(get_id()+_(" Plant"));
                        get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
@@ -739,7 +747,11 @@ StateBLine_Context::run_()
                        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)
+                       {
+                               group.cancel();
+                               throw String(_("Unable to create layer"));
+                       }
                        layer_selection.push_back(layer);
                        layer->set_description(get_id()+_(" Region"));
                        get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
@@ -809,7 +821,11 @@ StateBLine_Context::run_()
                        synfigapp::PushMode push_mode(get_canvas_interface(),synfigapp::MODE_NORMAL);
 
                        Layer::Handle layer(get_canvas_interface()->add_layer_to("outline",canvas,depth));
-                       assert(layer);
+                       if (!layer)
+                       {
+                               group.cancel();
+                               throw String(_("Unable to create layer"));
+                       }
                        layer_selection.push_back(layer);
                        layer->set_description(get_id()+_(" Outline"));
                        get_canvas_interface()->signal_layer_new_description()(layer,layer->get_description());
@@ -967,10 +983,6 @@ StateBLine_Context::event_mouse_click_handler(const Smach::event& x)
                        return Smach::RESULT_ACCEPT;
                }
 
-       case BUTTON_RIGHT: // Intercept the right-button click to short-circuit the pop-up menu
-               if (!getenv("SYNFIG_ENABLE_POPUP_MENU_IN_ALL_TOOLS"))
-                       return Smach::RESULT_ACCEPT;
-
        default:
                return Smach::RESULT_OK;
        }