1<!DOCTYPE html>
2<!--
3Copyright (c) 2013 The Chromium Authors. All rights reserved.
4Use of this source code is governed by a BSD-style license that can be
5found in the LICENSE file.
6-->
7
8<link rel="import" href="/tracing/base/extension_registry.html">
9<link rel="import" href="/tracing/ui/base/ui.html">
10
11<script>
12'use strict';
13
14tr.exportTo('tr.ui.analysis', function() {
15  var ObjectInstanceView = tr.ui.b.define('object-instance-view');
16
17  ObjectInstanceView.prototype = {
18    __proto__: HTMLUnknownElement.prototype,
19
20    decorate: function() {
21      this.objectInstance_ = undefined;
22    },
23
24    get requiresTallView() {
25      return true;
26    },
27
28    set modelEvent(obj) {
29      this.objectInstance = obj;
30    },
31
32    get modelEvent() {
33      return this.objectInstance;
34    },
35
36    get objectInstance() {
37      return this.objectInstance_;
38    },
39
40    set objectInstance(i) {
41      this.objectInstance_ = i;
42      this.updateContents();
43    },
44
45    updateContents: function() {
46      throw new Error('Not implemented');
47    }
48  };
49
50  var options = new tr.b.ExtensionRegistryOptions(
51      tr.b.TYPE_BASED_REGISTRY_MODE);
52  options.mandatoryBaseClass = ObjectInstanceView;
53  options.defaultMetadata = {
54    showInTrackView: true
55  };
56  tr.b.decorateExtensionRegistry(ObjectInstanceView, options);
57
58  return {
59    ObjectInstanceView: ObjectInstanceView
60  };
61});
62</script>
63