Maxime Coste
2a74b0e9e2
Buffer: insert and erase go back to taking iterators, and return iterators
2013-06-06 19:44:08 +02:00
Maxime Coste
4ef1bfa4db
Use coord instead of iterators for selections
2013-06-04 14:21:07 +02:00
Maxime Coste
3453ebbd52
BufferChangeListener: pass buffer to on_{inser,erase}
2013-06-01 00:48:46 +02:00
Maxime Coste
5e64f6d1ec
remove Selection::buffer
2013-05-30 13:59:38 +02:00
Maxime Coste
557acc5068
reorganize check_invariant in SelectionList
2013-05-30 13:59:38 +02:00
Maxime Coste
7f8d5c1fd0
Remove Range::content
2013-05-30 13:59:38 +02:00
Maxime Coste
93dd1ff3c7
Remove begin/end from Ranges, replace with min/max
...
Ranges should not be utf8 aware (needed for end), and a lot of
uses for end() were in fact looking for max.
2013-05-30 13:59:38 +02:00
Maxime Coste
9630990b74
Remove Selection::avoid_eol, move as static func in editor.cc
...
Conflicts:
src/editor.cc
2013-05-29 18:53:57 +02:00
Maxime Coste
2b12b72d6e
fix overlaps(Range, Range)
2013-05-14 13:58:19 +02:00
Maxime Coste
33740d06ee
Editor: tweak behaviour on undo/redo when selecting modified ranges
2013-05-03 18:44:26 +02:00
Maxime Coste
4c4b6a404d
add SelectionList::check_invariant
2013-05-03 18:44:26 +02:00
Maxime Coste
9b3e0c8055
Move selection update code to SelectionList
2013-05-02 19:04:59 +02:00
Maxime Coste
86f6282cbe
selecting a surrounding object goes up one level if what we find is already selected
2013-04-22 14:18:49 +02:00
Maxime Coste
2f410f62e4
Add String Range::content() const
2013-02-27 19:11:25 +01:00
Maxime Coste
4b649d386c
various code style fixes
2013-01-04 18:39:13 +01:00
Maxime Coste
cfd7ee049a
move selection updating code out of selection, to DynamicSelectionList
...
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-13 18:50:27 +01:00
Maxime Coste
892b65b355
overlaps takes Range parameters instead of Selection
2012-12-13 18:49:29 +01:00
Maxime Coste
b764a0a63e
Selection: refactoring, move CaptureList to Selection
2012-11-30 18:32:49 +01:00
Maxime Coste
e77ca7a4be
minor code simplification
2012-11-26 18:50:34 +01:00
Maxime Coste
22c545884f
Selection: allow write access to first and last
2012-11-19 14:19:31 +01:00
Maxime Coste
14f980e4e0
move overlaps function to selection.hh
2012-11-12 20:27:56 +01:00
Maxime Coste
5a267ab627
selections should always point to an utf8 character sequence start byte
2012-10-08 14:26:57 +02:00
Maxime Coste
79d8d082bd
Store capture groups with selections in editor, and access them through dynamic registers
2012-09-26 20:43:42 +02:00
Maxime Coste
a8d2482eb6
Editor now stores selections as SelectionAndCapturesList
2012-09-26 20:33:47 +02:00
Maxime Coste
11d5ae2743
add override markers
2012-09-04 00:17:41 +02:00
Maxime Coste
a2aefa2998
avoid keeping end of lines selected in Editor::erase
2012-08-15 18:20:02 +02:00
Maxime Coste
31c0931dff
Go back to a generic BufferChangeListener interface for selection update
2012-07-16 21:51:37 +02:00
Maxime Coste
e4b872abd2
remove ModificationListener and use a list of iterators to update instead
...
This permits to fix a bug in BufferIterator::upgrade, replaced by
BufferIterator::on_insert and BufferIterator::on_erase. ModificationListener
was only used to updating iterators anyway.
2012-04-04 13:56:19 +00:00
Maxime Coste
df0f7b4689
rename BufferString to String
2012-03-08 21:23:29 +00:00
Maxime Coste
bc3d20bf2a
document Selection class
2012-02-27 20:01:59 +00:00
Maxime Coste
d84d085cc2
Merge captures into registers, implements register insertion
2012-02-09 23:47:55 +00:00
Maxime Coste
69d96c90da
extract an Editor class from Window and refactor
2012-01-31 19:12:06 +00:00