diff options
author | Carl Hetherington <carl@carlh.net> | 2011-09-14 20:39:03 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2011-09-14 20:39:03 +0000 |
commit | 315f41f82f1e5e5cf941e83895848a6372670935 (patch) | |
tree | 7d8f919229b4b523640f5a19b245d2817f54428e | |
parent | 8f39701908660bbf2c7d2f2867ea83638daf33f0 (diff) |
Option to glue new markers to bars and beats (part of
#4202).
git-svn-id: svn://localhost/ardour2/branches/3.0@10087 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | gtk2_ardour/session_option_editor.cc | 9 | ||||
-rw-r--r-- | libs/ardour/ardour/session_configuration_vars.h | 1 | ||||
-rw-r--r-- | libs/ardour/location.cc | 3 |
3 files changed, 12 insertions, 1 deletions
diff --git a/gtk2_ardour/session_option_editor.cc b/gtk2_ardour/session_option_editor.cc index 73663ebe22..bd5f359297 100644 --- a/gtk2_ardour/session_option_editor.cc +++ b/gtk2_ardour/session_option_editor.cc @@ -293,6 +293,15 @@ SessionOptionEditor::SessionOptionEditor (Session* s) sigc::mem_fun (*_session_config, &SessionConfiguration::get_bwf_organization_code), sigc::mem_fun (*_session_config, &SessionConfiguration::set_bwf_organization_code) )); + + add_option (_("Misc"), new OptionEditorHeading (_("Glue to bars and beats"))); + + add_option (_("Misc"), new BoolOption ( + "glue-new-markers-to-bars-and-beats", + _("Glue new markers to bars and beats"), + sigc::mem_fun (*_session_config, &SessionConfiguration::get_glue_new_markers_to_bars_and_beats), + sigc::mem_fun (*_session_config, &SessionConfiguration::set_glue_new_markers_to_bars_and_beats) + )); } void diff --git a/libs/ardour/ardour/session_configuration_vars.h b/libs/ardour/ardour/session_configuration_vars.h index 5924adcc86..acefc92506 100644 --- a/libs/ardour/ardour/session_configuration_vars.h +++ b/libs/ardour/ardour/session_configuration_vars.h @@ -61,3 +61,4 @@ CONFIG_VARIABLE (SyncSource, sync_source, "sync-source", JACK) CONFIG_VARIABLE (InsertMergePolicy, insert_merge_policy, "insert-merge-policy", InsertMergeRelax) CONFIG_VARIABLE (framecnt_t, timecode_offset, "timecode-offset", 0) CONFIG_VARIABLE (bool, timecode_offset_negative, "timecode-offset-negative", true) +CONFIG_VARIABLE (bool, glue_new_markers_to_bars_and_beats, "glue-new-markers-to-bars-and-beats", false) diff --git a/libs/ardour/location.cc b/libs/ardour/location.cc index 7095596101..b6a09d863a 100644 --- a/libs/ardour/location.cc +++ b/libs/ardour/location.cc @@ -54,6 +54,7 @@ Location::Location (Session& s) assert (_end >= 0); } +/** Construct a new Location, giving it the position lock style determined by glue-new-markers-to-bars-and-beats */ Location::Location (Session& s, framepos_t sample_start, framepos_t sample_end, const std::string &name, Flags bits) : SessionHandleRef (s) , _name (name) @@ -61,7 +62,7 @@ Location::Location (Session& s, framepos_t sample_start, framepos_t sample_end, , _end (sample_end) , _flags (bits) , _locked (false) - , _position_lock_style (AudioTime) + , _position_lock_style (s.config.get_glue_new_markers_to_bars_and_beats() ? MusicTime : AudioTime) { recompute_bbt_from_frames (); |