| Index: third_party/WebKit/Source/devtools/front_end/ui_lazy/SortableDataGrid.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/ui_lazy/SortableDataGrid.js b/third_party/WebKit/Source/devtools/front_end/ui_lazy/SortableDataGrid.js
|
| deleted file mode 100644
|
| index 4e42a0616fed7fb4e2fbb9affbf31d0ecd242471..0000000000000000000000000000000000000000
|
| --- a/third_party/WebKit/Source/devtools/front_end/ui_lazy/SortableDataGrid.js
|
| +++ /dev/null
|
| @@ -1,174 +0,0 @@
|
| -// Copyright 2014 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -/**
|
| - * @unrestricted
|
| - * @extends {UI.ViewportDataGrid<!NODE_TYPE>}
|
| - * @template NODE_TYPE
|
| - */
|
| -UI.SortableDataGrid = class extends UI.ViewportDataGrid {
|
| - /**
|
| - * @param {!Array<!UI.DataGrid.ColumnDescriptor>} columnsArray
|
| - * @param {function(!NODE_TYPE, string, string, string)=} editCallback
|
| - * @param {function(!NODE_TYPE)=} deleteCallback
|
| - * @param {function()=} refreshCallback
|
| - */
|
| - constructor(columnsArray, editCallback, deleteCallback, refreshCallback) {
|
| - super(columnsArray, editCallback, deleteCallback, refreshCallback);
|
| - /** @type {function(!NODE_TYPE, !NODE_TYPE):number} */
|
| - this._sortingFunction = UI.SortableDataGrid.TrivialComparator;
|
| - this.setRootNode(/** @type {!UI.SortableDataGridNode<!NODE_TYPE>} */ (new UI.SortableDataGridNode()));
|
| - }
|
| -
|
| - /**
|
| - * @param {!UI.SortableDataGridNode} a
|
| - * @param {!UI.SortableDataGridNode} b
|
| - * @return {number}
|
| - */
|
| - static TrivialComparator(a, b) {
|
| - return 0;
|
| - }
|
| -
|
| - /**
|
| - * @param {string} columnId
|
| - * @param {!UI.SortableDataGridNode} a
|
| - * @param {!UI.SortableDataGridNode} b
|
| - * @return {number}
|
| - */
|
| - static NumericComparator(columnId, a, b) {
|
| - var aValue = a.data[columnId];
|
| - var bValue = b.data[columnId];
|
| - var aNumber = Number(aValue instanceof Node ? aValue.textContent : aValue);
|
| - var bNumber = Number(bValue instanceof Node ? bValue.textContent : bValue);
|
| - return aNumber < bNumber ? -1 : (aNumber > bNumber ? 1 : 0);
|
| - }
|
| -
|
| - /**
|
| - * @param {string} columnId
|
| - * @param {!UI.SortableDataGridNode} a
|
| - * @param {!UI.SortableDataGridNode} b
|
| - * @return {number}
|
| - */
|
| - static StringComparator(columnId, a, b) {
|
| - var aValue = a.data[columnId];
|
| - var bValue = b.data[columnId];
|
| - var aString = aValue instanceof Node ? aValue.textContent : String(aValue);
|
| - var bString = bValue instanceof Node ? bValue.textContent : String(bValue);
|
| - return aString < bString ? -1 : (aString > bString ? 1 : 0);
|
| - }
|
| -
|
| - /**
|
| - * @param {function(!NODE_TYPE, !NODE_TYPE):number} comparator
|
| - * @param {boolean} reverseMode
|
| - * @param {!NODE_TYPE} a
|
| - * @param {!NODE_TYPE} b
|
| - * @return {number}
|
| - * @template NODE_TYPE
|
| - */
|
| - static Comparator(comparator, reverseMode, a, b) {
|
| - return reverseMode ? comparator(b, a) : comparator(a, b);
|
| - }
|
| -
|
| - /**
|
| - * @param {!Array.<string>} columnNames
|
| - * @param {!Array.<string>} values
|
| - * @return {?UI.SortableDataGrid<!UI.SortableDataGridNode>}
|
| - */
|
| - static create(columnNames, values) {
|
| - var numColumns = columnNames.length;
|
| - if (!numColumns)
|
| - return null;
|
| -
|
| - var columns = /** @type {!Array<!UI.DataGrid.ColumnDescriptor>} */ ([]);
|
| - for (var i = 0; i < columnNames.length; ++i)
|
| - columns.push({id: String(i), title: columnNames[i], width: columnNames[i].length, sortable: true});
|
| -
|
| - var nodes = [];
|
| - for (var i = 0; i < values.length / numColumns; ++i) {
|
| - var data = {};
|
| - for (var j = 0; j < columnNames.length; ++j)
|
| - data[j] = values[numColumns * i + j];
|
| -
|
| - var node = new UI.SortableDataGridNode(data);
|
| - node.selectable = false;
|
| - nodes.push(node);
|
| - }
|
| -
|
| - var dataGrid = new UI.SortableDataGrid(columns);
|
| - var length = nodes.length;
|
| - var rootNode = dataGrid.rootNode();
|
| - for (var i = 0; i < length; ++i)
|
| - rootNode.appendChild(nodes[i]);
|
| -
|
| - dataGrid.addEventListener(UI.DataGrid.Events.SortingChanged, sortDataGrid);
|
| -
|
| - function sortDataGrid() {
|
| - var nodes = dataGrid.rootNode().children;
|
| - var sortColumnId = dataGrid.sortColumnId();
|
| - if (!sortColumnId)
|
| - return;
|
| -
|
| - var columnIsNumeric = true;
|
| - for (var i = 0; i < nodes.length; i++) {
|
| - var value = nodes[i].data[sortColumnId];
|
| - if (isNaN(value instanceof Node ? value.textContent : value)) {
|
| - columnIsNumeric = false;
|
| - break;
|
| - }
|
| - }
|
| -
|
| - var comparator = columnIsNumeric ? UI.SortableDataGrid.NumericComparator : UI.SortableDataGrid.StringComparator;
|
| - dataGrid.sortNodes(comparator.bind(null, sortColumnId), !dataGrid.isSortOrderAscending());
|
| - }
|
| - return dataGrid;
|
| - }
|
| -
|
| - /**
|
| - * @param {!NODE_TYPE} node
|
| - */
|
| - insertChild(node) {
|
| - var root = /** @type {!UI.SortableDataGridNode<!NODE_TYPE>} */ (this.rootNode());
|
| - root.insertChildOrdered(node);
|
| - }
|
| -
|
| - /**
|
| - * @param {function(!NODE_TYPE, !NODE_TYPE):number} comparator
|
| - * @param {boolean} reverseMode
|
| - */
|
| - sortNodes(comparator, reverseMode) {
|
| - this._sortingFunction = UI.SortableDataGrid.Comparator.bind(null, comparator, reverseMode);
|
| - this.rootNode().recalculateSiblings(0);
|
| - this.rootNode()._sortChildren(reverseMode);
|
| - this.scheduleUpdateStructure();
|
| - }
|
| -};
|
| -
|
| -/**
|
| - * @unrestricted
|
| - * @extends {UI.ViewportDataGridNode<!NODE_TYPE>}
|
| - * @template NODE_TYPE
|
| - */
|
| -UI.SortableDataGridNode = class extends UI.ViewportDataGridNode {
|
| - /**
|
| - * @param {?Object.<string, *>=} data
|
| - * @param {boolean=} hasChildren
|
| - */
|
| - constructor(data, hasChildren) {
|
| - super(data, hasChildren);
|
| - }
|
| -
|
| - /**
|
| - * @param {!NODE_TYPE} node
|
| - */
|
| - insertChildOrdered(node) {
|
| - this.insertChild(node, this.children.upperBound(node, this.dataGrid._sortingFunction));
|
| - }
|
| -
|
| - _sortChildren() {
|
| - this.children.sort(this.dataGrid._sortingFunction);
|
| - for (var i = 0; i < this.children.length; ++i)
|
| - this.children[i].recalculateSiblings(i);
|
| - for (var child of this.children)
|
| - child._sortChildren();
|
| - }
|
| -};
|
|
|