summaryrefslogtreecommitdiff
path: root/Source/WebInspectorUI/UserInterface/Toolbar.js
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebInspectorUI/UserInterface/Toolbar.js
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Source/WebInspectorUI/UserInterface/Toolbar.js')
-rw-r--r--Source/WebInspectorUI/UserInterface/Toolbar.js240
1 files changed, 0 insertions, 240 deletions
diff --git a/Source/WebInspectorUI/UserInterface/Toolbar.js b/Source/WebInspectorUI/UserInterface/Toolbar.js
deleted file mode 100644
index 643fdb4f2..000000000
--- a/Source/WebInspectorUI/UserInterface/Toolbar.js
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- * Copyright (C) 2013 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.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. 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 INC. 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.Toolbar = function(element, navigationItems) {
- WebInspector.NavigationBar.call(this, element, navigationItems, "toolbar");
-
- this.displayMode = WebInspector.Toolbar.DisplayMode.IconAndLabelVertical;
- this.sizeMode = WebInspector.Toolbar.SizeMode.Normal;
-
- this._controlSectionElement = document.createElement("div");
- this._controlSectionElement.className = WebInspector.Toolbar.ControlSectionStyleClassName;
- this._element.appendChild(this._controlSectionElement);
-
- this._leftSectionElement = document.createElement("div");
- this._leftSectionElement.className = WebInspector.Toolbar.ItemSectionStyleClassName + " " + WebInspector.Toolbar.LeftItemSectionStyleClassName;
- this._leftSectionElement.setAttribute("role", "tablist");
- this._element.appendChild(this._leftSectionElement);
-
- this._centerSectionElement = document.createElement("div");
- this._centerSectionElement.className = WebInspector.Toolbar.ItemSectionStyleClassName + " " + WebInspector.Toolbar.CenterItemSectionStyleClassName;
- this._element.appendChild(this._centerSectionElement);
-
- this._rightSectionElement = document.createElement("div");
- this._rightSectionElement.className = WebInspector.Toolbar.ItemSectionStyleClassName + " " + WebInspector.Toolbar.RightItemSectionStyleClassName;
- this._rightSectionElement.setAttribute("role", "tablist");
- this._element.appendChild(this._rightSectionElement);
-
- this._element.addEventListener("contextmenu", this._handleContextMenuEvent.bind(this), false);
-};
-
-WebInspector.Object.addConstructorFunctions(WebInspector.Toolbar);
-
-WebInspector.Toolbar.StyleClassName = "toolbar";
-WebInspector.Toolbar.ControlSectionStyleClassName = "control-section";
-WebInspector.Toolbar.ItemSectionStyleClassName = "item-section";
-WebInspector.Toolbar.LeftItemSectionStyleClassName = "left";
-WebInspector.Toolbar.CenterItemSectionStyleClassName = "center";
-WebInspector.Toolbar.RightItemSectionStyleClassName = "right";
-WebInspector.Toolbar.TotalSectionMargins = 12 * 3;
-
-WebInspector.Toolbar.Event = {
- DisplayModeDidChange: "toolbar-display-mode-did-change",
- SizeModeDidChange: "toolbar-size-mode-did-change"
-};
-
-WebInspector.Toolbar.Section = {
- Control: "control",
- Left: "left",
- Center: "center",
- Right: "right"
-};
-
-WebInspector.Toolbar.DisplayMode = {
- IconAndLabelVertical: "icon-and-label-vertical",
- IconAndLabelHorizontal: "icon-and-label-horizontal",
- IconOnly: "icon-only",
- LabelOnly: "label-only"
-};
-
-WebInspector.Toolbar.SizeMode = {
- Normal: "normal-size",
- Small: "small-size"
-};
-
-WebInspector.Toolbar.prototype = {
- constructor: WebInspector.Toolbar,
-
- // Public
-
- get displayMode()
- {
- return this._displayMode;
- },
-
- set displayMode(mode)
- {
- if (mode === this._displayMode)
- return;
-
- if (this._displayMode)
- this._element.classList.remove(this._displayMode);
-
- // Revert the forced icon-only mode if it was applied.
- if (this._displayMode === WebInspector.Toolbar.DisplayMode.IconAndLabelHorizontal)
- this._element.classList.remove(WebInspector.Toolbar.DisplayMode.IconOnly);
-
- this._displayMode = mode;
-
- this._element.classList.add(mode);
-
- this.updateLayout();
-
- this.dispatchEventToListeners(WebInspector.Toolbar.Event.DisplayModeDidChange);
- },
-
- get sizeMode()
- {
- return this._sizeMode;
- },
-
- set sizeMode(mode)
- {
- if (mode === this._sizeMode)
- return;
-
- if (this._sizeMode)
- this._element.classList.remove(this._sizeMode);
-
- this._sizeMode = mode;
-
- this._element.classList.add(mode);
-
- this.updateLayout();
-
- this.dispatchEventToListeners(WebInspector.Toolbar.Event.SizeModeDidChange);
- },
-
- customUpdateLayout: function()
- {
- // Bail early if our sections are not created yet. This means we are being called during construction.
- if (!this._leftSectionElement || !this._centerSectionElement || !this._rightSectionElement)
- return;
-
- // Remove the collapsed style class to test if the items can fit at full width.
- this._element.classList.remove(WebInspector.NavigationBar.CollapsedStyleClassName);
-
- // Revert the forced icon-only mode if it was applied.
- if (this._displayMode === WebInspector.Toolbar.DisplayMode.IconAndLabelHorizontal) {
- this._element.classList.remove(WebInspector.Toolbar.DisplayMode.IconOnly);
- this._element.classList.add(WebInspector.Toolbar.DisplayMode.IconAndLabelHorizontal);
- }
-
- function isOverflowingToolbar()
- {
- var controlSectionWidth = this._controlSectionElement.offsetWidth;
- var leftSectionWidth = this._leftSectionElement.offsetWidth;
- var rightSectionWidth = this._rightSectionElement.offsetWidth;
- var centerSectionWidth = this._centerSectionElement.offsetWidth;
-
- // Add one to the actual toolbar width to allow some slop. This wasn't needed when sub-pixel layout was on,
- // but that was disabled in: http://webkit.org/b/149209
- var toolbarWidth = this.element.offsetWidth + 1;
-
- return controlSectionWidth + leftSectionWidth + centerSectionWidth + rightSectionWidth + WebInspector.Toolbar.TotalSectionMargins > toolbarWidth;
- }
-
- // Only the horizontal display mode supports collapsing labels.
- // If any sections are overflowing the toolbar then force the display mode to be icon only.
- if (this._displayMode === WebInspector.Toolbar.DisplayMode.IconAndLabelHorizontal && isOverflowingToolbar.call(this)) {
- this._element.classList.remove(WebInspector.Toolbar.DisplayMode.IconAndLabelHorizontal);
- this._element.classList.add(WebInspector.Toolbar.DisplayMode.IconOnly);
- }
-
- if (!isOverflowingToolbar.call(this))
- return;
-
- this._element.classList.add(WebInspector.NavigationBar.CollapsedStyleClassName);
- },
-
- addToolbarItem: function(toolbarItem, sectionIdentifier)
- {
- var sectionElement;
-
- switch (sectionIdentifier) {
- case WebInspector.Toolbar.Section.Control:
- sectionElement = this._controlSectionElement;
- break;
-
- case WebInspector.Toolbar.Section.Left:
- sectionElement = this._leftSectionElement;
- break;
-
- default:
- case WebInspector.Toolbar.Section.Center:
- sectionElement = this._centerSectionElement;
- break;
-
- case WebInspector.Toolbar.Section.Right:
- sectionElement = this._rightSectionElement;
- break;
- }
-
- console.assert(sectionElement);
-
- this.addNavigationItem(toolbarItem, sectionElement);
- },
-
- // Private
-
- _handleContextMenuEvent: function(event)
- {
- var contextMenu = new WebInspector.ContextMenu(event);
-
- contextMenu.appendCheckboxItem(WebInspector.UIString("Icon and Text (Vertical)"), this._changeDisplayMode.bind(this, WebInspector.Toolbar.DisplayMode.IconAndLabelVertical), this._displayMode === WebInspector.Toolbar.DisplayMode.IconAndLabelVertical);
- contextMenu.appendCheckboxItem(WebInspector.UIString("Icon and Text (Horizontal)"), this._changeDisplayMode.bind(this, WebInspector.Toolbar.DisplayMode.IconAndLabelHorizontal), this._displayMode === WebInspector.Toolbar.DisplayMode.IconAndLabelHorizontal);
- contextMenu.appendCheckboxItem(WebInspector.UIString("Icon Only"), this._changeDisplayMode.bind(this, WebInspector.Toolbar.DisplayMode.IconOnly), this._displayMode === WebInspector.Toolbar.DisplayMode.IconOnly);
- contextMenu.appendCheckboxItem(WebInspector.UIString("Text Only"), this._changeDisplayMode.bind(this, WebInspector.Toolbar.DisplayMode.LabelOnly), this._displayMode === WebInspector.Toolbar.DisplayMode.LabelOnly);
-
- if (this._displayMode !== WebInspector.Toolbar.DisplayMode.LabelOnly) {
- contextMenu.appendSeparator();
- contextMenu.appendCheckboxItem(WebInspector.UIString("Small Icons"), this._toggleSmallIcons.bind(this), this._sizeMode === WebInspector.Toolbar.SizeMode.Small);
- }
-
- contextMenu.show();
- },
-
- _changeDisplayMode: function(displayMode)
- {
- this.displayMode = displayMode;
- },
-
- _toggleSmallIcons: function()
- {
- this.sizeMode = this._sizeMode === WebInspector.Toolbar.SizeMode.Normal ? WebInspector.Toolbar.SizeMode.Small : WebInspector.Toolbar.SizeMode.Normal;
- }
-};
-
-WebInspector.Toolbar.prototype.__proto__ = WebInspector.NavigationBar.prototype;