summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/shared/qtpropertybrowser/qtbuttonpropertybrowser.cpp7
-rw-r--r--src/shared/qtpropertybrowser/qtgroupboxpropertybrowser.cpp7
-rw-r--r--src/shared/qtpropertybrowser/qtpropertybrowser.cpp64
-rw-r--r--src/shared/qtpropertybrowser/qtpropertybrowser.h8
-rw-r--r--src/shared/qtpropertybrowser/qttreepropertybrowser.cpp15
5 files changed, 75 insertions, 26 deletions
diff --git a/src/shared/qtpropertybrowser/qtbuttonpropertybrowser.cpp b/src/shared/qtpropertybrowser/qtbuttonpropertybrowser.cpp
index 0e9d2239..9f1f177b 100644
--- a/src/shared/qtpropertybrowser/qtbuttonpropertybrowser.cpp
+++ b/src/shared/qtpropertybrowser/qtbuttonpropertybrowser.cpp
@@ -453,7 +453,7 @@ void QtButtonPropertyBrowserPrivate::updateItem(WidgetItem *item)
font.setUnderline(property->isModified());
item->button->setFont(font);
item->button->setText(property->propertyName());
- item->button->setToolTip(property->toolTip());
+ item->button->setToolTip(property->descriptionToolTip());
item->button->setStatusTip(property->statusTip());
item->button->setWhatsThis(property->whatsThis());
item->button->setEnabled(property->isEnabled());
@@ -463,7 +463,7 @@ void QtButtonPropertyBrowserPrivate::updateItem(WidgetItem *item)
font.setUnderline(property->isModified());
item->label->setFont(font);
item->label->setText(property->propertyName());
- item->label->setToolTip(property->toolTip());
+ item->label->setToolTip(property->descriptionToolTip());
item->label->setStatusTip(property->statusTip());
item->label->setWhatsThis(property->whatsThis());
item->label->setEnabled(property->isEnabled());
@@ -481,7 +481,8 @@ void QtButtonPropertyBrowserPrivate::updateItem(WidgetItem *item)
font.setUnderline(false);
item->widget->setFont(font);
item->widget->setEnabled(property->isEnabled());
- item->widget->setToolTip(property->valueText());
+ const QString valueToolTip = property->valueToolTip();
+ item->widget->setToolTip(valueToolTip.isEmpty() ? property->valueText() : valueToolTip);
}
}
diff --git a/src/shared/qtpropertybrowser/qtgroupboxpropertybrowser.cpp b/src/shared/qtpropertybrowser/qtgroupboxpropertybrowser.cpp
index d32f6e5a..ec0a6171 100644
--- a/src/shared/qtpropertybrowser/qtgroupboxpropertybrowser.cpp
+++ b/src/shared/qtpropertybrowser/qtgroupboxpropertybrowser.cpp
@@ -398,7 +398,7 @@ void QtGroupBoxPropertyBrowserPrivate::updateItem(WidgetItem *item)
font.setUnderline(property->isModified());
item->groupBox->setFont(font);
item->groupBox->setTitle(property->propertyName());
- item->groupBox->setToolTip(property->toolTip());
+ item->groupBox->setToolTip(property->descriptionToolTip());
item->groupBox->setStatusTip(property->statusTip());
item->groupBox->setWhatsThis(property->whatsThis());
item->groupBox->setEnabled(property->isEnabled());
@@ -408,7 +408,7 @@ void QtGroupBoxPropertyBrowserPrivate::updateItem(WidgetItem *item)
font.setUnderline(property->isModified());
item->label->setFont(font);
item->label->setText(property->propertyName());
- item->label->setToolTip(property->toolTip());
+ item->label->setToolTip(property->descriptionToolTip());
item->label->setStatusTip(property->statusTip());
item->label->setWhatsThis(property->whatsThis());
item->label->setEnabled(property->isEnabled());
@@ -425,7 +425,8 @@ void QtGroupBoxPropertyBrowserPrivate::updateItem(WidgetItem *item)
font.setUnderline(false);
item->widget->setFont(font);
item->widget->setEnabled(property->isEnabled());
- item->widget->setToolTip(property->valueText());
+ const QString valueToolTip = property->valueToolTip();
+ item->widget->setToolTip(valueToolTip.isEmpty() ? property->valueText() : valueToolTip);
}
//item->setIcon(1, property->valueIcon());
}
diff --git a/src/shared/qtpropertybrowser/qtpropertybrowser.cpp b/src/shared/qtpropertybrowser/qtpropertybrowser.cpp
index aac4c086..3c844333 100644
--- a/src/shared/qtpropertybrowser/qtpropertybrowser.cpp
+++ b/src/shared/qtpropertybrowser/qtpropertybrowser.cpp
@@ -51,7 +51,8 @@ public:
QSet<QtProperty *> m_parentItems;
QList<QtProperty *> m_subItems;
- QString m_toolTip;
+ QString m_valueToolTip;
+ QString m_descriptionToolTip;
QString m_statusTip;
QString m_whatsThis;
QString m_name;
@@ -100,7 +101,11 @@ public:
\row
\li statusTip() \li setStatusTip()
\row
- \li toolTip() \li setToolTip()
+ \li descriptionToolTip() \li setDescriptionToolTip()
+ \row
+ \li valueToolTip() \li setValueToolTip()
+ \row
+ \li toolTip() \deprecated in 5.6 \li setToolTip() \deprecated in 5.6
\row
\li whatsThis() \li setWhatsThis()
\row
@@ -192,14 +197,35 @@ QtAbstractPropertyManager *QtProperty::propertyManager() const
return d_ptr->m_manager;
}
+/* Note: As of 17.7.2015 for Qt 5.6, the existing 'toolTip' of the Property
+ * Browser solution was split into valueToolTip() and descriptionToolTip()
+ * to be able to implement custom tool tip for QTBUG-45442. This could
+ * be back-ported to the solution. */
+
+/*!
+ Returns the property value's tool tip.
+
+ This is suitable for tool tips over the value (item delegate).
+
+ \since 5.6
+ \sa setValueToolTip()
+*/
+QString QtProperty::valueToolTip() const
+{
+ return d_ptr->m_valueToolTip;
+}
+
/*!
- Returns the property's tool tip.
+ Returns the property description's tool tip.
- \sa setToolTip()
+ This is suitable for tool tips over the description (label).
+
+ \since 5.6
+ \sa setDescriptionToolTip()
*/
-QString QtProperty::toolTip() const
+QString QtProperty::descriptionToolTip() const
{
- return d_ptr->m_toolTip;
+ return d_ptr->m_descriptionToolTip;
}
/*!
@@ -289,16 +315,32 @@ QString QtProperty::valueText() const
}
/*!
- Sets the property's tool tip to the given \a text.
+ Sets the property value's tool tip to the given \a text.
+
+ \since 5.6
+ \sa valueToolTip()
+*/
+void QtProperty::setValueToolTip(const QString &text)
+{
+ if (d_ptr->m_valueToolTip == text)
+ return;
+
+ d_ptr->m_valueToolTip = text;
+ propertyChanged();
+}
+
+/*!
+ Sets the property description's tool tip to the given \a text.
- \sa toolTip()
+ \since 5.6
+ \sa descriptionToolTip()
*/
-void QtProperty::setToolTip(const QString &text)
+void QtProperty::setDescriptionToolTip(const QString &text)
{
- if (d_ptr->m_toolTip == text)
+ if (d_ptr->m_descriptionToolTip == text)
return;
- d_ptr->m_toolTip = text;
+ d_ptr->m_descriptionToolTip = text;
propertyChanged();
}
diff --git a/src/shared/qtpropertybrowser/qtpropertybrowser.h b/src/shared/qtpropertybrowser/qtpropertybrowser.h
index 357834d4..7b73009b 100644
--- a/src/shared/qtpropertybrowser/qtpropertybrowser.h
+++ b/src/shared/qtpropertybrowser/qtpropertybrowser.h
@@ -51,7 +51,9 @@ public:
QtAbstractPropertyManager *propertyManager() const;
- QString toolTip() const;
+ QString toolTip() const { return valueToolTip(); } // Compatibility
+ QString valueToolTip() const;
+ QString descriptionToolTip() const;
QString statusTip() const;
QString whatsThis() const;
QString propertyName() const;
@@ -62,7 +64,9 @@ public:
QIcon valueIcon() const;
QString valueText() const;
- void setToolTip(const QString &text);
+ void setToolTip(const QString &text) { setValueToolTip(text); } // Compatibility
+ void setValueToolTip(const QString &text);
+ void setDescriptionToolTip(const QString &text);
void setStatusTip(const QString &text);
void setWhatsThis(const QString &text);
void setPropertyName(const QString &text);
diff --git a/src/shared/qtpropertybrowser/qttreepropertybrowser.cpp b/src/shared/qtpropertybrowser/qttreepropertybrowser.cpp
index abb883e4..40271a55 100644
--- a/src/shared/qtpropertybrowser/qttreepropertybrowser.cpp
+++ b/src/shared/qtpropertybrowser/qttreepropertybrowser.cpp
@@ -577,21 +577,22 @@ void QtTreePropertyBrowserPrivate::updateItem(QTreeWidgetItem *item)
QtProperty *property = m_itemToIndex[item]->property();
QIcon expandIcon;
if (property->hasValue()) {
- QString toolTip = property->toolTip();
- if (toolTip.isEmpty())
- toolTip = property->valueText();
- item->setToolTip(1, toolTip);
+ const QString valueToolTip = property->valueToolTip();
+ const QString valueText = property->valueText();
+ item->setToolTip(1, valueToolTip.isEmpty() ? valueText : valueToolTip);
item->setIcon(1, property->valueIcon());
- item->setText(1, property->valueText());
+ item->setText(1, valueText);
} else if (markPropertiesWithoutValue() && !m_treeWidget->rootIsDecorated()) {
expandIcon = m_expandIcon;
}
item->setIcon(0, expandIcon);
item->setFirstColumnSpanned(!property->hasValue());
- item->setToolTip(0, property->propertyName());
+ const QString descriptionToolTip = property->descriptionToolTip();
+ const QString propertyName = property->propertyName();
+ item->setToolTip(0, descriptionToolTip.isEmpty() ? propertyName : descriptionToolTip);
item->setStatusTip(0, property->statusTip());
item->setWhatsThis(0, property->whatsThis());
- item->setText(0, property->propertyName());
+ item->setText(0, propertyName);
bool wasEnabled = item->flags() & Qt::ItemIsEnabled;
bool isEnabled = wasEnabled;
if (property->isEnabled()) {