forked from qt-creator/qt-creator
Clang: Fix html code in completion list item
E.g. "dynamic_cast<>()" showed up as item. Let CompletionChunksToTextConverter default to plain text format and explicitly request HTML where needed. Change-Id: Iebce85cb888a5bd697ffdce364118b6dc65a435d Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
This commit is contained in:
@@ -47,12 +47,17 @@ class CompletionChunksToTextConverter
|
||||
public:
|
||||
void parseChunks(const ClangBackEnd::CodeCompletionChunks &codeCompletionChunks);
|
||||
|
||||
enum class TextFormat {
|
||||
Plain,
|
||||
Html
|
||||
};
|
||||
void setTextFormat(TextFormat textFormat);
|
||||
void setAddPlaceHolderText(bool addPlaceHolderText);
|
||||
void setAddPlaceHolderPositions(bool addPlaceHolderPositions);
|
||||
void setAddResultType(bool addResultType);
|
||||
void setAddSpaces(bool addSpaces);
|
||||
void setAddExtraVerticalSpaceBetweenBraces(bool addExtraVerticalSpaceBetweenBraces);
|
||||
void setEmphasizeOptional(bool emphasizeOptional);
|
||||
void setEmphasizeOptional(bool emphasizeOptional); // Only for Html format
|
||||
void setAddOptional(bool addOptional);
|
||||
void setPlaceHolderToEmphasize(int placeHolderNumber);
|
||||
|
||||
@@ -62,10 +67,13 @@ public:
|
||||
const std::vector<int> &placeholderPositions() const;
|
||||
bool hasPlaceholderPositions() const;
|
||||
|
||||
static QString convertToFunctionSignature(const ClangBackEnd::CodeCompletionChunks &codeCompletionChunks,
|
||||
int parameterToEmphasize = -1);
|
||||
static QString convertToName(const ClangBackEnd::CodeCompletionChunks &codeCompletionChunks);
|
||||
static QString convertToToolTip(const ClangBackEnd::CodeCompletionChunks &codeCompletionChunks);
|
||||
static QString convertToKeywords(const ClangBackEnd::CodeCompletionChunks &codeCompletionChunks);
|
||||
static QString convertToToolTipWithHtml(const ClangBackEnd::CodeCompletionChunks &codeCompletionChunks);
|
||||
static QString convertToFunctionSignatureWithHtml(
|
||||
const ClangBackEnd::CodeCompletionChunks &codeCompletionChunks,
|
||||
int parameterToEmphasize = -1);
|
||||
|
||||
private:
|
||||
void parse(const ClangBackEnd::CodeCompletionChunk &codeCompletionChunk);
|
||||
void parseDependendOnTheOptionalState(const ClangBackEnd::CodeCompletionChunk &codeCompletionChunk);
|
||||
@@ -78,7 +86,8 @@ private:
|
||||
void addExtraVerticalSpaceBetweenBraces();
|
||||
void addExtraVerticalSpaceBetweenBraces(const ClangBackEnd::CodeCompletionChunks::iterator &);
|
||||
|
||||
void appendText(const QString &text, bool boldFormat = false);
|
||||
QString inDesiredTextFormat(const Utf8String &text) const;
|
||||
void appendText(const QString &text, bool boldFormat = false); // Boldness only in Html format
|
||||
bool canAddSpace() const;
|
||||
bool isNotOptionalOrAddOptionals(const ClangBackEnd::CodeCompletionChunk &codeCompletionChunk) const;
|
||||
|
||||
@@ -90,6 +99,7 @@ private:
|
||||
ClangBackEnd::CodeCompletionChunk m_previousCodeCompletionChunk;
|
||||
QString m_text;
|
||||
int m_placeHolderPositionToEmphasize = -1;
|
||||
TextFormat m_textFormat = TextFormat::Plain;
|
||||
bool m_addPlaceHolderText = false;
|
||||
bool m_addPlaceHolderPositions = false;
|
||||
bool m_addResultType = false;
|
||||
|
||||
Reference in New Issue
Block a user