do not change Session::_transport_frame is a locate is pending
[ardour.git] / gtk2_ardour / processor_box.cc
index 476d6c099520c12a0da648a4ef3c82dc4c163c76..ca1e448b587e4176ba5ab95dac348632d4ec544f 100644 (file)
@@ -884,7 +884,7 @@ ProcessorEntry::Control::set_tooltip ()
        std::string tt = _name + ": " + ARDOUR::value_as_string (c->desc(), c->get_value ());
        string sm = Gtkmm2ext::markup_escape_text (tt);
        _slider_persistant_tooltip.set_tip (sm);
-       ArdourWidgets::set_tooltip (_button, sm);
+       ArdourWidgets::set_tooltip (_button, Gtkmm2ext::markup_escape_text (sm));
 }
 
 void
@@ -1646,6 +1646,12 @@ ProcessorEntry::PluginInlineDisplay::update_height_alloc (uint32_t inline_height
        _scroll = sc;
 }
 
+void
+ProcessorEntry::PluginInlineDisplay::display_frame (cairo_t* cr, double w, double h)
+{
+       Gtkmm2ext::rounded_rectangle (cr, .5, -1.5, w - 1, h + 1, 7);
+}
+
 ProcessorEntry::LuaPluginDisplay::LuaPluginDisplay (ProcessorEntry& e, boost::shared_ptr<ARDOUR::LuaProc> p, uint32_t max_height)
        : PluginInlineDisplay (e, p, max_height)
        , _luaproc (p)
@@ -1680,7 +1686,7 @@ ProcessorEntry::LuaPluginDisplay::render_inline (cairo_t *cr, uint32_t width)
 #ifndef NDEBUG
                cerr << "LuaException:" << e.what () << endl;
 #endif
-       }
+       } catch (...) { }
        return 0;
 }
 
@@ -1938,7 +1944,7 @@ ProcessorBox::object_drop (DnDVBox<ProcessorEntry>* source, ProcessorEntry* posi
                 * otherwise we'll end up with duplicate ports-names.
                 * (this needs a better solution which retains connections)
                 */
-               state.remove_nodes ("Processor");
+               state.remove_nodes_and_delete ("Processor");
                proc->set_state (state, Stateful::loading_state_version);
                boost::dynamic_pointer_cast<PluginInsert>(proc)->update_id (id);
                return;
@@ -3301,7 +3307,7 @@ ProcessorBox::paste_processor_state (const XMLNodeList& nlist, boost::shared_ptr
                                 * We really would want Stateful::ForceIDRegeneration here :(
                                 */
                                XMLNode state (**niter);
-                               state.remove_nodes ("Processor");
+                               state.remove_nodes_and_delete ("Processor");
 
                                p->set_state (state, Stateful::current_state_version);
                                boost::dynamic_pointer_cast<PluginInsert>(p)->update_id (id);