summaryrefslogtreecommitdiffstats
path: root/WebCore/page/inspector/SourcePanel.js
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/page/inspector/SourcePanel.js')
-rw-r--r--WebCore/page/inspector/SourcePanel.js144
1 files changed, 0 insertions, 144 deletions
diff --git a/WebCore/page/inspector/SourcePanel.js b/WebCore/page/inspector/SourcePanel.js
deleted file mode 100644
index 9d4139c..0000000
--- a/WebCore/page/inspector/SourcePanel.js
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright (C) 2007 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-WebInspector.SourcePanel = function(resource, views)
-{
- var allViews = [{ title: WebInspector.UIString("Source"), name: "source" }];
- if (views)
- allViews = allViews.concat(views);
-
- WebInspector.ResourcePanel.call(this, resource, allViews);
-
- this.currentView = this.views.source;
-
- var sourceView = this.views.source;
-
- sourceView.messages = [];
- sourceView.frameNeedsSetup = true;
-
- sourceView.frameElement = document.createElement("iframe");
- sourceView.frameElement.setAttribute("viewsource", "true");
- sourceView.contentElement.appendChild(sourceView.frameElement);
-}
-
-WebInspector.SourcePanel.prototype = {
- show: function()
- {
- WebInspector.ResourcePanel.prototype.show.call(this);
- this.setupSourceFrameIfNeeded();
- },
-
- setupSourceFrameIfNeeded: function()
- {
- if (this.views.source.frameNeedsSetup) {
- this.attach();
-
- InspectorController.addSourceToFrame(this.resource.identifier, this.views.source.frameElement);
- WebInspector.addMainEventListeners(this.views.source.frameElement.contentDocument);
-
- var length = this.views.source.messages;
- for (var i = 0; i < length; ++i)
- this._addMessageToSource(this.views.source.messages[i]);
-
- delete this.views.source.frameNeedsSetup;
- }
- },
-
- sourceRow: function(lineNumber)
- {
- this.setupSourceFrameIfNeeded();
-
- var doc = this.views.source.frameElement.contentDocument;
- var rows = doc.getElementsByTagName("table")[0].rows;
-
- // Line numbers are a 1-based index, but the rows collection is 0-based.
- --lineNumber;
- if (lineNumber >= rows.length)
- lineNumber = rows.length - 1;
-
- return rows[lineNumber];
- },
-
- showSourceLine: function(lineNumber)
- {
- var row = this.sourceRow(lineNumber);
- if (!row)
- return;
- this.currentView = this.views.source;
- row.scrollIntoView(true);
- },
-
- addMessageToSource: function(msg)
- {
- this.views.source.messages.push(msg);
- if (!this.views.source.frameNeedsSetup)
- this._addMessageToSource(msg);
- },
-
- _addMessageToSource: function(msg)
- {
- var row = this.sourceRow(msg.line);
- if (!row)
- return;
-
- var doc = this.views.source.frameElement.contentDocument;
- var cell = row.getElementsByTagName("td")[1];
-
- var errorDiv = cell.lastChild;
- if (!errorDiv || errorDiv.nodeName.toLowerCase() !== "div" || !errorDiv.hasStyleClass("webkit-html-message-bubble")) {
- errorDiv = doc.createElement("div");
- errorDiv.className = "webkit-html-message-bubble";
- cell.appendChild(errorDiv);
- }
-
- var imageURL;
- switch (msg.level) {
- case WebInspector.ConsoleMessage.MessageLevel.Error:
- errorDiv.addStyleClass("webkit-html-error-message");
- imageURL = "Images/errorIcon.png";
- break;
- case WebInspector.ConsoleMessage.MessageLevel.Warning:
- errorDiv.addStyleClass("webkit-html-warning-message");
- imageURL = "Images/warningIcon.png";
- break;
- }
-
- var lineDiv = doc.createElement("div");
- lineDiv.className = "webkit-html-message-line";
- errorDiv.appendChild(lineDiv);
-
- var image = doc.createElement("img");
- image.src = imageURL;
- image.className = "webkit-html-message-icon";
- lineDiv.appendChild(image);
-
- lineDiv.appendChild(doc.createTextNode(msg.message));
- }
-}
-
-WebInspector.SourcePanel.prototype.__proto__ = WebInspector.ResourcePanel.prototype;