summaryrefslogtreecommitdiff
path: root/gtk2_ardour/axis_view.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2015-03-30 15:27:18 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2015-03-30 15:27:23 -0400
commit75e0f5a023b5485a6f6efb3ebd6f2ae21f5a041b (patch)
tree1f8c91929737d61ba785b463076f9b92427655ff /gtk2_ardour/axis_view.h
parent16be88cdb6bdf1db167de6d3488e3599e6d9eeb1 (diff)
remove GUI object state when tracks/busses are removed.
Not doing this results in accumulation of useless GUI object state which is never cleaned up. Taken from work by Grygorii Zharun.
Diffstat (limited to 'gtk2_ardour/axis_view.h')
-rw-r--r--gtk2_ardour/axis_view.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gtk2_ardour/axis_view.h b/gtk2_ardour/axis_view.h
index 7334945c2c..94f7708d90 100644
--- a/gtk2_ardour/axis_view.h
+++ b/gtk2_ardour/axis_view.h
@@ -70,6 +70,12 @@ class AxisView : public virtual Selectable, public PBD::ScopedConnectionList, pu
property_hashtable.emplace(property_name, s.str());
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);