summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornick_m <mainsbridge@gmail.com>2017-06-17 04:25:50 +1000
committernick_m <mainsbridge@gmail.com>2017-07-22 02:15:20 +1000
commit33c06fd3ca3519e1322a4d5e6b3ca8339fe7e7a2 (patch)
treea8483320c90c75fcd5118aed5cc94b1abdcce955
parent29e580a2493467efb864d0e9a0d0a0a3b5f2ec4e (diff)
Indicate musical position lock style of regions and locations using BEAMED EIGHTH NOTES in name
Also attempt to indicate lock type with symbols CROSS OF JERUSALEM and LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR
-rw-r--r--gtk2_ardour/editor_markers.cc8
-rw-r--r--gtk2_ardour/region_view.cc14
2 files changed, 16 insertions, 6 deletions
diff --git a/gtk2_ardour/editor_markers.cc b/gtk2_ardour/editor_markers.cc
index 64018f3f21..6fda0ad3f1 100644
--- a/gtk2_ardour/editor_markers.cc
+++ b/gtk2_ardour/editor_markers.cc
@@ -165,6 +165,7 @@ Editor::add_new_location_internal (Location* location)
}
location->name_changed.connect (*this, invalidator (*this), boost::bind (&Editor::location_changed, this, _1), gui_context());
+ location->position_lock_style_changed.connect (*this, invalidator (*this), boost::bind (&Editor::location_changed, this, _1), gui_context());
location->FlagsChanged.connect (*this, invalidator (*this), boost::bind (&Editor::location_flags_changed, this, location), gui_context());
pair<Location*,LocationMarkers*> newpair;
@@ -205,7 +206,12 @@ Editor::location_changed (Location *location)
return;
}
- lam->set_name (location->name ());
+ if (location->position_lock_style() == MusicTime) {
+ lam->set_name ("\u266B" + location->name ()); // BEAMED EIGHTH NOTES
+ } else {
+ lam->set_name (location->name ());
+ }
+
lam->set_position (location->start(), location->end());
if (location->is_auto_loop()) {
diff --git a/gtk2_ardour/region_view.cc b/gtk2_ardour/region_view.cc
index b5ffc582ce..5d0667be72 100644
--- a/gtk2_ardour/region_view.cc
+++ b/gtk2_ardour/region_view.cc
@@ -377,6 +377,9 @@ RegionView::region_changed (const PropertyChange& what_changed)
if (what_changed.contains (ARDOUR::Properties::name)) {
region_renamed ();
}
+ if (what_changed.contains (ARDOUR::Properties::position_lock_style)) {
+ region_renamed ();
+ }
if (what_changed.contains (ARDOUR::Properties::sync_position)) {
region_sync_changed ();
}
@@ -559,21 +562,22 @@ RegionView::make_name () const
std::string str;
// XXX nice to have some good icons for this
+ if (_region->position_lock_style() == MusicTime) {
+ str += "\u266B"; // BEAMED EIGHTH NOTES
+ }
if (_region->locked()) {
- str += '>';
+ str += "\u2629"; // CROSS OF JERUSALEM
str += _region->name();
- str += '<';
} else if (_region->position_locked()) {
- str += '{';
+ str += "\u21B9"; // LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR
str += _region->name();
- str += '}';
} else if (_region->video_locked()) {
str += '[';
str += _region->name();
str += ']';
} else {
- str = _region->name();
+ str += _region->name();
}
if (_region->muted()) {