summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@theqtcompany.com>2016-01-18 09:22:49 +0100
committerNikolai Kosjar <nikolai.kosjar@theqtcompany.com>2016-01-19 13:27:30 +0000
commit1a6b62a2b03b29bae7f900c77df785eefc8707b3 (patch)
tree2042a8a9f52a3cd34445bd139e21f7f2bcad1f95 /src
parent6dd80accfff0a8c36ae4242e69b5d22bccd10cec (diff)
downloadqt-creator-1a6b62a2b03b29bae7f900c77df785eefc8707b3.tar.gz
Clang: Fix text format for completion details
The tooltip text right to the completion list item is prepared for rich text (html) interpretation, but the QLabel the text will finally be displayed with has no explicit text format set and thus defaults to auto detection. The auto detection works fine for e.g. "<i>int optionalArg</ i>" but fails for "const Foo&amp;". Task-number: QTCREATORBUG-15630 Change-Id: Ia58d65ee542730e4823c69150d452cdde98112f8 Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/clangcodemodel/clangassistproposalmodel.cpp5
-rw-r--r--src/plugins/clangcodemodel/clangassistproposalmodel.h2
-rw-r--r--src/plugins/texteditor/codeassist/genericproposalmodel.cpp11
-rw-r--r--src/plugins/texteditor/codeassist/genericproposalmodel.h4
-rw-r--r--src/plugins/texteditor/codeassist/genericproposalwidget.cpp6
5 files changed, 28 insertions, 0 deletions
diff --git a/src/plugins/clangcodemodel/clangassistproposalmodel.cpp b/src/plugins/clangcodemodel/clangassistproposalmodel.cpp
index d4085b3929..4b7ac93b16 100644
--- a/src/plugins/clangcodemodel/clangassistproposalmodel.cpp
+++ b/src/plugins/clangcodemodel/clangassistproposalmodel.cpp
@@ -39,6 +39,11 @@
namespace ClangCodeModel {
namespace Internal {
+ClangAssistProposalModel::ClangAssistProposalModel()
+{
+ setDetailTextFormat(Qt::RichText);
+}
+
bool ClangAssistProposalModel::isSortable(const QString &/*prefix*/) const
{
return true;
diff --git a/src/plugins/clangcodemodel/clangassistproposalmodel.h b/src/plugins/clangcodemodel/clangassistproposalmodel.h
index 5f7b1f502a..90ef4a2f20 100644
--- a/src/plugins/clangcodemodel/clangassistproposalmodel.h
+++ b/src/plugins/clangcodemodel/clangassistproposalmodel.h
@@ -41,6 +41,8 @@ namespace Internal {
class ClangAssistProposalModel : public TextEditor::GenericProposalModel
{
public:
+ ClangAssistProposalModel();
+
bool isSortable(const QString &prefix) const override;
void sort(const QString &prefix) override;
};
diff --git a/src/plugins/texteditor/codeassist/genericproposalmodel.cpp b/src/plugins/texteditor/codeassist/genericproposalmodel.cpp
index 3881775bc8..e7839d97eb 100644
--- a/src/plugins/texteditor/codeassist/genericproposalmodel.cpp
+++ b/src/plugins/texteditor/codeassist/genericproposalmodel.cpp
@@ -135,6 +135,7 @@ private:
} // Anonymous
GenericProposalModel::GenericProposalModel()
+ : m_detailTextFormat(Qt::AutoText)
{}
GenericProposalModel::~GenericProposalModel()
@@ -150,6 +151,16 @@ void GenericProposalModel::loadContent(const QList<AssistProposalItem *> &items)
m_idByText.insert(m_originalItems.at(i)->text(), i);
}
+Qt::TextFormat GenericProposalModel::detailTextFormat() const
+{
+ return m_detailTextFormat;
+}
+
+void GenericProposalModel::setDetailTextFormat(Qt::TextFormat detailTextFormat)
+{
+ m_detailTextFormat = detailTextFormat;
+}
+
void GenericProposalModel::reset()
{
m_currentItems = m_originalItems;
diff --git a/src/plugins/texteditor/codeassist/genericproposalmodel.h b/src/plugins/texteditor/codeassist/genericproposalmodel.h
index a68bf21134..b97a23869e 100644
--- a/src/plugins/texteditor/codeassist/genericproposalmodel.h
+++ b/src/plugins/texteditor/codeassist/genericproposalmodel.h
@@ -72,12 +72,16 @@ public:
void setSortingAllowed(bool isAllowed);
bool isSortingAllowed() const;
+ Qt::TextFormat detailTextFormat() const;
+ void setDetailTextFormat(Qt::TextFormat detailTextFormat);
+
protected:
QList<AssistProposalItem *> m_currentItems;
private:
QHash<QString, int> m_idByText;
QList<AssistProposalItem *> m_originalItems;
+ Qt::TextFormat m_detailTextFormat;
};
} // TextEditor
diff --git a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp
index 063bedb956..777e1a8b3f 100644
--- a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp
+++ b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp
@@ -168,6 +168,11 @@ public:
m_label->setText(text);
}
+ void setTextFormat(Qt::TextFormat textFormat)
+ {
+ m_label->setTextFormat(textFormat);
+ }
+
// Workaround QTCREATORBUG-11653
void calculateMaximumWidth()
{
@@ -312,6 +317,7 @@ void GenericProposalWidgetPrivate::maybeShowInfoTip()
m_infoFrame->move(m_completionListView->infoFramePos());
m_infoFrame->setText(infoTip);
+ m_infoFrame->setTextFormat(m_model->detailTextFormat());
m_infoFrame->calculateMaximumWidth();
m_infoFrame->adjustSize();
m_infoFrame->show();