Make provision for building with the new LV2 extensions (when building with MSVC)
[ardour.git] / gtk2_ardour / axis_view.h
index 7334945c2ca819ebc2d1491ad7813cf842f0930c..b47ca9816311df91c660caea938a2d4b5b99fda4 100644 (file)
@@ -54,7 +54,7 @@ class AxisView : public virtual Selectable, public PBD::ScopedConnectionList, pu
        virtual std::string name() const = 0;
 
        sigc::signal<void> Hiding;
-       
+
        void set_old_order_key (uint32_t ok) { _old_order_key = ok; }
        uint32_t old_order_key() const { return _old_order_key; }
 
@@ -62,7 +62,7 @@ class AxisView : public virtual Selectable, public PBD::ScopedConnectionList, pu
        /* for now, we always return properties in string form.
         */
        std::string gui_property (const std::string& property_name) const;
-       
+
        template<typename T> void set_gui_property (const std::string& property_name, const T& value) {
                std::stringstream s;
                s << value;
@@ -71,12 +71,18 @@ class AxisView : public virtual Selectable, public PBD::ScopedConnectionList, pu
                gui_object_state().set_property<T> (state_id(), property_name, value);
        }
 
+       void cleanup_gui_properties () {
+               /* remove related property node from the GUI state */
+               gui_object_state().remove_node (state_id());
+               property_hashtable.clear ();
+       }
+
        bool marked_for_display () const;
        virtual bool set_marked_for_display (bool);
 
        static GUIObjectState& gui_object_state();
        void clear_property_cache() { property_hashtable.clear(); }
-       
+
   protected:
 
        AxisView (ARDOUR::Session* sess);