OSDN Git Service

Debugger: Tooltip in Stack Window
authorAurindam Jana <aurindam.jana@nokai.com>
Mon, 17 Oct 2011 13:10:16 +0000 (15:10 +0200)
committerhjk <qthjk@ovi.com>
Thu, 20 Oct 2011 14:45:12 +0000 (16:45 +0200)
Show only those fields in tooltip that have proper values.

Task-number: QTCREATORBUG-6336
Change-Id: I6fdc5fcae8c36e0115fb9268531f5bb16ce48fe0
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
src/plugins/debugger/stackframe.cpp

index fd5043b..3c348ad 100644 (file)
@@ -88,18 +88,25 @@ QString StackFrame::toToolTip() const
     const QString filePath = QDir::toNativeSeparators(file);
     QString res;
     QTextStream str(&res);
-    str << "<html><body><table>"
-        << "<tr><td>" << tr("Address:") << "</td><td>0x";
-    str.setIntegerBase(16);
-    str <<  address;
+    str << "<html><body><table>";
+    if (address) {
+        str << "<tr><td>" << tr("Address:") << "</td><td>0x";
+        str.setIntegerBase(16);
+        str <<  address;
+    }
     str.setIntegerBase(10);
-    str << "</td></tr>"
-        << "<tr><td>" << tr("Function:") << "</td><td>" << function << "</td></tr>"
-        << "<tr><td>" << tr("File:") << "</td><td>" << filePath << "</td></tr>"
-        << "<tr><td>" << tr("Line:") << "</td><td>" << line << "</td></tr>"
-        << "<tr><td>" << tr("From:") << "</td><td>" << from << "</td></tr>"
-        << "<tr><td>" << tr("To:") << "</td><td>" << to << "</td></tr>"
-        << "</table></body></html>";
+    str << "</td></tr>";
+    if (!function.isEmpty())
+        str << "<tr><td>" << tr("Function:") << "</td><td>" << function << "</td></tr>";
+    if (!file.isEmpty())
+        str << "<tr><td>" << tr("File:") << "</td><td>" << filePath << "</td></tr>";
+    if (line != -1)
+        str << "<tr><td>" << tr("Line:") << "</td><td>" << line << "</td></tr>";
+    if (!from.isEmpty())
+        str << "<tr><td>" << tr("From:") << "</td><td>" << from << "</td></tr>";
+    if (!to.isEmpty())
+        str << "<tr><td>" << tr("To:") << "</td><td>" << to << "</td></tr>";
+    str << "</table></body></html>";
     return res;
 }