The class textselection is a RangeSet that is used by the view of the document.
More...
|
| TextSelection (TextEditorController *controller) |
| Constructs the textextselection object. More...
|
|
| TextSelection (const TextSelection &selection) |
| A copy constructor for copying a text-selection. More...
|
|
virtual | ~TextSelection () |
| The text selection destructor. More...
|
|
virtual TextEditorController * | textEditorController () const |
| Returns the controller for this selection. More...
|
|
| TextRangeSet (TextDocument *doc) |
| Constructs a textrange set. More...
|
|
| TextRangeSet (const TextRangeSet &sel) |
| the copy constructor for copying a selection More...
|
|
| TextRangeSet (const TextRangeSet *sel) |
|
virtual | ~TextRangeSet () |
|
TextRangeSet & | operator= (const TextRangeSet &sel) |
| copy the value from the rangeset More...
|
|
TextRangeSet * | clone () const |
|
virtual int | rangeCount () const |
|
virtual TextRange & | range (int idx) |
| returns the selection range More...
|
|
virtual const TextRange & | constRange (int idx) const |
| Returns a const reference from the. More...
|
|
virtual void | addRange (int anchor, int caret) |
| Adds a text range. More...
|
|
virtual void | addRange (const TextRange &range) |
| adds a range More...
|
|
virtual void | removeRange (int idx) |
| this method removes the range More...
|
|
virtual void | clear () |
| This method removes ALL carets except the 'global' selection. More...
|
|
virtual void | toSingleRange () |
| Converts the range to a single range selection. More...
|
|
virtual void | sortRanges () |
| Sorts the ranges. More...
|
|
| TextRangeSetBase (TextDocument *doc) |
|
virtual | ~TextRangeSetBase () |
|
TextRange & | lastRange () |
| this method returns the last range More...
|
|
TextRange & | firstRange () |
| the first range More...
|
|
int | rangeIndexAtOffset (int offset) |
| This method returns the range index at the given offset. More...
|
|
bool | rangesBetweenOffsets (int offsetBegin, int offsetEnd, int &firstIndex, int &lastIndex) |
| returns the range indices that are being overlapped by the given offsetBegin and offsetEnd More...
|
|
bool | rangesBetweenOffsetsExlusiveEnd (int offsetBegin, int offsetEnd, int &firstIndex, int &lastIndex) |
| returns the range indices that are being overlapped by the given offsetBegin and offsetEnd More...
|
|
bool | rangesAtLine (int line, int &firstIndex, int &lastIndex) |
| Returns the range indices that are being used on the given line. More...
|
|
bool | hasSelection () |
| This method checks if there's a selection available A selection is an range with a different anchor then it's caret. More...
|
|
bool | equals (TextRangeSetBase &sel) |
| This method checks if two selections are equal. More...
|
|
void | replaceAll (const TextRangeSetBase &base) |
| Replaces all ranges with the supplied ranges. More...
|
|
QString | getSelectedText () |
| This method returns all selected text For every filled selection range a line is returned. More...
|
|
QString | getSelectedTextExpandedToFullLines () |
| Returns ALL lines that are touched by the selection. This means Full lines are always returned. More...
|
|
QString | rangesAsString () const |
| This method converts the selection ranges as a string, in the format: anchor>caret,anchor>caret. More...
|
|
void | beginChanges () |
| This method starts the changes. More...
|
|
void | endChanges () |
|
void | endChangesWithoutProcessing () |
| Ends the changes without processing. WARNING, you should ONLY call this method if the operation you performed kept the rangeset in a valid state. This (at least) means the ranges need to be sorted. More...
|
|
bool | changing () const |
| Checks if the current rangeset is in a changing state. More...
|
|
void | resetAnchors () |
| This method resets all anchors to the positions of the carets. More...
|
|
void | clearSelection () |
| This method moves all carets to the anchor positions. More...
|
|
void | addTextRanges (const TextRangeSetBase &sel) |
| An union operation This method adds all text selection-items. Merges all ranges. More...
|
|
void | substractTextRanges (const TextRangeSetBase &sel) |
| The difference operation This method substracts the text-selection from the current selection. More...
|
|
void | substractRange (int min, int max) |
| This method substracts a single range from the ranges list. More...
|
|
void | expandToFullLines (int amount) |
| Expands the selection so it selects full lines. More...
|
|
void | expandToWords (const QString &whitespace, const QStringList &characterGroups) |
| Expands the selection to full words. More...
|
|
void | selectWordAt (int offset, const QString &whitespace, const QStringList &characterGroups) |
| Selects the word at the given offset. More...
|
|
void | toggleWordSelectionAt (int offset, const QString &whitespace, const QStringList &characterGroups) |
| Toggles a word selection at the given location The idea is the following, double-click an empty place to select the wordt at the given location Double click an existing selection to remove the selection (and caret) More...
|
|
void | moveCarets (int amount) |
| This method moves the carets by character. More...
|
|
void | moveCaretsOrDeselect (int amount) |
| This method moves the carets or deslects the given character. More...
|
|
void | moveCaretsByCharGroup (int amount, const QString &whitespace, const QStringList &charGroups) |
| This method moves the carets. More...
|
|
void | moveCaretsToLineBoundary (int direction, const QString &whitespace) |
| Moves al carets to the given line boundary (line-boundary automaticly switches between column 0 and first non-whitespace character) More...
|
|
void | moveCaretsByLine (int amount) |
|
void | changeSpatial (int pos, int length, int newLength, bool sticky=false, bool performDelete=false) |
| This method adds (or removes) the given spatial length at the given location. More...
|
|
void | setRange (int anchor, int caret, int index=0) |
| This mehtod sets the first range item. More...
|
|
void | setRange (const TextRange &range, int index=0) |
| Sets the range at the given index. Make sure the given index exists!! More...
|
|
TextDocument * | textDocument () const |
| Returns the associated textdocument. More...
|
|
void | mergeOverlappingRanges (bool joinBorders) |
| This method merges overlapping ranges. More...
|
|
The class textselection is a RangeSet that is used by the view of the document.
The textselection is placed in the view directory because it closely relates to the view of the textdocument
For instance moving line/up and line/down isn an operation that isn't possible on the document side. Because we support variable font widts.. Also 'remembering' the caret screen-x and -y positions isn't relevant for a docuemnt. That is stuff that needs to be placed in the view side