summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/rc_option_editor.cc8
-rw-r--r--gtk2_ardour/region_view.cc16
-rw-r--r--gtk2_ardour/region_view.h2
-rw-r--r--gtk2_ardour/streamview.cc11
-rw-r--r--gtk2_ardour/streamview.h2
-rw-r--r--gtk2_ardour/time_axis_view.cc4
-rw-r--r--gtk2_ardour/time_axis_view.h2
-rw-r--r--gtk2_ardour/time_axis_view_item.cc2
-rw-r--r--gtk2_ardour/time_axis_view_item.h5
-rw-r--r--gtk2_ardour/ui_config_vars.h1
10 files changed, 50 insertions, 3 deletions
diff --git a/gtk2_ardour/rc_option_editor.cc b/gtk2_ardour/rc_option_editor.cc
index d21e674f2a..3df7363df5 100644
--- a/gtk2_ardour/rc_option_editor.cc
+++ b/gtk2_ardour/rc_option_editor.cc
@@ -3677,6 +3677,14 @@ RCOptionEditor::RCOptionEditor ()
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_color_regions_using_track_color)
));
+ add_option (_("Appearance/Editor"),
+ new BoolOption (
+ "show-region-names",
+ _("Show Region Names"),
+ sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::get_show_region_name),
+ sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_show_region_name)
+ ));
+
#ifndef MIXBUS // hide this setting in Mixbus. Always on, 4px
ComboOption<uint32_t>* gap = new ComboOption<uint32_t> (
"vertical-region-gap",
diff --git a/gtk2_ardour/region_view.cc b/gtk2_ardour/region_view.cc
index 467cacf8b6..d0be119ae0 100644
--- a/gtk2_ardour/region_view.cc
+++ b/gtk2_ardour/region_view.cc
@@ -71,7 +71,7 @@ RegionView::RegionView (ArdourCanvas::Container* parent,
bool automation)
: TimeAxisViewItem (r->name(), *parent, tv, spu, basic_color, r->position(), r->length(), false, automation,
(automation ? TimeAxisViewItem::ShowFrame :
- TimeAxisViewItem::Visibility (TimeAxisViewItem::ShowNameText|
+ TimeAxisViewItem::Visibility ((UIConfiguration::instance().get_show_region_name() ? TimeAxisViewItem::ShowNameText : 0) |
TimeAxisViewItem::ShowNameHighlight| TimeAxisViewItem::ShowFrame)))
, _region (r)
, sync_mark(0)
@@ -959,3 +959,17 @@ RegionView::snap_sample_to_sample (sampleoffset_t x, bool ensure_snap) const
/* back to region relative, keeping the relevant divisor */
return MusicSample (sample.sample - _region->position(), sample.division);
}
+
+void
+RegionView::update_visibility ()
+{
+ /* currently only the name visibility can be changed dynamically */
+
+ if (UIConfiguration::instance().get_show_region_name()) {
+ visibility = Visibility (visibility | ShowNameText);
+ } else {
+ visibility = Visibility (visibility & ~ShowNameText);
+ }
+
+ manage_name_text ();
+}
diff --git a/gtk2_ardour/region_view.h b/gtk2_ardour/region_view.h
index 92175571ee..35a1f3d1c3 100644
--- a/gtk2_ardour/region_view.h
+++ b/gtk2_ardour/region_view.h
@@ -128,6 +128,8 @@ public:
ARDOUR::MusicSample snap_sample_to_sample (ARDOUR::sampleoffset_t, bool ensure_snap = false) const;
+ void update_visibility ();
+
protected:
/** Allows derived types to specify their visibility requirements
diff --git a/gtk2_ardour/streamview.cc b/gtk2_ardour/streamview.cc
index c32ce450f9..7cc0b81374 100644
--- a/gtk2_ardour/streamview.cc
+++ b/gtk2_ardour/streamview.cc
@@ -724,3 +724,14 @@ StreamView::setup_new_rec_layer_time (boost::shared_ptr<Region> region)
_new_rec_layer_time = max_samplepos;
}
}
+
+void
+StreamView::parameter_handler (string const & what)
+{
+ std::cerr << "SV ph for " << what << std::endl;
+ if (what == "show-region-name") {
+ for (RegionViewList::iterator i = region_views.begin (); i != region_views.end (); ++i) {
+ (*i)->update_visibility ();
+ }
+ }
+}
diff --git a/gtk2_ardour/streamview.h b/gtk2_ardour/streamview.h
index d2793c2c6d..a671b2e0f3 100644
--- a/gtk2_ardour/streamview.h
+++ b/gtk2_ardour/streamview.h
@@ -125,6 +125,8 @@ public:
/** Emitted when the height of regions has changed */
sigc::signal<void> ContentsHeightChanged;
+ virtual void parameter_handler (std::string const &);
+
protected:
StreamView (RouteTimeAxisView&, ArdourCanvas::Container* canvas_group = 0);
diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc
index 50160855f0..86eda55974 100644
--- a/gtk2_ardour/time_axis_view.cc
+++ b/gtk2_ardour/time_axis_view.cc
@@ -1199,6 +1199,10 @@ TimeAxisView::parameter_changed (string const & p)
show_selection (_editor.get_selection().time);
}
}
+
+ if (view()) {
+ view()->parameter_handler (what);
+ }
}
/** @return Pair: TimeAxisView, layer index.
diff --git a/gtk2_ardour/time_axis_view.h b/gtk2_ardour/time_axis_view.h
index 0a6444022d..00f1fafb48 100644
--- a/gtk2_ardour/time_axis_view.h
+++ b/gtk2_ardour/time_axis_view.h
@@ -306,6 +306,8 @@ protected:
void color_handler ();
void parameter_changed (std::string const &);
+ virtual void parameter_handler (std::string const &);
+
void conditionally_add_to_selection ();
void build_size_menu ();
diff --git a/gtk2_ardour/time_axis_view_item.cc b/gtk2_ardour/time_axis_view_item.cc
index b89a67242e..911b0cd73e 100644
--- a/gtk2_ardour/time_axis_view_item.cc
+++ b/gtk2_ardour/time_axis_view_item.cc
@@ -870,7 +870,7 @@ TimeAxisViewItem::manage_name_text ()
return;
}
- if (!wide_enough_for_name || !high_enough_for_name) {
+ if (!(visibility & ShowNameText) || (!wide_enough_for_name || !high_enough_for_name)) {
name_text->hide ();
return;
}
diff --git a/gtk2_ardour/time_axis_view_item.h b/gtk2_ardour/time_axis_view_item.h
index e7322037cc..d6bedf8b1c 100644
--- a/gtk2_ardour/time_axis_view_item.h
+++ b/gtk2_ardour/time_axis_view_item.h
@@ -152,6 +152,8 @@ public:
FullWidthNameHighlight = 0x80
};
+ virtual void update_visibility () {}
+
protected:
TimeAxisViewItem (const std::string &, ArdourCanvas::Item&, TimeAxisView&, double, uint32_t fill_color,
samplepos_t, samplecnt_t, bool recording = false, bool automation = false, Visibility v = Visibility (0));
@@ -237,10 +239,11 @@ protected:
bool _dragging;
double _width;
+ void manage_name_text ();
+
private:
void parameter_changed (std::string);
void manage_name_highlight ();
- void manage_name_text ();
}; /* class TimeAxisViewItem */
diff --git a/gtk2_ardour/ui_config_vars.h b/gtk2_ardour/ui_config_vars.h
index d8232bab41..adb914248f 100644
--- a/gtk2_ardour/ui_config_vars.h
+++ b/gtk2_ardour/ui_config_vars.h
@@ -118,3 +118,4 @@ UI_CONFIG_VARIABLE (bool, snap_to_grid, "snap-to-grid", true)
UI_CONFIG_VARIABLE (bool, show_grids_ruler, "show-grids-ruler", true)
UI_CONFIG_VARIABLE (bool, rulers_follow_grid, "rulers-follow-grid", false)
UI_CONFIG_VARIABLE (bool, grid_follows_internal, "grid-follows-internal", false) //this feature is deprecated, default it FALSE for now; remove it in v6
+UI_CONFIG_VARIABLE (bool, show_region_name, "show-region-name", true)