15c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)/* 25c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * Copyright (C) 2012 Google Inc. All rights reserved. 35c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * 45c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * Redistribution and use in source and binary forms, with or without 55c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * modification, are permitted provided that the following conditions are 65c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * met: 75c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * 85c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * * Redistributions of source code must retain the above copyright 95c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * notice, this list of conditions and the following disclaimer. 105c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * * Redistributions in binary form must reproduce the above 115c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * copyright notice, this list of conditions and the following disclaimer 125c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * in the documentation and/or other materials provided with the 135c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * distribution. 145c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * * Neither the name of Google Inc. nor the names of its 155c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * contributors may be used to endorse or promote products derived from 165c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * this software without specific prior written permission. 175c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * 185c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 195c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 205c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 215c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 225c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 235c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 245c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 255c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 265c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 275c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 285c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 295c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 305c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 315c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)/** 325c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @constructor 335c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @extends {WebInspector.Object} 345c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 355c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)WebInspector.SnippetStorage = function(settingPrefix, namePrefix) 365c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles){ 375c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippets = {}; 385c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 395c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._lastSnippetIdentifierSetting = WebInspector.settings.createSetting(settingPrefix + "Snippets_lastIdentifier", 0); 405c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippetsSetting = WebInspector.settings.createSetting(settingPrefix + "Snippets", []); 415c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._namePrefix = namePrefix; 425c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 435c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._loadSettings(); 445c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)} 455c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 465c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)WebInspector.SnippetStorage.prototype = { 475c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) get namePrefix() 485c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 495c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return this._namePrefix; 505c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 515c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 525c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) _saveSettings: function() 535c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 545c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) var savedSnippets = []; 555c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) for (var id in this._snippets) 565c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) savedSnippets.push(this._snippets[id].serializeToObject()); 575c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippetsSetting.set(savedSnippets); 585c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 595c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 605c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 61a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @return {!Array.<!WebInspector.Snippet>} 625c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 635c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) snippets: function() 645c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 655c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) var result = []; 665c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) for (var id in this._snippets) 675c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) result.push(this._snippets[id]); 685c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return result; 695c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 705c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 715c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 725c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @param {string} id 73a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @return {!WebInspector.Snippet} 745c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 755c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) snippetForId: function(id) 765c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 775c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return this._snippets[id]; 785c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 795c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 8093ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) /** 8193ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) * @param {string} name 82a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @return {?WebInspector.Snippet} 8393ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) */ 8493ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) snippetForName: function(name) 8593ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) { 8693ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) var snippets = Object.values(this._snippets); 8793ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) for (var i = 0; i < snippets.length; ++i) 8893ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) if (snippets[i].name === name) 8993ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) return snippets[i]; 9093ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) return null; 9193ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) }, 9293ac45cfc74041c8ae536ce58a9534d46db2024eTorne (Richard Coles) 935c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) _loadSettings: function() 945c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 955c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) var savedSnippets = this._snippetsSetting.get(); 965c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) for (var i = 0; i < savedSnippets.length; ++i) 975c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippetAdded(WebInspector.Snippet.fromObject(this, savedSnippets[i])); 985c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 995c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1005c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 101a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @param {!WebInspector.Snippet} snippet 1025c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1035c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) deleteSnippet: function(snippet) 1045c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1055c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) delete this._snippets[snippet.id]; 1065c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._saveSettings(); 1075c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 1085c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1095c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 110a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @return {!WebInspector.Snippet} 1115c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1125c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) createSnippet: function() 1135c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1145c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) var nextId = this._lastSnippetIdentifierSetting.get() + 1; 1155c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) var snippetId = String(nextId); 1165c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._lastSnippetIdentifierSetting.set(nextId); 1175c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) var snippet = new WebInspector.Snippet(this, snippetId); 1185c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippetAdded(snippet); 1195c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._saveSettings(); 1205c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return snippet; 1215c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 1225c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1235c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 124a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @param {!WebInspector.Snippet} snippet 1255c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1265c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) _snippetAdded: function(snippet) 1275c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1285c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippets[snippet.id] = snippet; 1295c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 1305c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1315c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) reset: function() 1325c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1335c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._lastSnippetIdentifierSetting.set(0); 1345c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippetsSetting.set([]); 1355c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._snippets = {}; 1365c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 1375c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1385c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) __proto__: WebInspector.Object.prototype 1395c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)} 1405c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1415c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)/** 1425c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @constructor 1435c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @extends {WebInspector.Object} 144a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @param {!WebInspector.SnippetStorage} storage 1455c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @param {string} id 1465c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @param {string=} name 1475c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @param {string=} content 1485c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1495c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)WebInspector.Snippet = function(storage, id, name, content) 1505c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles){ 1515c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._storage = storage; 1525c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._id = id; 1535c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._name = name || storage.namePrefix + id; 1545c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._content = content || ""; 1555c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)} 1565c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1575c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)/** 158a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @param {!WebInspector.SnippetStorage} storage 159a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @param {!Object} serializedSnippet 160a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @return {!WebInspector.Snippet} 1615c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1625c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)WebInspector.Snippet.fromObject = function(storage, serializedSnippet) 1635c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles){ 1645c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return new WebInspector.Snippet(storage, serializedSnippet.id, serializedSnippet.name, serializedSnippet.content); 1655c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)} 1665c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1675c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)WebInspector.Snippet.prototype = { 1685c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 1695c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @return {string} 1705c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1715c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) get id() 1725c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1735c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return this._id; 1745c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 1755c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1765c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 1775c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @return {string} 1785c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1795c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) get name() 1805c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1815c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return this._name; 1825c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 1835c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1845c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) set name(name) 1855c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1865c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) if (this._name === name) 1875c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return; 1885c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1895c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._name = name; 1905c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._storage._saveSettings(); 1915c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 1925c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 1935c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 1945c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) * @return {string} 1955c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 1965c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) get content() 1975c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 1985c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return this._content; 1995c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 2005c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 2015c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) set content(content) 2025c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 2035c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) if (this._content === content) 2045c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return; 2055c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 2065c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._content = content; 2075c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) this._storage._saveSettings(); 2085c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 2095c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 2105c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) /** 211a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles) * @return {!Object} 2125c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) */ 2135c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) serializeToObject: function() 2145c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) { 2155c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) var serializedSnippet = {}; 2165c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) serializedSnippet.id = this.id; 2175c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) serializedSnippet.name = this.name; 2185c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) serializedSnippet.content = this.content; 2195c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) return serializedSnippet; 2205c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) }, 2215c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) 2225c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles) __proto__: WebInspector.Object.prototype 2235c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)} 224