summaryrefslogtreecommitdiff
path: root/libs/ardour/enums.cc
diff options
context:
space:
mode:
authorColin Fletcher <colin.m.fletcher@googlemail.com>2014-11-18 13:52:42 +0000
committerColin Fletcher <colin.m.fletcher@googlemail.com>2014-12-19 17:12:04 +0000
commitd4a31419273d55a5de8845308076c61d2a612cf7 (patch)
tree1c8b9af46aa70e164d19ec99a59e6da687535294 /libs/ardour/enums.cc
parentf4e0fec179caf975c808e20670d7a53082c486bd (diff)
Add a config option to control region selection after split.
Add a configuration variable to choose the behaviour of the region selection after splitting selected regions. Add options to choose between all eight possible combinations of 'existing unmodified selected regions', 'newly-created regions to left of split', and 'newly-created regions to right of split', but comment out all but the three least crazy ones for now. If anyone wants them, they're there.
Diffstat (limited to 'libs/ardour/enums.cc')
-rw-r--r--libs/ardour/enums.cc26
1 files changed, 26 insertions, 0 deletions
diff --git a/libs/ardour/enums.cc b/libs/ardour/enums.cc
index c1eaa00977..0f60e3589d 100644
--- a/libs/ardour/enums.cc
+++ b/libs/ardour/enums.cc
@@ -88,6 +88,7 @@ setup_enum_writer ()
TimecodeFormat _Session_TimecodeFormat;
Session::PullupFormat _Session_PullupFormat;
FadeShape _FadeShape;
+ RegionSelectionAfterSplit _RegionSelectionAfterSplit;
IOChange _IOChange;
AutomationType _AutomationType;
AutoState _AutoState;
@@ -460,6 +461,16 @@ setup_enum_writer ()
REGISTER_ENUM (FadeSymmetric);
REGISTER (_FadeShape);
+ REGISTER_ENUM(None);
+ REGISTER_ENUM(NewlyCreatedLeft);
+ REGISTER_ENUM(NewlyCreatedRight);
+ REGISTER_ENUM(NewlyCreatedBoth);
+ REGISTER_ENUM(Existing);
+ REGISTER_ENUM(ExistingNewlyCreatedLeft);
+ REGISTER_ENUM(ExistingNewlyCreatedRight);
+ REGISTER_ENUM(ExistingNewlyCreatedBoth);
+ REGISTER (_RegionSelectionAfterSplit);
+
REGISTER_CLASS_ENUM (Diskstream, Recordable);
REGISTER_CLASS_ENUM (Diskstream, Hidden);
REGISTER_CLASS_ENUM (Diskstream, Destructive);
@@ -918,6 +929,7 @@ std::ostream& operator<<(std::ostream& o, const Evoral::OverlapType& var)
std::string s = enum_2_string (var);
return o << s;
}
+
std::istream& operator>>(std::istream& o, FadeShape& var)
{
std::string s;
@@ -931,3 +943,17 @@ std::ostream& operator<<(std::ostream& o, const FadeShape& var)
std::string s = enum_2_string (var);
return o << s;
}
+
+std::istream& operator>>(std::istream& o, RegionSelectionAfterSplit& var)
+{
+ std::string s;
+ o >> s;
+ var = (RegionSelectionAfterSplit) string_2_enum (s, var);
+ return o;
+}
+
+std::ostream& operator<<(std::ostream& o, const RegionSelectionAfterSplit& var)
+{
+ std::string s = enum_2_string (var);
+ return o << s;
+}