diff options
author | nyamatongwe <unknown> | 2009-07-30 08:29:43 +0000 |
---|---|---|
committer | nyamatongwe <unknown> | 2009-07-30 08:29:43 +0000 |
commit | b8a801fe139ea37cba36dc7b724e03495cf847e9 (patch) | |
tree | 089cc73c6396c1d45e59dc3c30ec5633c1857d11 /src/Selection.h | |
parent | 5102901f8df958fe60fdb0a6d3354ad52bd955c2 (diff) | |
download | scintilla-mirror-b8a801fe139ea37cba36dc7b724e03495cf847e9.tar.gz |
When using Ctrl+Drag for multiple selection when previous selections
dragged over but then that area is deselected, reveal the previous
selections again. This allows the user to undo some bad effects when the
mouse moves further than wanted.
Diffstat (limited to 'src/Selection.h')
-rw-r--r-- | src/Selection.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Selection.h b/src/Selection.h index ff13f2130..c18e5c02e 100644 --- a/src/Selection.h +++ b/src/Selection.h @@ -123,9 +123,11 @@ struct SelectionRange { class Selection { std::vector<SelectionRange> ranges; + std::vector<SelectionRange> rangesSaved; SelectionRange rangeRectangular; size_t mainRange; bool moveExtends; + bool tentativeMain; public: enum selTypes { noSel, selStream, selRectangle, selLines, selThin }; selTypes selType; @@ -150,13 +152,15 @@ public: void TrimSelection(SelectionRange range); void SetSelection(SelectionRange range); void AddSelection(SelectionRange range); - void AddSelection(SelectionPosition spPos); + void TentativeSelection(SelectionRange range); + void CommitTentative(); int CharacterInSelection(int posCharacter) const; int InSelectionForEOL(int pos) const; int VirtualSpaceFor(int pos) const; void Clear(); void RemoveDuplicates(); void RotateMain(); + bool Tentative() const { return tentativeMain; } }; #ifdef SCI_NAMESPACE |