aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Selection.cxx
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2013-12-17 14:16:29 +1100
committerNeil <nyamatongwe@gmail.com>2013-12-17 14:16:29 +1100
commit07510a6ffd4f5b286c0d39711ddd9a651c4a84e2 (patch)
tree9e8a3b88e8b0cf0f330ce63bfa093a41eb9a1e3c /src/Selection.cxx
parent5d22624b5ff89b8e3fcefeb27c19012c668b247c (diff)
downloadscintilla-mirror-07510a6ffd4f5b286c0d39711ddd9a651c4a84e2.tar.gz
Added DropSelectionN API.
Diffstat (limited to 'src/Selection.cxx')
-rw-r--r--src/Selection.cxx15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/Selection.cxx b/src/Selection.cxx
index 0c02c198b..ae4d8bfc7 100644
--- a/src/Selection.cxx
+++ b/src/Selection.cxx
@@ -305,6 +305,21 @@ void Selection::AddSelectionWithoutTrim(SelectionRange range) {
mainRange = ranges.size() - 1;
}
+void Selection::DropSelection(size_t r) {
+ if ((ranges.size() > 1) && (r < ranges.size())) {
+ size_t mainNew = mainRange;
+ if (mainNew >= r) {
+ if (mainNew == 0) {
+ mainNew = ranges.size() - 2;
+ } else {
+ mainNew--;
+ }
+ }
+ ranges.erase(ranges.begin() + r);
+ mainRange = mainNew;
+ }
+}
+
void Selection::TentativeSelection(SelectionRange range) {
if (!tentativeMain) {
rangesSaved = ranges;