forked from qt-creator/qt-creator
C++: Introduce the new CodeFormatter.
Done-with: Erik Verbruggen
This commit is contained in:
@@ -31,6 +31,15 @@
|
||||
|
||||
using namespace TextEditor;
|
||||
|
||||
CodeFormatterData::CodeFormatterData(int blockRevision)
|
||||
: m_blockRevision(blockRevision)
|
||||
{
|
||||
}
|
||||
|
||||
CodeFormatterData::~CodeFormatterData()
|
||||
{
|
||||
}
|
||||
|
||||
TextBlockUserData::~TextBlockUserData()
|
||||
{
|
||||
TextMarks marks = m_marks;
|
||||
@@ -38,6 +47,9 @@ TextBlockUserData::~TextBlockUserData()
|
||||
foreach (ITextMark *mrk, marks) {
|
||||
mrk->removedFromEditor();
|
||||
}
|
||||
|
||||
if (m_codeFormatterData)
|
||||
delete m_codeFormatterData;
|
||||
}
|
||||
|
||||
int TextBlockUserData::braceDepthDelta() const
|
||||
@@ -359,6 +371,35 @@ TextBlockUserData::MatchType TextBlockUserData::matchCursorForward(QTextCursor *
|
||||
return NoMatch;
|
||||
}
|
||||
|
||||
int TextBlockUserData::lexerState(const QTextBlock &block)
|
||||
{
|
||||
if (!block.isValid())
|
||||
return -1;
|
||||
|
||||
int data = block.userState();
|
||||
if (data == -1)
|
||||
return -1;
|
||||
return data & 0xFF;
|
||||
}
|
||||
|
||||
void TextBlockUserData::setLexerState(QTextBlock block, int state)
|
||||
{
|
||||
if (!block.isValid())
|
||||
return;
|
||||
|
||||
int data = block.userState();
|
||||
if (data == -1)
|
||||
data = 0;
|
||||
block.setUserState((data & ~0xFF) | (state & 0xFF));
|
||||
}
|
||||
|
||||
void TextBlockUserData::setCodeFormatterData(CodeFormatterData *data)
|
||||
{
|
||||
if (m_codeFormatterData)
|
||||
delete m_codeFormatterData;
|
||||
|
||||
m_codeFormatterData = data;
|
||||
}
|
||||
|
||||
BaseTextDocumentLayout::BaseTextDocumentLayout(QTextDocument *doc)
|
||||
:QPlainTextDocumentLayout(doc) {
|
||||
@@ -528,6 +569,3 @@ QSizeF BaseTextDocumentLayout::documentSize() const
|
||||
size.setWidth(qMax((qreal)m_requiredWidth, size.width()));
|
||||
return size;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user