forked from qt-creator/qt-creator
CppEditor: fix indentation of auto-completed comments.
Fix indentation of auto-completed Doxygen comments, as well as auto- leading characters from the block, to make it work with both spaces and tabs. Change-Id: I6c1c1665675cc25e01983e6d39b472f1b1c9683e Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
This commit is contained in:
committed by
Leandro Melo
parent
8e94d06496
commit
cbc328e2d7
@@ -2381,7 +2381,10 @@ bool CPPEditorWidget::handleDocumentationComment(QKeyEvent *e)
|
||||
if (followinPos == text.length()
|
||||
|| text.at(followinPos) != QLatin1Char('*')) {
|
||||
QString newLine(QLatin1Char('\n'));
|
||||
newLine.append(QString(offset, QLatin1Char(' ')));
|
||||
QTextCursor c(cursor);
|
||||
c.movePosition(QTextCursor::StartOfBlock);
|
||||
c.movePosition(QTextCursor::NextCharacter, QTextCursor::KeepAnchor, offset);
|
||||
newLine.append(c.selectedText());
|
||||
if (text.at(offset) == QLatin1Char('/')) {
|
||||
newLine.append(QLatin1String(" *"));
|
||||
} else {
|
||||
|
@@ -56,7 +56,6 @@ DoxygenGenerator::DoxygenGenerator()
|
||||
, m_generateBrief(true)
|
||||
, m_startComment(true)
|
||||
, m_style(QtStyle)
|
||||
, m_commentOffset(0)
|
||||
{}
|
||||
|
||||
void DoxygenGenerator::setStyle(DocumentationStyle style)
|
||||
@@ -308,16 +307,11 @@ void DoxygenGenerator::assignCommentOffset(QTextCursor cursor)
|
||||
cursor.setPosition(cursor.anchor());
|
||||
}
|
||||
|
||||
m_commentOffset = cursor.positionInBlock();
|
||||
cursor.movePosition(QTextCursor::StartOfBlock, QTextCursor::KeepAnchor);
|
||||
m_commentOffset = cursor.selectedText();
|
||||
}
|
||||
|
||||
QString DoxygenGenerator::offsetString() const
|
||||
{
|
||||
// Note: Currently we don't indent comments, but simply preserve them in the original
|
||||
// relative positions. What we do here is just to make sure that such positions are correct,
|
||||
// although they might still be wrong from an indentation point of view (for instance,
|
||||
// using spaces instead of tabs). Therefore, the content generated should still have
|
||||
// the indentation strings fixed.
|
||||
|
||||
return QString(m_commentOffset, QLatin1Char(' '));
|
||||
return m_commentOffset;
|
||||
}
|
||||
|
@@ -95,7 +95,7 @@ private:
|
||||
bool m_startComment;
|
||||
DocumentationStyle m_style;
|
||||
CPlusPlus::Overview m_printer;
|
||||
int m_commentOffset;
|
||||
QString m_commentOffset;
|
||||
};
|
||||
|
||||
} // CppTools
|
||||
|
Reference in New Issue
Block a user