Kate::TextRange
#include <katetextrange.h>
Additional Inherited Members | |
Public Types inherited from KTextEditor::MovingRange | |
enum | EmptyBehavior { AllowEmpty = 0x0 , InvalidateIfEmpty = 0x1 } |
enum | InsertBehavior { DoNotExpand = 0x0 , ExpandLeft = 0x1 , ExpandRight = 0x2 } |
typedef QFlags< InsertBehavior > | InsertBehaviors |
Protected Member Functions inherited from KTextEditor::MovingRange | |
MovingRange () | |
Detailed Description
Class representing a 'clever' text range.
It will automagically move if the text inside the buffer it belongs to is modified. By intention no subclass of KTextEditor::Range, must be converted manually. A TextRange is allowed to be empty. If you call setInvalidateIfEmpty(true), a TextRange will become automatically invalid as soon as start() == end() position holds.
Definition at line 35 of file katetextrange.h.
Constructor & Destructor Documentation
◆ TextRange() [1/2]
Kate::TextRange::TextRange | ( | TextBuffer & | buffer, |
KTextEditor::Range | range, | ||
InsertBehaviors | insertBehavior, | ||
EmptyBehavior | emptyBehavior = AllowEmpty ) |
Construct a text range.
A TextRange is not allowed to be empty, as soon as start == end position, it will become automatically invalid!
- Parameters
-
buffer parent text buffer range The initial text range assumed by the new range. insertBehavior Define whether the range should expand when text is inserted adjacent to the range. emptyBehavior Define whether the range should invalidate itself on becoming empty.
Definition at line 16 of file katetextrange.cpp.
◆ TextRange() [2/2]
|
delete |
No copy constructor, don't allow this to be copied.
◆ ~TextRange()
|
override |
Destruct the text block.
Definition at line 39 of file katetextrange.cpp.
Member Function Documentation
◆ attribute()
|
inlineoverridevirtual |
Gets the active Attribute for this range.
- Returns
- a pointer to the active attribute
Implements KTextEditor::MovingRange.
Definition at line 239 of file katetextrange.h.
◆ attributeOnlyForViews()
|
inlineoverridevirtual |
Is this range's attribute only visible in views, not for example prints? Default is false.
- Returns
- range visible only for views
Implements KTextEditor::MovingRange.
Definition at line 286 of file katetextrange.h.
◆ document()
|
overridevirtual |
Gets the document to which this range is bound.
- Returns
- a pointer to the document
Implements KTextEditor::MovingRange.
Definition at line 284 of file katetextrange.cpp.
◆ emptyBehavior()
|
inlineoverridevirtual |
Will this range invalidate itself if it becomes empty?
- Returns
- behavior on becoming empty
Implements KTextEditor::MovingRange.
Definition at line 89 of file katetextrange.h.
◆ end()
|
inlineoverridevirtual |
Retrieve end cursor of this range, read-only.
- Returns
- end cursor
Implements KTextEditor::MovingRange.
Definition at line 172 of file katetextrange.h.
◆ endInternal()
|
inline |
Nonvirtual version of end(), which is faster.
- Returns
- end cursor
Definition at line 181 of file katetextrange.h.
◆ feedback()
|
inlineoverridevirtual |
Gets the active MovingRangeFeedback for this range.
- Returns
- a pointer to the active MovingRangeFeedback
Implements KTextEditor::MovingRange.
Definition at line 267 of file katetextrange.h.
◆ hasAttribute()
|
inline |
- Returns
- whether a nonzero attribute is set. This is faster than checking attribute(), because the reference-counting is omitted.
Definition at line 248 of file katetextrange.h.
◆ insertBehaviors()
|
overridevirtual |
Get current insert behaviors.
- Returns
- current insert behaviors
Implements KTextEditor::MovingRange.
Definition at line 78 of file katetextrange.cpp.
◆ operator KTextEditor::Range()
|
inline |
Convert this clever range into a dumb one.
Equal to toRange, allowing to use implicit conversion.
- Returns
- normal range
Definition at line 209 of file katetextrange.h.
◆ operator=()
No assignment operator, no copying around.
◆ setAttribute()
|
overridevirtual |
Sets the currently active attribute for this range.
This will trigger update of the relevant view parts.
- Parameters
-
attribute Attribute to assign to this range. If null, simply removes the previous Attribute.
Implements KTextEditor::MovingRange.
Definition at line 232 of file katetextrange.cpp.
◆ setAttributeOnlyForViews()
|
overridevirtual |
Set if this range's attribute is only visible in views, not for example prints.
- Parameters
-
onlyForViews attribute only valid for views
Implements KTextEditor::MovingRange.
Definition at line 262 of file katetextrange.cpp.
◆ setEmptyBehavior()
|
overridevirtual |
Set if this range will invalidate itself if it becomes empty.
- Parameters
-
emptyBehavior behavior on becoming empty
Implements KTextEditor::MovingRange.
Definition at line 93 of file katetextrange.cpp.
◆ setFeedback()
|
overridevirtual |
Sets the currently active MovingRangeFeedback for this range.
This will trigger evaluation if feedback must be send again (for example if mouse is already inside range).
- Parameters
-
feedback MovingRangeFeedback to assign to this range. If null, simply removes the previous MovingRangeFeedback.
Implements KTextEditor::MovingRange.
Definition at line 247 of file katetextrange.cpp.
◆ setInsertBehaviors()
|
overridevirtual |
Set insert behaviors.
- Parameters
-
insertBehaviors new insert behaviors
Implements KTextEditor::MovingRange.
Definition at line 61 of file katetextrange.cpp.
◆ setRange() [1/4]
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Set the range of this range A TextRange is not allowed to be empty, as soon as start == end position, it will become automatically invalid!
- Parameters
-
start new start for this clever range end new end for this clever range
Definition at line 116 of file katetextrange.h.
◆ setRange() [2/4]
|
overridevirtual |
Set the range of this range.
A TextRange is not allowed to be empty, as soon as start == end position, it will become automatically invalid!
- Parameters
-
range new range for this clever range
Implements KTextEditor::MovingRange.
Definition at line 109 of file katetextrange.cpp.
◆ setRange() [3/4]
|
overridevirtual |
Set the range of this range and the connected attribute.
Avoids internal overhead of separate setting that.
A TextRange is not allowed to be empty, as soon as start == end position, it will become automatically invalid!
- Parameters
-
range new range for this clever range attribute Attribute to assign to this range. If null, simply removes the previous Attribute.
- Since
- 6.0
Implements KTextEditor::MovingRange.
Definition at line 168 of file katetextrange.cpp.
◆ setRange() [4/4]
|
overridevirtual |
Set the range of this range and the connected attribute and Z-depth.
Avoids internal overhead of separate setting that.
A TextRange is not allowed to be empty, as soon as start == end position, it will become automatically invalid!
- Parameters
-
range new range for this clever range attribute Attribute to assign to this range. If null, simply removes the previous Attribute. zDepth new Z-depth of this range
- Since
- 6.0
Implements KTextEditor::MovingRange.
Definition at line 175 of file katetextrange.cpp.
◆ setView()
|
overridevirtual |
Sets the currently active view for this range.
This will trigger update of the relevant view parts, if the view changed. Set view before the attribute, that will avoid not needed redraws.
- Parameters
-
view View to assign to this range. If null, simply removes the previous view.
Implements KTextEditor::MovingRange.
Definition at line 215 of file katetextrange.cpp.
◆ setZDepth()
|
overridevirtual |
Set the current Z-depth of this range.
Ranges with smaller Z-depth than others will win during rendering. This will trigger update of the relevant view parts, if the depth changed. Set depth before the attribute, that will avoid not needed redraws. Default is 0.0.
- Parameters
-
zDepth new Z-depth of this range
Implements KTextEditor::MovingRange.
Definition at line 268 of file katetextrange.cpp.
◆ spansMultipleBlocks()
|
inline |
Definition at line 320 of file katetextrange.h.
◆ start()
|
inlineoverridevirtual |
Retrieve start cursor of this range, read-only.
- Returns
- start cursor
Implements KTextEditor::MovingRange.
Definition at line 154 of file katetextrange.h.
◆ startInternal()
|
inline |
Non-virtual version of start(), which is faster.
- Returns
- start cursor
Definition at line 163 of file katetextrange.h.
◆ toLineRange()
|
inline |
Hides parent's impl of toLineRange() and uses non-virtual functions internally.
Definition at line 189 of file katetextrange.h.
◆ toRange()
|
inline |
Convert this clever range into a dumb one.
- Returns
- normal range
Definition at line 198 of file katetextrange.h.
◆ view()
|
inlineoverridevirtual |
Gets the active view for this range.
Might be already invalid, internally only used for pointer comparisons.
- Returns
- a pointer to the active view
Implements KTextEditor::MovingRange.
Definition at line 219 of file katetextrange.h.
◆ zDepth()
|
inlineoverridevirtual |
Gets the current Z-depth of this range.
Ranges with smaller Z-depth than others will win during rendering. Default is 0.0.
- Returns
- current Z-depth of this range
Implements KTextEditor::MovingRange.
Definition at line 304 of file katetextrange.h.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Oct 4 2024 12:03:01 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.