summaryrefslogtreecommitdiff
path: root/src/selection.hh
AgeCommit message (Collapse)Author
2015-01-16Add support for per type default memory domainMaxime Coste
2015-01-12replace all std::vector with VectorMaxime Coste
2015-01-06Rename memoryview to ArrayViewMaxime Coste
2014-09-09Add support for target column preservationMaxime Coste
Fixes #64
2014-07-05Add support for paste all (on <a-[pP]>)Maxime Coste
Paste all pastes all yanked text at all selections, selecting each pasted text. Replace paste moves to R, and concat yank/concat delete (Y and D) are removed. Fixes #161
2014-06-02Move compute_modified_ranges to selection.cc and use an optimized approachMaxime Coste
2014-06-01Extract merge_overlapping as a free function templateMaxime Coste
2014-05-31remove reverse iterator from SelectionListMaxime Coste
2014-05-29Use forward iteration on selections, and take advantage of it when updatingMaxime Coste
SelectionList::update now is optimized for the common case where changes are sorted, the algorithm is O(m*n) with m the number of sorted ranges in the changes. In the common case, m should be very small.
2014-05-26Go back to Buffer::Change based implementation for SelectionList::updateMaxime Coste
However take into account the ordering of selections in insert and erase methods, so that we update selection position cheaply.
2014-05-25Use SelectionList::insert in InputModes::InsertMaxime Coste
2014-05-25Move insert/erase methods from normal.cc to member functions in SelectionListMaxime Coste
It does look like the Editor class is attempting a sneaky comeback...
2014-05-17Minor cleanup in SelectionList methodsMaxime Coste
2014-05-14Iterate in reversed order on selections when modifing bufferMaxime Coste
This way, update only needs to be called once everything is done as we always modify after the next selection to be used.
2014-05-13Make it harder to have an invalid SelectionListMaxime Coste
2014-05-13SelectionList know its buffer and timestampMaxime Coste
2014-05-13Pass a at_end param to BufferChangeListener::on_{insert,erase}Maxime Coste
2014-05-12SelectionList no longer inherit from std::vectorMaxime Coste
2014-05-07Refactor LineAndColumn coordinatesMaxime Coste
BufferCoord -> ByteCoord DisplayCoord -> CharCoord Moved their definition along with LineAndColumn into coord.hh
2014-04-28Move some buffer related utility functions to buffer_utils.{cc,hh}Maxime Coste
2014-04-02Fix clang compilationMaxime Coste
2014-03-29Remove Range struct, merge it back in SelectionMaxime Coste
2014-01-28Rename selections first,last to more explicit anchor,cursorMaxime Coste
2014-01-13Much faster implementation of SelectionList::merge_overlappingMaxime Coste
2013-12-15Fix replace_with_char behaviour, keep the same selectionsMaxime Coste
2013-12-14Remove Editor::select methods, add a non-const selections getterMaxime Coste
2013-12-14Move (keep|flip|remove|clear)_selections from editor method to free selectorsMaxime Coste
2013-12-14Move main selection index to SelectionListMaxime Coste
2013-07-26LineAndColumns: always pass by valueMaxime Coste
2013-07-12Editor: clamp coordinates in select(BufferCoord)Maxime Coste
2013-06-18restore compilation with gcc 4.7Maxime Coste
2013-06-06Buffer: insert and erase go back to taking iterators, and return iteratorsMaxime Coste
2013-06-04Use coord instead of iterators for selectionsMaxime Coste
2013-06-01BufferChangeListener: pass buffer to on_{inser,erase}Maxime Coste
2013-05-30remove Selection::bufferMaxime Coste
2013-05-30reorganize check_invariant in SelectionListMaxime Coste
2013-05-30Remove Range::contentMaxime Coste
2013-05-30Remove begin/end from Ranges, replace with min/maxMaxime Coste
Ranges should not be utf8 aware (needed for end), and a lot of uses for end() were in fact looking for max.
2013-05-29Remove Selection::avoid_eol, move as static func in editor.ccMaxime Coste
Conflicts: src/editor.cc
2013-05-14fix overlaps(Range, Range)Maxime Coste
2013-05-03Editor: tweak behaviour on undo/redo when selecting modified rangesMaxime Coste
2013-05-03add SelectionList::check_invariantMaxime Coste
2013-05-02Move selection update code to SelectionListMaxime Coste
2013-04-22selecting a surrounding object goes up one level if what we find is already ↵Maxime Coste
selected
2013-02-27Add String Range::content() constMaxime Coste
2013-01-04various code style fixesMaxime Coste
2012-12-13move selection updating code out of selection, to DynamicSelectionListMaxime Coste
this avoids a lot of unnecessary (add|remove)_change_listener as creating temporary Selections do not call that anymore. Use can choose between a SelectionList which or a DynamicSelectionList depending on wethear the buffer will be modified or not during the selections lifetime.
2012-12-13overlaps takes Range parameters instead of SelectionMaxime Coste
2012-11-30Selection: refactoring, move CaptureList to SelectionMaxime Coste
2012-11-26minor code simplificationMaxime Coste