From: Ted Kremenek Date: Mon, 2 Mar 2009 23:05:40 +0000 (+0000) Subject: Adjust HTML message bubbles to utilize information from PathDiagnosticPiece::Kind. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=80bae763da8bf3f3c73379a1e5d10f5bce266bca;p=clang Adjust HTML message bubbles to utilize information from PathDiagnosticPiece::Kind. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65891 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Frontend/HTMLDiagnostics.cpp b/lib/Frontend/HTMLDiagnostics.cpp index 9996fbbcd7..60e99be01f 100644 --- a/lib/Frontend/HTMLDiagnostics.cpp +++ b/lib/Frontend/HTMLDiagnostics.cpp @@ -388,7 +388,7 @@ void HTMLDiagnostics::HandlePiece(Rewriter& R, FileID BugFileID, // Next, determine the approximate size of the message bubble in em. unsigned em; - const unsigned max_line = 120; + const unsigned max_line = 110; if (max_token >= max_line) em = max_token / 2; @@ -407,9 +407,16 @@ void HTMLDiagnostics::HandlePiece(Rewriter& R, FileID BugFileID, em = characters / 2; } - // Now generate the message bubble. - std::string s; - llvm::raw_string_ostream os(s); + // Now generate the message bubble. + const char *Kind = 0; + switch (P.getKind()) { + default: break; + case PathDiagnosticPiece::Event: Kind = "Event"; break; + case PathDiagnosticPiece::ControlFlow: Kind = "Control"; break; + } + + std::string sbuf; + llvm::raw_string_ostream os(sbuf); os << "\n
"; - if (max > 1) - os << "[" << num << "] "; + if (max > 1) { + os << "
"; + os << "
" << num << "
"; + os << "
"; + } + + os << html::EscapeText(Msg); + + if (max > 1) { + os << "
"; + } - os << html::EscapeText(Msg) << "
"; + os << ""; // Insert the new html. unsigned DisplayPos = LineEnd - FileStart; diff --git a/lib/Rewrite/HTMLRewrite.cpp b/lib/Rewrite/HTMLRewrite.cpp index b1f5cee366..96e455d1de 100644 --- a/lib/Rewrite/HTMLRewrite.cpp +++ b/lib/Rewrite/HTMLRewrite.cpp @@ -314,12 +314,17 @@ void html::AddHeaderFooterInternalBuiltinCSS(Rewriter& R, FileID FID, " .msg { padding:0.5em 1ex 0.5em 1ex }\n" " .msg { margin-top:10px; margin-bottom:10px }\n" " .msg { font-weight:bold }\n" - " .msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap;}\n" + " .msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }\n" + " .msgT { padding:0x; spacing:0x }\n" " .msgEvent { background-color:#fff8b4; color:#000000 }\n" - " .msgControl { background-color:#bbbbbb; color:#444444 }\n" + " .msgControl { background-color:#bbbbbb; color:#000000 }\n" " .mrange { background-color:#dfddf3 }\n" " .mrange { border-bottom:1px solid #6F9DBE }\n" - " .PathIndex { font-weight: bold }\n" + " .PathIndex { font-weight: bold; padding:5px;margin-right:5px;top:5px}\n" + " .PathIndex { -webkit-box-shadow:1px 1px 7px #000 }\n" + " .PathIndex { -webkit-border-radius:5px }\n" + " .PathIndexEvent { background-color:#fffbd9 }\n" + " .PathIndexControl { background-color:#dddddd }\n" " .CodeInsertionHint { font-weight: bold; background-color: #10dd10 }\n" " .CodeRemovalHint { background-color:#de1010 }\n" " .CodeRemovalHint { border-bottom:1px solid #6F9DBE }\n"