+
+/**
+ * @constructor
+ * @implements {WebInspector.StatusBarItem.Provider}
+ */
+WebInspector.Main.WarningErrorCounter = function()
+{
+ this._counter = new WebInspector.StatusBarCounter(["error-icon-small", "warning-icon-small"]);
+ this._counter.addEventListener("click", showConsole);
+
+ function showConsole()
+ {
+ WebInspector.console.show();
+ }
+
+ WebInspector.multitargetConsoleModel.addEventListener(WebInspector.ConsoleModel.Events.ConsoleCleared, this._updateErrorAndWarningCounts, this);
+ WebInspector.multitargetConsoleModel.addEventListener(WebInspector.ConsoleModel.Events.MessageAdded, this._updateErrorAndWarningCounts, this);
+}
+
+WebInspector.Main.WarningErrorCounter.prototype = {
+ _updateErrorAndWarningCounts: function()
+ {
+ var errors = 0;
+ var warnings = 0;
+ var targets = WebInspector.targetManager.targets();
+ for (var i = 0; i < targets.length; ++i) {
+ errors = errors + targets[i].consoleModel.errors;
+ warnings = warnings + targets[i].consoleModel.warnings;
+ }
+ this._counter.setCounter("error-icon-small", errors, WebInspector.UIString(errors > 1 ? "%d errors" : "%d error", errors));
+ this._counter.setCounter("warning-icon-small", warnings, WebInspector.UIString(warnings > 1 ? "%d warnings" : "%d warning", warnings));
+ WebInspector.inspectorView.toolbarItemResized();
+ },
+
+ /**
+ * @return {?WebInspector.StatusBarItem}
+ */
+ item: function()
+ {
+ return this._counter;
+ }
+}
+
+/**
+ * @constructor
+ */
+WebInspector.Main.PauseListener = function()
+{
+ WebInspector.targetManager.addModelListener(WebInspector.DebuggerModel, WebInspector.DebuggerModel.Events.DebuggerPaused, this._debuggerPaused, this);
+}
+
+WebInspector.Main.PauseListener.prototype = {
+ /**
+ * @param {!WebInspector.Event} event
+ */
+ _debuggerPaused: function(event)
+ {
+ WebInspector.targetManager.removeModelListener(WebInspector.DebuggerModel, WebInspector.DebuggerModel.Events.DebuggerPaused, this._debuggerPaused, this);
+ var debuggerModel = /** @type {!WebInspector.DebuggerModel} */ (event.target);
+ WebInspector.context.setFlavor(WebInspector.Target, debuggerModel.target());
+ WebInspector.inspectorView.showPanel("sources");
+ }
+}
+
+/**
+ * @constructor
+ */
+WebInspector.Main.InspectedNodeRevealer = function()
+{
+ WebInspector.targetManager.addModelListener(WebInspector.DOMModel, WebInspector.DOMModel.Events.NodeInspected, this._inspectNode, this);
+}
+
+WebInspector.Main.InspectedNodeRevealer.prototype = {
+ /**
+ * @param {!WebInspector.Event} event
+ */
+ _inspectNode: function(event)
+ {
+ WebInspector.Revealer.reveal(/** @type {!WebInspector.DOMNode} */ (event.data));
+ }
+}