geany  1.38
About: Geany is a text editor (using GTK2) with basic features of an integrated development environment (syntax highlighting, code folding, symbol name auto-completion, ...). F: office T: editor programming GTK+ IDE
  Fossies Dox: geany-1.38.tar.bz2  ("unofficial" and yet experimental doxygen-generated source code documentation)  

Scintilla::LineMarkers Class Reference

#include <PerLine.h>

Inheritance diagram for Scintilla::LineMarkers:
[legend]
Collaboration diagram for Scintilla::LineMarkers:
[legend]

Public Member Functions

 LineMarkers ()
 
 LineMarkers (const LineMarkers &)=delete
 
 LineMarkers (LineMarkers &&)=delete
 
void operator= (const LineMarkers &)=delete
 
void operator= (LineMarkers &&)=delete
 
 ~LineMarkers () override
 
void Init () override
 
void InsertLine (Sci::Line line) override
 
void InsertLines (Sci::Line line, Sci::Line lines) override
 
void RemoveLine (Sci::Line line) override
 
int MarkValue (Sci::Line line) const noexcept
 
Sci::Line MarkerNext (Sci::Line lineStart, int mask) const noexcept
 
int AddMark (Sci::Line line, int markerNum, Sci::Line lines)
 
void MergeMarkers (Sci::Line line)
 
bool DeleteMark (Sci::Line line, int markerNum, bool all)
 
void DeleteMarkFromHandle (int markerHandle)
 
Sci::Line LineFromHandle (int markerHandle) const noexcept
 
int HandleFromLine (Sci::Line line, int which) const noexcept
 
int NumberFromLine (Sci::Line line, int which) const noexcept
 
- Public Member Functions inherited from Scintilla::PerLine
virtual ~PerLine ()
 
virtual void Init ()=0
 
virtual void InsertLine (Sci::Line line)=0
 
virtual void InsertLines (Sci::Line line, Sci::Line lines)=0
 
virtual void RemoveLine (Sci::Line line)=0
 

Private Attributes

SplitVector< std::unique_ptr< MarkerHandleSet > > markers
 
int handleCurrent
 Handles are allocated sequentially and should never have to be reused as 32 bit ints are very big. More...
 

Detailed Description

Definition at line 47 of file PerLine.h.

Constructor & Destructor Documentation

◆ LineMarkers() [1/3]

Scintilla::LineMarkers::LineMarkers ( )
inline

Definition at line 52 of file PerLine.h.

◆ LineMarkers() [2/3]

Scintilla::LineMarkers::LineMarkers ( const LineMarkers )
delete

◆ LineMarkers() [3/3]

Scintilla::LineMarkers::LineMarkers ( LineMarkers &&  )
delete

◆ ~LineMarkers()

LineMarkers::~LineMarkers ( )
override

Definition at line 91 of file PerLine.cxx.

Member Function Documentation

◆ AddMark()

int LineMarkers::AddMark ( Sci::Line  line,
int  markerNum,
Sci::Line  lines 
)

Definition at line 173 of file PerLine.cxx.

References handleCurrent, line, lines, and markers.

Referenced by Scintilla::Document::AddMark(), and Scintilla::Document::AddMarkSet().

◆ DeleteMark()

bool LineMarkers::DeleteMark ( Sci::Line  line,
int  markerNum,
bool  all 
)

Definition at line 191 of file PerLine.cxx.

References line, and markers.

Referenced by Scintilla::Document::DeleteAllMarks(), and Scintilla::Document::DeleteMark().

◆ DeleteMarkFromHandle()

void LineMarkers::DeleteMarkFromHandle ( int  markerHandle)

Definition at line 207 of file PerLine.cxx.

References line, LineFromHandle(), and markers.

Referenced by Scintilla::Document::DeleteMarkFromHandle().

◆ HandleFromLine()

int LineMarkers::HandleFromLine ( Sci::Line  line,
int  which 
) const
noexcept

Definition at line 129 of file PerLine.cxx.

References Scintilla::MarkerHandleNumber::handle, and line.

◆ Init()

void LineMarkers::Init ( )
overridevirtual

Implements Scintilla::PerLine.

Definition at line 94 of file PerLine.cxx.

References markers.

◆ InsertLine()

void LineMarkers::InsertLine ( Sci::Line  line)
overridevirtual

Implements Scintilla::PerLine.

Definition at line 98 of file PerLine.cxx.

References line, and markers.

◆ InsertLines()

void LineMarkers::InsertLines ( Sci::Line  line,
Sci::Line  lines 
)
overridevirtual

Implements Scintilla::PerLine.

Definition at line 104 of file PerLine.cxx.

References line, lines, and markers.

◆ LineFromHandle()

Sci::Line LineMarkers::LineFromHandle ( int  markerHandle) const
noexcept

Definition at line 120 of file PerLine.cxx.

References line.

Referenced by DeleteMarkFromHandle().

◆ MarkerNext()

Sci::Line LineMarkers::MarkerNext ( Sci::Line  lineStart,
int  mask 
) const
noexcept

Definition at line 161 of file PerLine.cxx.

References Scintilla::MarkerHandleSet::MarkValue().

◆ MarkValue()

int LineMarkers::MarkValue ( Sci::Line  line) const
noexcept

Definition at line 154 of file PerLine.cxx.

References line.

◆ MergeMarkers()

void LineMarkers::MergeMarkers ( Sci::Line  line)

Definition at line 145 of file PerLine.cxx.

References line, and markers.

Referenced by RemoveLine().

◆ NumberFromLine()

int LineMarkers::NumberFromLine ( Sci::Line  line,
int  which 
) const
noexcept

Definition at line 137 of file PerLine.cxx.

References line, and Scintilla::MarkerHandleNumber::number.

◆ operator=() [1/2]

void Scintilla::LineMarkers::operator= ( const LineMarkers )
delete

◆ operator=() [2/2]

void Scintilla::LineMarkers::operator= ( LineMarkers &&  )
delete

◆ RemoveLine()

void LineMarkers::RemoveLine ( Sci::Line  line)
overridevirtual

Implements Scintilla::PerLine.

Definition at line 110 of file PerLine.cxx.

References line, markers, and MergeMarkers().

Member Data Documentation

◆ handleCurrent

int Scintilla::LineMarkers::handleCurrent
private

Handles are allocated sequentially and should never have to be reused as 32 bit ints are very big.

Definition at line 50 of file PerLine.h.

Referenced by AddMark().

◆ markers

SplitVector<std::unique_ptr<MarkerHandleSet> > Scintilla::LineMarkers::markers
private

The documentation for this class was generated from the following files: