summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-06-28 17:25:32 +0000
committerCarl Hetherington <carl@carlh.net>2010-06-28 17:25:32 +0000
commitcd1aaff19724221b99eeeab7798fb41c10985b82 (patch)
tree6973ed9266bedbdf16e7940d4bb75f97d18e12f1 /gtk2_ardour
parent678b0302e1ea108ce8cf034c31c16b24e57e9671 (diff)
Hide region list toggle columns for whole file regions.
git-svn-id: svn://localhost/ardour2/branches/3.0@7313 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/editor_regions.cc11
-rw-r--r--gtk2_ardour/editor_regions.h3
2 files changed, 14 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_regions.cc b/gtk2_ardour/editor_regions.cc
index e2a97c791e..1b8e07a28b 100644
--- a/gtk2_ardour/editor_regions.cc
+++ b/gtk2_ardour/editor_regions.cc
@@ -105,18 +105,26 @@ EditorRegions::EditorRegions (Editor* e)
CellRendererToggle* locked_cell = dynamic_cast<CellRendererToggle*> (_display.get_column_cell_renderer (7));
locked_cell->property_activatable() = true;
locked_cell->signal_toggled().connect (sigc::mem_fun (*this, &EditorRegions::locked_changed));
+ TreeViewColumn* locked_col = _display.get_column (7);
+ locked_col->add_attribute (locked_cell->property_visible(), _columns.property_toggles_visible);
CellRendererToggle* glued_cell = dynamic_cast<CellRendererToggle*> (_display.get_column_cell_renderer (8));
glued_cell->property_activatable() = true;
glued_cell->signal_toggled().connect (sigc::mem_fun (*this, &EditorRegions::glued_changed));
+ TreeViewColumn* glued_col = _display.get_column (8);
+ glued_col->add_attribute (glued_cell->property_visible(), _columns.property_toggles_visible);
CellRendererToggle* muted_cell = dynamic_cast<CellRendererToggle*> (_display.get_column_cell_renderer (9));
muted_cell->property_activatable() = true;
muted_cell->signal_toggled().connect (sigc::mem_fun (*this, &EditorRegions::muted_changed));
+ TreeViewColumn* muted_col = _display.get_column (9);
+ muted_col->add_attribute (muted_cell->property_visible(), _columns.property_toggles_visible);
CellRendererToggle* opaque_cell = dynamic_cast<CellRendererToggle*> (_display.get_column_cell_renderer (10));
opaque_cell->property_activatable() = true;
opaque_cell->signal_toggled().connect (sigc::mem_fun (*this, &EditorRegions::opaque_changed));
+ TreeViewColumn* opaque_col = _display.get_column (10);
+ opaque_col->add_attribute (opaque_cell->property_visible(), _columns.property_toggles_visible);
_display.get_selection()->set_mode (SELECTION_MULTIPLE);
_display.add_object_drag (_columns.region.index(), "regions");
@@ -259,6 +267,7 @@ EditorRegions::add_region (boost::shared_ptr<Region> region)
row[_columns.name] = str;
row[_columns.region] = region;
+ row[_columns.property_toggles_visible] = false;
if (missing_source) {
row[_columns.path] = _("(MISSING) ") + region->source()->name();
@@ -309,6 +318,8 @@ EditorRegions::add_region (boost::shared_ptr<Region> region)
if (!found_parent) {
row = *(_model->append());
}
+
+ row[_columns.property_toggles_visible] = true;
}
row[_columns.region] = region;
diff --git a/gtk2_ardour/editor_regions.h b/gtk2_ardour/editor_regions.h
index d7f5d7490b..b17699e9e6 100644
--- a/gtk2_ardour/editor_regions.h
+++ b/gtk2_ardour/editor_regions.h
@@ -82,6 +82,7 @@ private:
add (opaque);
add (used);
add (path);
+ add (property_toggles_visible);
}
Gtk::TreeModelColumn<Glib::ustring> name;
@@ -99,6 +100,8 @@ private:
Gtk::TreeModelColumn<bool> opaque;
Gtk::TreeModelColumn<Glib::ustring> used;
Gtk::TreeModelColumn<Glib::ustring> path;
+ /** used to indicate whether the locked/glued/muted/opaque should be visible or not */
+ Gtk::TreeModelColumn<bool> property_toggles_visible;
};
Columns _columns;