nitweb: add sumaries to doc pages
[nit.git] / share / nitweb / views / class.html
1 <ul class='nav nav-tabs'>
2 <li role='presentation' class='active'>
3 <a data-toggle='tab' data-target='#doc'>
4 <span class='glyphicon glyphicon-book'/> Doc
5 </a>
6 </li>
7 <li role='presentation'>
8 <a data-toggle='tab' data-target='#graph' ng-click="entityCtrl.loadEntityGraph()">
9 <span class='glyphicon glyphicon-object-align-vertical'/> Inheritance
10 </a>
11 </li>
12 <li role='presentation'>
13 <a data-toggle='tab' data-target='#all_props'>
14 <span class='glyphicon glyphicon-tags'/> All properties
15 </a>
16 </li>
17 <li role='presentation'>
18 <a data-toggle='tab' role='tab' data-target='#linearization' aria-controls='linearization' ng-click='entityCtrl.loadEntityLinearization()'>
19 <span class='glyphicon glyphicon-arrow-down'/> Linearization
20 </a>
21 </li>
22 <li role='presentation'>
23 <a data-toggle='tab' role='tab' data-target='#metrics' aria-controls='metrics' ng-click='entityCtrl.loadStructuralMetrics(); entityCtrl.loadPieChart()'>
24 <span class='glyphicon glyphicon-stats'/> Metrics
25 </a>
26 </li>
27 </ul>
28
29 <div class='tab-content'>
30 <div role='tabpanel' class='tab-pane fade in active' id='doc'>
31 <div class='col-xs-3'>
32 <ui-summary target='#summary-content' />
33 </div>
34 <div id='summary-content' class='col-xs-9'>
35 <entity-card mentity='mentity' default-tab='doc' no-synopsis='true' />
36
37 <entity-list list-title='Parents'
38 list-entities='mentity.parents'
39 list-object-filter='{}' />
40
41 <entity-list list-title='Constructors'
42 list-entities='mentity.all_mproperties'
43 list-object-filter='{is_init: true}' />
44
45 <entity-list list-title='Introduced properties'
46 list-entities='mentity.intro_mproperties'
47 list-object-filter='{is_init: "!true"}' />
48
49 <entity-list list-title='Redefined properties'
50 list-entities='mentity.redef_mproperties'
51 list-object-filter='{is_init: "!true"}' />
52 </div>
53 </div>
54 <div role='tabpanel' class='tab-pane fade' id='all_props'>
55 <entity-list list-title='All properties' list-entities='mentity.all_mproperties'
56 list-object-filter='{}' />
57 </div>
58 <div role='tabpanel' class='tab-pane fade' id='linearization'>
59 <entity-linearization
60 list-title='Class definitions'
61 list-entities='linearization'
62 list-focus='mentity.intro' />
63 </div>
64 <div role='tabpanel' class='tab-pane fade' id='graph'>
65 <div class='card'>
66 <div class='card-body text-center'>
67 <entity-graph mentity='mentity' graph='graph' />
68 </div>
69 </div>
70 </div>
71 <div role='tabpanel' class='tab-pane fade' id='metrics'>
72 <div class='card'>
73 <div class='card-heading'>
74 <h3 class='card-title'>Class inheritance</h3>
75 </div>
76 <div class='card-body container-fluid'>
77 <div class='col-sm-6'>
78 <h4>
79 Inheritance kind
80 <small>({{metrics.mclass['cnoa'].values[mentity.full_name].value}}
81 ancestors)</small>
82 </h4>
83 <chart-class-inheritance-kind chart-id='chartInheritanceKind'
84 chart-metrics='metrics.mclass' />
85 </div>
86 <div class='col-sm-6'>
87 <h4>
88 Inheritance metrics
89 </h4>
90 <dl class='dl-horizontal'>
91 <dt>{{metrics.mclass.cnoa.values[mentity.full_name].value}}</dt>
92 <dd>ancestors</dd>
93 <dt>{{metrics.mclass.cnop.values[mentity.full_name].value}}</dt>
94 <dd>direct parents</dd>
95 <dt>{{metrics.mclass.cnoc.values[mentity.full_name].value}}</dt>
96 <dd>direct children</dd>
97 <dt>{{metrics.mclass.cnod.values[mentity.full_name].value}}</dt>
98 <dd>descendants</dd>
99 </dl>
100 <dl class='dl-horizontal'>
101 <dt>{{metrics.mclass.cdit.values[mentity.full_name].value}}</dt>
102 <dd>Depth in Inheritance Tree</dd>
103 </dl>
104 </div>
105 </div>
106 </div>
107 <div class='card'>
108 <div class='card-heading'>
109 <h3 class='card-title'>Class properties</h3>
110 </div>
111 <div class='card-body container-fluid'>
112 <div class='col-sm-6'>
113 <h4>
114 Properties kind
115 <small>({{metrics.mclass['cnbp'].values[mentity.full_name].value}}
116 accessible properties)</small>
117 </h4>
118 <chart-class-properties-kind chart-id='chartPropertiesKind'
119 chart-metrics='metrics.mclass' />
120 </div>
121 <div class='col-sm-6'>
122 <h4>
123 Properties inheritance
124 <small>({{metrics.mclass['cnbp'].values[mentity.full_name].value}}
125 accessible properties)</small>
126 </h4>
127 <chart-class-properties-inh chart-id='chartPropertiesInh'
128 chart-metrics='metrics.mclass' />
129 </div>
130 </div>
131 </div>
132 </div>
133 </div>