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) |
KateLineLayoutPtr | line (const KTextEditor::Cursor realCursor) |
KateLineLayoutPtr | 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 |
![]() | |
QObject (QObject *parent) | |
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 () |
void | dumpObjectInfo () const const |
void | dumpObjectTree () |
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 QRegExp ®Exp, 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 |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
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_DISABLE_COPY (Class) | |
Q_DISABLE_COPY_MOVE (Class) | |
Q_DISABLE_MOVE (Class) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
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 | qFindChild (const QObject *obj, const QString &name) |
QList< T > | qFindChildren (const QObject *obj, const QRegExp ®Exp) |
QList< T > | qFindChildren (const QObject *obj, const QString &name) |
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 | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType) |
QThread * | thread () const const |
Additional Inherited Members | |
![]() | |
objectName | |
![]() | |
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) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
![]() | |
typedef | QObjectList |
![]() | |
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 59 of file katelayoutcache.h.
Member Function Documentation
◆ 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 381 of file katelayoutcache.cpp.
◆ line() [1/2]
KateLineLayoutPtr KateLayoutCache::line | ( | const KTextEditor::Cursor | realCursor | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 314 of file katelayoutcache.cpp.
◆ line() [2/2]
KateLineLayoutPtr 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).
- 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 261 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 319 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 324 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 360 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 329 of file katelayoutcache.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2022 The KDE developers.
Generated on Sun Jun 26 2022 03:49:55 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.