KateLayoutCache
#include <katelayoutcache.h>
Public Member Functions | |
KateLayoutCache (KateRenderer *renderer, QObject *parent) | |
bool | acceptDirtyLayouts () const |
void | clear () |
int | displayViewLine (const KTextEditor::Cursor virtualCursor, bool limitToVisible=false) |
int | lastViewLine (int realLine) |
KateLineLayout * | line (int realLine, int virtualLine=-1) |
void | relayoutLines (int startRealLine, int endRealLine) |
void | setAcceptDirtyLayouts (bool accept) |
void | setViewWidth (int width) |
void | setWrap (bool wrap) |
KateTextLayout | textLayout (const KTextEditor::Cursor realCursor) |
KateTextLayout | textLayout (uint realLine, int viewLine) |
void | updateViewCache (const KTextEditor::Cursor startPos, int newViewLineCount=-1, int viewLinesScrolled=0) |
void | viewCacheDebugOutput () const |
KTextEditor::Cursor | viewCacheEnd () const |
int | viewCacheLineCount () const |
KTextEditor::Cursor | viewCacheStart () const |
int | viewLine (const KTextEditor::Cursor realCursor) |
KateTextLayout & | viewLine (int viewLine) |
int | viewLineCount (int realLine) |
int | viewWidth () const |
bool | wrap () const |
Public Member Functions inherited from QObject | |
QObject (QObject *parent) | |
QBindable< QString > | bindableObjectName () |
bool | blockSignals (bool block) |
const QObjectList & | children () const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectInfo () const const |
void | dumpObjectTree () const const |
QList< QByteArray > | dynamicPropertyNames () const const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (Qt::FindChildOptions options) const const |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
bool | isQuickItemType () const const |
bool | isWidgetType () const const |
bool | isWindowType () const const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
QVariant | property (const char *name) const const |
Q_CLASSINFO (Name, Value) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_GADGET_EXPORT (EXPORT_MACRO) | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_MOC_INCLUDE Q_MOC_INCLUDE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qobject_cast (const QObject *object) |
T | qobject_cast (QObject *object) |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
void | removeEventFilter (QObject *obj) |
void | setObjectName (const QString &name) |
void | setObjectName (QAnyStringView name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | setProperty (const char *name, QVariant &&value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType) |
QThread * | thread () const const |
Additional Inherited Members | |
Public Types inherited from QObject | |
typedef | QObjectList |
Properties inherited from QObject | |
objectName | |
Static Public Member Functions inherited from QObject | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
Protected Member Functions inherited from QObject | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Detailed Description
This class handles Kate's caching of layouting information (in KateLineLayout and KateTextLayout).
This information is used primarily by both the view and the renderer.
We outsource the hardcore layouting logic to the renderer, but other than that, this class handles all manipulation of the layout objects.
This is separate from the renderer 1) for clarity 2) so you can have separate caches for separate views of the same document, even for view and printer (if the renderer is made to support rendering onto different targets).
Definition at line 54 of file katelayoutcache.h.
Constructor & Destructor Documentation
◆ KateLayoutCache()
|
explicit |
Definition at line 89 of file katelayoutcache.cpp.
Member Function Documentation
◆ acceptDirtyLayouts()
bool KateLayoutCache::acceptDirtyLayouts | ( | ) | const |
Definition at line 487 of file katelayoutcache.cpp.
◆ clear()
void KateLayoutCache::clear | ( | ) |
Definition at line 452 of file katelayoutcache.cpp.
◆ displayViewLine()
int KateLayoutCache::displayViewLine | ( | const KTextEditor::Cursor | virtualCursor, |
bool | limitToVisible = false ) |
Find the view line of the cursor, relative to the display (0 = top line of view, 1 = second line, etc.)
If limitToVisible
is true, the function can return -2 for lines below the view. The idea is to get extra information about where the line lies when its out of the view so the clients doesn't have to make second call of this function with limitToVisible = false and potentionaly rerendering the whole document.
- Parameters
-
virtualCursor cursor position limitToVisible if true, limit the search to only visible lines
- Returns
- line number relative to the display. If
limitToVisible
is true, then valid values are only positive, negative values are invalid cursors for -1 and -2 for cursor is below the view.
Definition at line 331 of file katelayoutcache.cpp.
◆ lastViewLine()
int KateLayoutCache::lastViewLine | ( | int | realLine | ) |
Definition at line 403 of file katelayoutcache.cpp.
◆ line()
KateLineLayout * KateLayoutCache::line | ( | int | realLine, |
int | virtualLine = -1 ) |
Returns the KateLineLayout for the specified line.
If one does not exist, it will be created and laid out. Layouts which are not directly part of the view will be kept until the cache is full or until they are invalidated by other means (eg. the text changes).
This function shall never return null
- Parameters
-
realLine real line number of the layout to retrieve. virtualLine virtual line number. only needed if you think it may have changed (ie. basically internal to KateLayoutCache)
Definition at line 210 of file katelayoutcache.cpp.
◆ relayoutLines()
void KateLayoutCache::relayoutLines | ( | int | startRealLine, |
int | endRealLine ) |
Definition at line 478 of file katelayoutcache.cpp.
◆ setAcceptDirtyLayouts()
void KateLayoutCache::setAcceptDirtyLayouts | ( | bool | accept | ) |
Definition at line 492 of file katelayoutcache.cpp.
◆ setViewWidth()
void KateLayoutCache::setViewWidth | ( | int | width | ) |
Definition at line 459 of file katelayoutcache.cpp.
◆ setWrap()
void KateLayoutCache::setWrap | ( | bool | wrap | ) |
Definition at line 472 of file katelayoutcache.cpp.
◆ textLayout() [1/2]
KateTextLayout KateLayoutCache::textLayout | ( | const KTextEditor::Cursor | realCursor | ) |
Returns the layout describing the text line which is occupied by realCursor
.
Definition at line 262 of file katelayoutcache.cpp.
◆ textLayout() [2/2]
KateTextLayout KateLayoutCache::textLayout | ( | uint | realLine, |
int | viewLine ) |
Returns the layout of the specified realLine + viewLine.
if viewLine is -1, return the last.
Definition at line 267 of file katelayoutcache.cpp.
◆ updateViewCache()
void KateLayoutCache::updateViewCache | ( | const KTextEditor::Cursor | startPos, |
int | newViewLineCount = -1, | ||
int | viewLinesScrolled = 0 ) |
Definition at line 102 of file katelayoutcache.cpp.
◆ viewCacheDebugOutput()
void KateLayoutCache::viewCacheDebugOutput | ( | ) | const |
Definition at line 420 of file katelayoutcache.cpp.
◆ viewCacheEnd()
KTextEditor::Cursor KateLayoutCache::viewCacheEnd | ( | ) | const |
Definition at line 292 of file katelayoutcache.cpp.
◆ viewCacheLineCount()
int KateLayoutCache::viewCacheLineCount | ( | ) | const |
Definition at line 282 of file katelayoutcache.cpp.
◆ viewCacheStart()
KTextEditor::Cursor KateLayoutCache::viewCacheStart | ( | ) | const |
Definition at line 287 of file katelayoutcache.cpp.
◆ viewLine() [1/2]
int KateLayoutCache::viewLine | ( | const KTextEditor::Cursor | realCursor | ) |
This returns the view line upon which realCursor is situated.
The view line is the number of lines in the view from the first line The supplied cursor should be in real lines.
Make sure cursor column and line is valid
Definition at line 307 of file katelayoutcache.cpp.
◆ viewLine() [2/2]
KateTextLayout & KateLayoutCache::viewLine | ( | int | viewLine | ) |
Returns the layout of the corresponding line in the view.
Definition at line 276 of file katelayoutcache.cpp.
◆ viewLineCount()
int KateLayoutCache::viewLineCount | ( | int | realLine | ) |
Definition at line 415 of file katelayoutcache.cpp.
◆ viewWidth()
int KateLayoutCache::viewWidth | ( | ) | const |
Definition at line 297 of file katelayoutcache.cpp.
◆ wrap()
bool KateLayoutCache::wrap | ( | ) | const |
Definition at line 467 of file katelayoutcache.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:11:28 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.