offer alternative region marker "promotion" method to CD marker (rather than just global marker)
This commit is contained in:
parent
8774740e72
commit
c444a81f1a
|
@ -364,6 +364,7 @@
|
|||
<menuitem action='add-region-cue-marker'/>
|
||||
<menuitem action='clear-region-cue-markers'/>
|
||||
<separator/>
|
||||
<menuitem action='make-region-markers-cd'/>
|
||||
<menuitem action='make-region-markers-global'/>
|
||||
</menu>
|
||||
<menu action='RegionMenuTrim'>
|
||||
|
|
|
@ -588,7 +588,7 @@ public:
|
|||
void add_region_marker ();
|
||||
void clear_region_markers ();
|
||||
void remove_region_marker (ARDOUR::CueMarker&);
|
||||
void make_region_markers_global ();
|
||||
void make_region_markers_global (bool as_cd_markers);
|
||||
|
||||
protected:
|
||||
void map_transport_state ();
|
||||
|
|
|
@ -1654,7 +1654,8 @@ Editor::register_region_actions ()
|
|||
|
||||
/* PART 3: actions that operate on the selection and also require the edit point location */
|
||||
|
||||
register_region_action (_region_actions, RegionActionTarget (SelectedRegions|EditPointRegions), "make-region-markers-global", _("Convert Region Cue Markers to Global Markers"), sigc::mem_fun (*this, &Editor::make_region_markers_global));
|
||||
register_region_action (_region_actions, RegionActionTarget (SelectedRegions|EditPointRegions), "make-region-markers-cd", _("Convert Region Cue Markers to CD Markers"), sigc::bind (sigc::mem_fun (*this, &Editor::make_region_markers_global), true));
|
||||
register_region_action (_region_actions, RegionActionTarget (SelectedRegions|EditPointRegions), "make-region-markers-global", _("Convert Region Cue Markers to Global Markers"), sigc::bind (sigc::mem_fun (*this, &Editor::make_region_markers_global), false));
|
||||
register_region_action (_region_actions, RegionActionTarget (SelectedRegions|EditPointRegions), "add-region-cue-marker", _("Add Region Cue Marker"), sigc::mem_fun (*this, &Editor::add_region_marker));
|
||||
register_region_action (_region_actions, RegionActionTarget (SelectedRegions|EditPointRegions), "clear-region-cue-markers", _("Clear Region Cue Markers"), sigc::mem_fun (*this, &Editor::clear_region_markers));
|
||||
register_region_action (_region_actions, RegionActionTarget (SelectedRegions|EditPointRegions), "set-region-sync-position", _("Set Sync Position"), sigc::mem_fun (*this, &Editor::set_region_sync_position));
|
||||
|
|
|
@ -8839,7 +8839,7 @@ Editor::clear_region_markers ()
|
|||
}
|
||||
|
||||
void
|
||||
Editor::make_region_markers_global ()
|
||||
Editor::make_region_markers_global (bool as_cd_marker)
|
||||
{
|
||||
RegionSelection rs = get_regions_from_selection_and_edit_point ();
|
||||
XMLNode& before (_session->locations()->get_state());
|
||||
|
@ -8858,7 +8858,7 @@ Editor::make_region_markers_global ()
|
|||
for (CueMarkers::iterator cm = cues.begin(); cm != cues.end(); ++cm) {
|
||||
/* marker position is absolute within source */
|
||||
const samplepos_t absolute_pos = (cm->position() - (*r)->region()->start()) + (*r)->region()->position();
|
||||
Location* loc = new Location (*_session, absolute_pos, absolute_pos, cm->text(), Location::IsMark);
|
||||
Location* loc = new Location (*_session, absolute_pos, absolute_pos, cm->text(), as_cd_marker ? Location::Flags (Location::IsMark|Location::IsCDMarker) : Location::IsMark);
|
||||
_session->locations()->add (loc, false);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue