Kate::TextLineData

Search for usage in LXR

Kate::TextLineData Class Reference

#include <katetextline.h>

Classes

class  Attribute
 
class  Folding
 

Public Types

enum  Flags {
  flagAutoWrapped = 1, flagFoldingStartAttribute = 2, flagFoldingStartIndentation = 4, flagLineModified = 8,
  flagLineSavedOnDisk = 16
}
 

Public Member Functions

 TextLineData ()=default
 
 TextLineData (const QString &text)
 
void addAttribute (const Attribute &attribute)
 
void addFolding (int offset, int length, int folding)
 
QChar at (int column) const
 
short attribute (int pos) const
 
const QVector< Attribute > & attributesList () const
 
void clearAttributesAndFoldings ()
 
void clearMarkedAsFoldingStart ()
 
bool endsWith (const QString &match) const
 
int firstChar () const
 
const std::vector< Folding > & foldings () const
 
int fromVirtualColumn (int column, int tabWidth) const
 
const KSyntaxHighlighting::StatehighlightingState () const
 
int indentDepth (int tabWidth) const
 
bool isAutoWrapped () const
 
int lastChar () const
 
QString leadingWhitespace () const
 
int length () const
 
void markAsFoldingStartAttribute ()
 
void markAsFoldingStartIndentation ()
 
void markAsModified (bool modified)
 
void markAsSavedOnDisk (bool savedOnDisk)
 
bool markedAsFoldingStart () const
 
bool markedAsFoldingStartAttribute () const
 
bool markedAsFoldingStartIndentation () const
 
bool markedAsModified () const
 
bool markedAsSavedOnDisk () const
 
bool matchesAt (int column, const QString &match) const
 
int nextNonSpaceChar (int pos) const
 
int previousNonSpaceChar (int pos) const
 
void setAutoWrapped (bool wrapped)
 
void setHighlightingState (const KSyntaxHighlighting::State &val)
 
bool startsWith (const QString &match) const
 
QString string (int column, int length) const
 
const QStringtext () const
 
int toVirtualColumn (int column, int tabWidth) const
 
int virtualLength (int tabWidth) const
 

Detailed Description

Class representing a single text line.

For efficiency reasons, not only pure text is stored here, but also additional data. Will be only accessed over shared pointers.

Definition at line 25 of file katetextline.h.

Member Enumeration Documentation

◆ Flags

Flags of TextLineData.

Definition at line 106 of file katetextline.h.

Constructor & Destructor Documentation

◆ TextLineData() [1/2]

Kate::TextLineData::TextLineData ( )
default

Construct an empty text line.

◆ TextLineData() [2/2]

Kate::TextLineData::TextLineData ( const QString text)
inlineexplicit

Construct an text line with given text.

Parameters
texttext to use for this line

Definition at line 117 of file katetextline.h.

Member Function Documentation

◆ addAttribute()

void Kate::TextLineData::addAttribute ( const Attribute attribute)

Add attribute to this line.

Parameters
attributenew attribute to append

Definition at line 169 of file katetextline.cpp.

◆ addFolding()

void Kate::TextLineData::addFolding ( int  offset,
int  length,
int  folding 
)
inline

Add new folding at end of foldings stored in this line.

Parameters
offsetoffset of folding start
lengthlength of the string that represents the folding
foldingfolding to add, positive to open, negative to close

Definition at line 393 of file katetextline.h.

◆ at()

QChar Kate::TextLineData::at ( int  column) const
inline

Returns the character at the given column.

If column is out of range, the return value is QChar().

Parameters
columncolumn you want char for
Returns
char at given column or QChar()

Definition at line 166 of file katetextline.h.

◆ attribute()

short Kate::TextLineData::attribute ( int  pos) const

Gets the attribute at the given position use KRenderer::attributes to get the KTextAttribute for this.

Parameters
posposition of attribute requested
Returns
value of attribute

Definition at line 181 of file katetextline.cpp.

◆ attributesList()

const QVector<Attribute>& Kate::TextLineData::attributesList ( ) const
inline

Accessor to attributes.

Returns
attributes of this line

Definition at line 373 of file katetextline.h.

◆ clearAttributesAndFoldings()

void Kate::TextLineData::clearAttributesAndFoldings ( )
inline

Clear attributes and foldings of this line.

Definition at line 363 of file katetextline.h.

◆ clearMarkedAsFoldingStart()

void Kate::TextLineData::clearMarkedAsFoldingStart ( )
inline

Clear folding start status.

Definition at line 217 of file katetextline.h.

◆ endsWith()

bool Kate::TextLineData::endsWith ( const QString match) const
inline

Returns true, if the line ends with match, otherwise returns false.

Definition at line 331 of file katetextline.h.

◆ firstChar()

int Kate::TextLineData::firstChar ( ) const

Returns the position of the first non-whitespace character.

Returns
position of first non-whitespace char or -1 if there is none

Definition at line 12 of file katetextline.cpp.

◆ foldings()

const std::vector<Folding>& Kate::TextLineData::foldings ( ) const
inline

Accessor to foldings.

Returns
foldings of this line

Definition at line 382 of file katetextline.h.

◆ fromVirtualColumn()

int Kate::TextLineData::fromVirtualColumn ( int  column,
int  tabWidth 
) const

Returns the "real" column where each tab only counts one character.

The conversion calculates with tabWidth characters for each tab.

Definition at line 126 of file katetextline.cpp.

◆ highlightingState()

const KSyntaxHighlighting::State& Kate::TextLineData::highlightingState ( ) const
inline

context stack

Returns
context stack

Definition at line 340 of file katetextline.h.

◆ indentDepth()

int Kate::TextLineData::indentDepth ( int  tabWidth) const

Returns the indentation depth with each tab expanded into tabWidth characters.

Definition at line 59 of file katetextline.cpp.

◆ isAutoWrapped()

bool Kate::TextLineData::isAutoWrapped ( ) const
inline

Returns true, if the line was automagically wrapped, otherwise returns false.

Returns
was this line auto-wrapped?

Definition at line 271 of file katetextline.h.

◆ lastChar()

int Kate::TextLineData::lastChar ( ) const

Returns the position of the last non-whitespace character.

Returns
position of last non-whitespace char or -1 if there is none

Definition at line 17 of file katetextline.cpp.

◆ leadingWhitespace()

QString Kate::TextLineData::leadingWhitespace ( ) const

Leading whitespace of this line.

Returns
leading whitespace of this line

Definition at line 50 of file katetextline.cpp.

◆ length()

int Kate::TextLineData::length ( ) const
inline

Returns the line's length.

Definition at line 261 of file katetextline.h.

◆ markAsFoldingStartAttribute()

void Kate::TextLineData::markAsFoldingStartAttribute ( )
inline

Mark as folding start line of an attribute based folding.

Definition at line 243 of file katetextline.h.

◆ markAsFoldingStartIndentation()

void Kate::TextLineData::markAsFoldingStartIndentation ( )
inline

Mark as folding start line of an indentation based folding.

Definition at line 252 of file katetextline.h.

◆ markedAsFoldingStart()

bool Kate::TextLineData::markedAsFoldingStart ( ) const
inline

Is on this line a folding start?

Returns
folding start line or not?

Definition at line 209 of file katetextline.h.

◆ markedAsFoldingStartAttribute()

bool Kate::TextLineData::markedAsFoldingStartAttribute ( ) const
inline

Is on this line a folding start per attribute?

Returns
folding start line per attribute? or not?

Definition at line 226 of file katetextline.h.

◆ markedAsFoldingStartIndentation()

bool Kate::TextLineData::markedAsFoldingStartIndentation ( ) const
inline

Is on this line a folding start per indentation?

Returns
folding start line per indentation? or not?

Definition at line 235 of file katetextline.h.

◆ matchesAt()

bool Kate::TextLineData::matchesAt ( int  column,
const QString match 
) const

Returns true, if match equals to the text at position column, otherwise returns false.

Definition at line 80 of file katetextline.cpp.

◆ nextNonSpaceChar()

int Kate::TextLineData::nextNonSpaceChar ( int  pos) const

Find the position of the next char that is not a space.

Parameters
posColumn of the character which is examined first.
Returns
True if the specified or a following character is not a space Otherwise false.

Definition at line 22 of file katetextline.cpp.

◆ previousNonSpaceChar()

int Kate::TextLineData::previousNonSpaceChar ( int  pos) const

Find the position of the previous char that is not a space.

Parameters
posColumn of the character which is examined first.
Returns
The position of the first non-whitespace character preceding pos, or -1 if none is found.

Definition at line 35 of file katetextline.cpp.

◆ setAutoWrapped()

void Kate::TextLineData::setAutoWrapped ( bool  wrapped)
inline

set auto-wrapped property

Parameters
wrappedline was wrapped?

Definition at line 411 of file katetextline.h.

◆ setHighlightingState()

void Kate::TextLineData::setHighlightingState ( const KSyntaxHighlighting::State val)
inline

Sets the syntax highlight context number.

Parameters
valnew context array

Definition at line 349 of file katetextline.h.

◆ startsWith()

bool Kate::TextLineData::startsWith ( const QString match) const
inline

Returns true, if the line starts with match, otherwise returns false.

Definition at line 323 of file katetextline.h.

◆ string()

QString Kate::TextLineData::string ( int  column,
int  length 
) const
inline

Returns the substring with length beginning at the given column.

Parameters
columnstart column of text to return
lengthlength of text to return
Returns
wanted part of text

Definition at line 282 of file katetextline.h.

◆ text()

const QString& Kate::TextLineData::text ( ) const
inline

Accessor to the text contained in this line.

Returns
text of this line as constant reference

Definition at line 127 of file katetextline.h.

◆ toVirtualColumn()

int Kate::TextLineData::toVirtualColumn ( int  column,
int  tabWidth 
) const

Returns the column with each tab expanded into tabWidth characters.

Definition at line 105 of file katetextline.cpp.

◆ virtualLength()

int Kate::TextLineData::virtualLength ( int  tabWidth) const

Returns the text length with each tab expanded into tabWidth characters.

Definition at line 152 of file katetextline.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Sun Jun 26 2022 03:49:56 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.