TextEditor: Complete transition to Qt5-style connects

Change-Id: I78c84254a5ea56b5f9a478b6e1c9b4ed58937687
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
Orgad Shaneh
2017-03-19 19:57:04 +02:00
committed by Orgad Shaneh
parent 0170e10af1
commit a4e23025f0
3 changed files with 21 additions and 22 deletions

View File

@@ -51,7 +51,6 @@ public:
QPointer<QTextDocument> doc; QPointer<QTextDocument> doc;
void _q_reformatBlocks(int from, int charsRemoved, int charsAdded);
void reformatBlocks(int from, int charsRemoved, int charsAdded); void reformatBlocks(int from, int charsRemoved, int charsAdded);
void reformatBlock(const QTextBlock &block, int from, int charsRemoved, int charsAdded); void reformatBlock(const QTextBlock &block, int from, int charsRemoved, int charsAdded);
@@ -63,13 +62,6 @@ public:
inReformatBlocks = false; inReformatBlocks = false;
} }
inline void _q_delayedRehighlight() {
if (!rehighlightPending)
return;
rehighlightPending = false;
q_func()->rehighlight();
}
void applyFormatChanges(int from, int charsRemoved, int charsAdded); void applyFormatChanges(int from, int charsRemoved, int charsAdded);
void updateFormatsForCategories(const FontSettings &fontSettings); void updateFormatsForCategories(const FontSettings &fontSettings);
@@ -94,6 +86,15 @@ static bool adjustRange(QTextLayout::FormatRange &range, int from, int charsRemo
return false; return false;
} }
void SyntaxHighlighter::delayedRehighlight()
{
Q_D(SyntaxHighlighter);
if (!d->rehighlightPending)
return;
d->rehighlightPending = false;
rehighlight();
}
void SyntaxHighlighterPrivate::applyFormatChanges(int from, int charsRemoved, int charsAdded) void SyntaxHighlighterPrivate::applyFormatChanges(int from, int charsRemoved, int charsAdded)
{ {
bool formatsChanged = false; bool formatsChanged = false;
@@ -172,10 +173,11 @@ void SyntaxHighlighterPrivate::applyFormatChanges(int from, int charsRemoved, in
} }
} }
void SyntaxHighlighterPrivate::_q_reformatBlocks(int from, int charsRemoved, int charsAdded) void SyntaxHighlighter::reformatBlocks(int from, int charsRemoved, int charsAdded)
{ {
if (!inReformatBlocks) Q_D(SyntaxHighlighter);
reformatBlocks(from, charsRemoved, charsAdded); if (!d->inReformatBlocks)
d->reformatBlocks(from, charsRemoved, charsAdded);
} }
void SyntaxHighlighterPrivate::reformatBlocks(int from, int charsRemoved, int charsAdded) void SyntaxHighlighterPrivate::reformatBlocks(int from, int charsRemoved, int charsAdded)
@@ -310,8 +312,7 @@ void SyntaxHighlighter::setDocument(QTextDocument *doc)
{ {
Q_D(SyntaxHighlighter); Q_D(SyntaxHighlighter);
if (d->doc) { if (d->doc) {
disconnect(d->doc, SIGNAL(contentsChange(int,int,int)), disconnect(d->doc, &QTextDocument::contentsChange, this, &SyntaxHighlighter::reformatBlocks);
this, SLOT(_q_reformatBlocks(int,int,int)));
QTextCursor cursor(d->doc); QTextCursor cursor(d->doc);
cursor.beginEditBlock(); cursor.beginEditBlock();
@@ -321,10 +322,9 @@ void SyntaxHighlighter::setDocument(QTextDocument *doc)
} }
d->doc = doc; d->doc = doc;
if (d->doc) { if (d->doc) {
connect(d->doc, SIGNAL(contentsChange(int,int,int)), connect(d->doc, &QTextDocument::contentsChange, this, &SyntaxHighlighter::reformatBlocks);
this, SLOT(_q_reformatBlocks(int,int,int)));
d->rehighlightPending = true; d->rehighlightPending = true;
QTimer::singleShot(0, this, SLOT(_q_delayedRehighlight())); QTimer::singleShot(0, this, &SyntaxHighlighter::delayedRehighlight);
d->foldValidator.setup(qobject_cast<TextDocumentLayout *>(doc->documentLayout())); d->foldValidator.setup(qobject_cast<TextDocumentLayout *>(doc->documentLayout()));
} }
} }

View File

@@ -64,7 +64,8 @@ public:
// Don't call in constructors of derived classes // Don't call in constructors of derived classes
virtual void setFontSettings(const TextEditor::FontSettings &fontSettings); virtual void setFontSettings(const TextEditor::FontSettings &fontSettings);
public Q_SLOTS:
public slots:
void rehighlight(); void rehighlight();
void rehighlightBlock(const QTextBlock &block); void rehighlightBlock(const QTextBlock &block);
@@ -90,8 +91,8 @@ protected:
QTextBlock currentBlock() const; QTextBlock currentBlock() const;
private: private:
Q_PRIVATE_SLOT(d_ptr, void _q_reformatBlocks(int from, int charsRemoved, int charsAdded)) void reformatBlocks(int from, int charsRemoved, int charsAdded);
Q_PRIVATE_SLOT(d_ptr, void _q_delayedRehighlight()) void delayedRehighlight();
QScopedPointer<SyntaxHighlighterPrivate> d_ptr; QScopedPointer<SyntaxHighlighterPrivate> d_ptr;
}; };

View File

@@ -340,7 +340,6 @@ public:
virtual void encourageApply(); virtual void encourageApply();
public slots: // Qt4-style connect used in EditorConfiguration
virtual void setDisplaySettings(const TextEditor::DisplaySettings &); virtual void setDisplaySettings(const TextEditor::DisplaySettings &);
virtual void setMarginSettings(const TextEditor::MarginSettings &); virtual void setMarginSettings(const TextEditor::MarginSettings &);
void setBehaviorSettings(const TextEditor::BehaviorSettings &); void setBehaviorSettings(const TextEditor::BehaviorSettings &);
@@ -349,7 +348,6 @@ public slots: // Qt4-style connect used in EditorConfiguration
void setCompletionSettings(const TextEditor::CompletionSettings &); void setCompletionSettings(const TextEditor::CompletionSettings &);
void setExtraEncodingSettings(const TextEditor::ExtraEncodingSettings &); void setExtraEncodingSettings(const TextEditor::ExtraEncodingSettings &);
public:
void circularPaste(); void circularPaste();
void switchUtf8bom(); void switchUtf8bom();
@@ -589,7 +587,7 @@ signals:
void tooltipRequested(const QPoint &globalPos, int position); void tooltipRequested(const QPoint &globalPos, int position);
void activateEditor(); void activateEditor();
protected slots: protected:
virtual void slotCursorPositionChanged(); // Used in VcsBase virtual void slotCursorPositionChanged(); // Used in VcsBase
virtual void slotCodeStyleSettingsChanged(const QVariant &); // Used in CppEditor virtual void slotCodeStyleSettingsChanged(const QVariant &); // Used in CppEditor