home *** CD-ROM | disk | FTP | other *** search
/ Computer Active Guide 2009 July / CAG7.ISO / Internetas / SafariSetup.exe / AppleApplicationSupport.msi / WebKit.resources_inspector_PropertiesSidebarPane.js < prev    next >
Encoding:
Text File  |  2010-06-03  |  2.8 KB  |  66 lines

  1. /*
  2.  * Copyright (C) 2007 Apple Inc.  All rights reserved.
  3.  *
  4.  * Redistribution and use in source and binary forms, with or without
  5.  * modification, are permitted provided that the following conditions
  6.  * are met:
  7.  *
  8.  * 1.  Redistributions of source code must retain the above copyright
  9.  *     notice, this list of conditions and the following disclaimer.
  10.  * 2.  Redistributions in binary form must reproduce the above copyright
  11.  *     notice, this list of conditions and the following disclaimer in the
  12.  *     documentation and/or other materials provided with the distribution.
  13.  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  14.  *     its contributors may be used to endorse or promote products derived
  15.  *     from this software without specific prior written permission.
  16.  *
  17.  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  18.  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  19.  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  20.  * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
  21.  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  22.  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  23.  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  24.  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  25.  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  26.  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  27.  */
  28.  
  29. WebInspector.PropertiesSidebarPane = function()
  30. {
  31.     WebInspector.SidebarPane.call(this, WebInspector.UIString("Properties"));
  32. }
  33.  
  34. WebInspector.PropertiesSidebarPane.prototype = {
  35.     update: function(node)
  36.     {
  37.         var body = this.bodyElement;
  38.  
  39.         if (!node) {
  40.             body.removeChildren();
  41.             this.sections = [];
  42.             return;
  43.         }
  44.  
  45.         var self = this;
  46.         var callback = function(prototypes) {
  47.             var body = self.bodyElement;
  48.             body.removeChildren();
  49.             self.sections = [];
  50.  
  51.             var path = [];
  52.             // Get array of prototype user-friendly names.
  53.             for (var i = 0; i < prototypes.length; ++i) {
  54.                 var prototype = new WebInspector.ObjectProxy(node.injectedScriptId, node.id, path.slice());
  55.                 var section = new WebInspector.ObjectPropertiesSection(prototype, prototypes[i], WebInspector.UIString("Prototype"));
  56.                 self.sections.push(section);
  57.                 body.appendChild(section.element);
  58.                 path.push("__proto__");
  59.             }
  60.         };
  61.         InjectedScriptAccess.get(node.injectedScriptId).getPrototypes(node.id, callback);
  62.     }
  63. }
  64.  
  65. WebInspector.PropertiesSidebarPane.prototype.__proto__ = WebInspector.SidebarPane.prototype;
  66.