Index: Source/devtools/front_end/FilterBar.js |
diff --git a/Source/devtools/front_end/FilterBar.js b/Source/devtools/front_end/FilterBar.js |
index 7768c3a894f1bdf86a11f3e461958d489ceb3bda..f4fb2ea530124c12efa4617471f3266e3b3b9ecc 100644 |
--- a/Source/devtools/front_end/FilterBar.js |
+++ b/Source/devtools/front_end/FilterBar.js |
@@ -437,10 +437,12 @@ WebInspector.TextFilterUI.SuggestionBuilder.prototype = { |
/** |
* @constructor |
- * @implements {WebInspector.FilterUI} |
* @extends {WebInspector.Object} |
+ * @implements {WebInspector.FilterUI} |
+ * @param {!Array.<!WebInspector.NamedBitSetFilterUI.Item>} items |
+ * @param {!WebInspector.Setting=} setting |
*/ |
-WebInspector.NamedBitSetFilterUI = function() |
+WebInspector.NamedBitSetFilterUI = function(items, setting) |
{ |
this._filtersElement = document.createElement("div"); |
this._filtersElement.className = "filter-bitset-filter status-bar-item"; |
@@ -448,11 +450,24 @@ WebInspector.NamedBitSetFilterUI = function() |
this._allowedTypes = {}; |
this._typeFilterElements = {}; |
- this.addBit(WebInspector.NamedBitSetFilterUI.ALL_TYPES, WebInspector.UIString("All")); |
+ this._addBit(WebInspector.NamedBitSetFilterUI.ALL_TYPES, WebInspector.UIString("All")); |
this._filtersElement.createChild("div", "filter-bitset-filter-divider"); |
- this._toggleTypeFilter(WebInspector.NamedBitSetFilterUI.ALL_TYPES, false); |
+ |
+ for (var i = 0; i < items.length; ++i) |
+ this._addBit(items[i].name, items[i].label); |
+ |
+ if (setting) { |
+ this._setting = setting; |
+ setting.addChangeListener(this._settingChanged.bind(this)); |
+ this._settingChanged(); |
+ } else { |
+ this._toggleTypeFilter(WebInspector.NamedBitSetFilterUI.ALL_TYPES, false); |
+ } |
} |
+/** @typedef {{name: string, label: string}} */ |
+WebInspector.NamedBitSetFilterUI.Item; |
+ |
WebInspector.NamedBitSetFilterUI.ALL_TYPES = "all"; |
WebInspector.NamedBitSetFilterUI.prototype = { |
@@ -465,17 +480,6 @@ WebInspector.NamedBitSetFilterUI.prototype = { |
}, |
/** |
- * @param {!WebInspector.Setting} setting |
- */ |
- bindSetting: function(setting) |
- { |
- console.assert(!this._setting); |
- this._setting = setting; |
- setting.addChangeListener(this._settingChanged.bind(this)); |
- this._settingChanged(); |
- }, |
- |
- /** |
* @return {!Element} |
*/ |
element: function() |
@@ -518,7 +522,7 @@ WebInspector.NamedBitSetFilterUI.prototype = { |
* @param {string} name |
* @param {string} label |
*/ |
- addBit: function(name, label) |
+ _addBit: function(name, label) |
{ |
var typeFilterElement = this._filtersElement.createChild("li", name); |
typeFilterElement.typeName = name; |