projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
32/64bit compat
[ardour.git]
/
gtk2_ardour
/
visibility_group.h
diff --git
a/gtk2_ardour/visibility_group.h
b/gtk2_ardour/visibility_group.h
index d9e13e1e930c04ec5ec706de8be08980cf499506..20be7dcf7248cb7d32c6093021eae645ac5b5504 100644
(file)
--- a/
gtk2_ardour/visibility_group.h
+++ b/
gtk2_ardour/visibility_group.h
@@
-37,7
+37,14
@@
class VisibilityGroup
public:
VisibilityGroup (std::string const &);
public:
VisibilityGroup (std::string const &);
- void add (Gtk::Widget *, std::string const &, std::string const &, bool visible = true);
+ void add (
+ Gtk::Widget *,
+ std::string const &,
+ std::string const &,
+ bool visible = false,
+ boost::function<boost::optional<bool> ()> = 0
+ );
+
Gtk::Menu* menu ();
Gtk::Widget* list_view ();
bool button_press_event (GdkEventButton *);
Gtk::Menu* menu ();
Gtk::Widget* list_view ();
bool button_press_event (GdkEventButton *);
@@
-56,6
+63,7
@@
private:
std::string id;
std::string name;
bool visible;
std::string id;
std::string name;
bool visible;
+ boost::function<boost::optional<bool> ()> override;
};
class ModelColumns : public Gtk::TreeModelColumnRecord {
};
class ModelColumns : public Gtk::TreeModelColumnRecord {
@@
-74,6
+82,7
@@
private:
void toggle (std::vector<Member>::iterator);
void list_view_visible_changed (std::string const &);
void update_list_view ();
void toggle (std::vector<Member>::iterator);
void list_view_visible_changed (std::string const &);
void update_list_view ();
+ bool should_actually_be_visible (Member const &) const;
std::vector<Member> _members;
std::string _xml_property_name;
std::vector<Member> _members;
std::string _xml_property_name;