diff options
author | Robin Gareus <robin@gareus.org> | 2014-06-28 21:45:52 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-06-28 22:02:20 +0200 |
commit | fd7cddb847639b28bbeaf72d5b613833761efe6f (patch) | |
tree | fc47fa06466cdfd1fc703762b3af17583ef3dd0a /gtk2_ardour/axis_view.h | |
parent | 4a7eb62bf869e156d58e5c6f56ac355e747b3ad9 (diff) |
use a hash-table to cache gui properties
Diffstat (limited to 'gtk2_ardour/axis_view.h')
-rw-r--r-- | gtk2_ardour/axis_view.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gtk2_ardour/axis_view.h b/gtk2_ardour/axis_view.h index 8e777c2a58..4ce76c92ce 100644 --- a/gtk2_ardour/axis_view.h +++ b/gtk2_ardour/axis_view.h @@ -21,6 +21,7 @@ #define __ardour_gtk_axis_view_h__ #include <list> +#include <boost/unordered_map.hpp> #include <gtkmm/label.h> #include <gdkmm/color.h> @@ -63,6 +64,10 @@ class AxisView : public virtual Selectable, public PBD::ScopedConnectionList, pu 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; + property_hashtable.erase(property_name); + property_hashtable.emplace(property_name, s.str()); gui_object_state().set_property<T> (state_id(), property_name, value); } @@ -89,7 +94,7 @@ class AxisView : public virtual Selectable, public PBD::ScopedConnectionList, pu Gtk::Label name_label; - bool _marked_for_display; + mutable boost::unordered_map<std::string, std::string> property_hashtable; uint32_t _old_order_key; }; /* class AxisView */ |