Skip to content

Commit bedc8b9

Browse files
author
naraesk
authored
Merge pull request #139 from softvis-research/development
v1.3.1
2 parents e78e175 + 1f28394 commit bedc8b9

3 files changed

Lines changed: 69 additions & 100 deletions

File tree

ui/scripts/HelpController/HelpController.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,12 @@ var helpController = (function() {
9292
createPopupContent()
9393
});
9494
};
95+
96+
if(controllerConfig.metaphor=="RD C") {
97+
$.getScript("scripts/HelpController/HelpRDC.js", function(){
98+
createPopupContent()
99+
});
100+
};
95101
}
96102

97103
function createPopupContent(){
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
var metaphor =(function(){
2+
3+
function legend(){
4+
var legend_RD = `
5+
<div class='legend_Div jqxTabs_Div helpController'>
6+
<p>The Recursive Disk (RD) metaphor is designed to visualize the structure of imperative programming languages, with an emphasis on object-oriented languages. As the name indicates, an RD visualization consists of nested disks, where each disk represents a package or a class. All disks are ordered by size and then placed spiral-shaped clockwise around the largest disk. Although at first glance it seems chaotic, the emerging visual patterns and empty spaces give each disk a unique appearance and help the user to recognize specific disks.</p>
7+
<img src='scripts/HelpController/images/RD.PNG'>
8+
<div class='legend_Describe helpController'>
9+
<h2>Gray Disk</h2>
10+
<img src='scripts/HelpController/images/RD_package.png'>
11+
<p>Gray disks represent <span class='legend_Represent helpController'>translation units</span>. The nested disks represent its components, i.e., types. The size of a disk depends on the size of the nested disks.</p>
12+
</div>
13+
<div class='legend_Describe helpController'>
14+
<h2>Purple Disk</h2>
15+
<img src='scripts/HelpController/images/RD_type.png'>
16+
<p>Purple disks represent <span class='legend_Represent helpController'>types</span>. The size of a disk depends on the size of the nested disks and segments.</p>
17+
</div>
18+
<div class='legend_Describe helpController'>
19+
<h2>Blue Segment</h2>
20+
<img src='scripts/HelpController/images/RD_method.png'>
21+
<p>Blue segments represent <span class='legend_Represent helpController'>functions</span>. The area of a blue segment is based on the functions lines of code.</p>
22+
</div>
23+
<div class='legend_Describe helpController'>
24+
<h2>Yellow Segment</h2>
25+
<img src='scripts/HelpController/images/RD_field.png'>
26+
<p>Yellow segements represent <span class='legend_Represent helpController'>variables</span>. The area of a yellow segment is fixed and does not represent a metric.</p>
27+
</div>
28+
</div>`;
29+
return legend_RD;
30+
};
31+
32+
function relationships(){
33+
var relationships_RD= `
34+
<div class='relationships_Div jqxTabs_Div helpController'>
35+
<h2>Variable accesses</h2>
36+
<p>Click on a variable to show connections to accessing functions.</p>
37+
<p>Click on a function to show connections to accessed variables.</p>
38+
<img src='scripts/HelpController/images/RD_void.png'>
39+
<h2>Function calls</h2>
40+
<p>Click on a function to show in- and outgoing function calls.</p>
41+
<img src='scripts/HelpController/images/RD_voidrun.png'>
42+
</div>`;
43+
44+
return relationships_RD;
45+
};
46+
47+
return {
48+
relationships: relationships,
49+
legend: legend
50+
};
51+
})();

ui/setups/web/c.js

Lines changed: 12 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -83,13 +83,16 @@
8383
name: "relationHighlightController"
8484
},
8585
{
86-
name: "systeminfoController",
87-
system: "BusyBox",
88-
version: "1.18.5",
89-
not: true,
86+
name: 'infoController',
87+
system: "Busybox",
9088
noc: false,
89+
not: true,
9190
loc: 192000
9291
},
92+
{
93+
name: 'helpController',
94+
metaphor: "RD C"
95+
},
9396
{
9497
name: "menuController",
9598
menuMapping: [
@@ -182,41 +185,6 @@
182185
},
183186
]
184187
},
185-
{
186-
name: "legendController",
187-
entries: [{
188-
name: "Translation unit",
189-
icon: "grayCircle"
190-
}, {
191-
name: "Struct/Union/Enum",
192-
icon: "purpleCircle",
193-
}, {
194-
name: "Function",
195-
icon: "lightBlueCircle",
196-
}, {
197-
name: "Variable/Enum constant",
198-
icon: "yellowCircle",
199-
}, {
200-
name: "Selection",
201-
icon: "orangeCircle",
202-
},
203-
{
204-
name: "Navigation",
205-
icon: "navigation",
206-
entries: [
207-
{
208-
name: "Rotate",
209-
icon: "leftMouseButton"
210-
}, {
211-
name: "Move",
212-
icon: "midMouseButton"
213-
}, {
214-
name: "Zoom",
215-
icon: "scrolling"
216-
}]
217-
}
218-
],
219-
}
220188
],
221189

222190

@@ -233,36 +201,16 @@
233201
resizable: false,
234202
collapsible: false,
235203
first: {
236-
size: "25px",
204+
size: "75px",
237205
resizable: false,
238206
collapsible: false,
239207
controllers: [
240208
{name: "menuController"},
241-
// {name: "searchController"},
209+
{name: "searchController"},
242210
{name: "emailController"},
243211
],
244212
},
245213
second: {
246-
size: "100%",
247-
resizable: false,
248-
collapsible: false,
249-
area: {
250-
orientation: "horizontal",
251-
name: "searchPanel",
252-
size: "35px",
253-
collapsible: false,
254-
resizable: false,
255-
first: {
256-
size: "35px",
257-
collapsible: false,
258-
resizable: false,
259-
controllers: [
260-
// {name: "menuController"},
261-
{name: "searchController"}
262-
// {name: "emailController"},
263-
],
264-
},
265-
second: {
266214
size: "80%",
267215
resizable: false,
268216
collapsible: false,
@@ -304,7 +252,7 @@
304252
size: "50%",
305253
collapsible: false,
306254
first: {
307-
size: "55%",
255+
size: "100%",
308256
expanders: [
309257
{
310258
name: "packageExplorer",
@@ -316,27 +264,6 @@
316264
]
317265
},
318266
second: {
319-
size: "45%",
320-
area: {
321-
orientation: "horizontal",
322-
name: "legendPanel2",
323-
size: "100%",
324-
collapsible: false,
325-
first: {
326-
size: "100%",
327-
expanders: [
328-
{
329-
name: "legend",
330-
title: "Legend",
331-
332-
controllers: [
333-
{name: "legendController"}
334-
],
335-
},
336-
]
337-
},
338-
second: {}
339-
},
340267
},
341268
}
342269
},
@@ -362,6 +289,7 @@
362289
{name: "canvasHoverController"},
363290
{name: "canvasFilterController"},
364291
{name: "canvasFlyToController"},
292+
{name: "infoController"}, {name: "helpController"},
365293
{name: "relationConnectorController"},
366294
// {name: "relationTransparencyController"},
367295
{name: "relationHighlightController"}, {name: "generationFormController"}
@@ -377,7 +305,7 @@
377305
name: "rightPael",
378306
size: "80%",
379307
first: {
380-
size: "85%",
308+
size: "100%",
381309
min: "200",
382310
collapsible: false,
383311
// resizable: false,
@@ -393,28 +321,12 @@
393321
],
394322
},
395323
second: {
396-
size: "15%",
397-
// collapsible: false,
398-
// resizable: false,
399-
// min: "200",
400-
oriontation: "horizontal",
401-
expanders: [
402-
{
403-
name: "systeminfo",
404-
title: "Info",
405-
controllers: [
406-
{name: "systeminfoController"}
407-
],
408-
},
409-
],
410324
}
411325
}
412326
}
413327
}
414328
}
415329
}
416-
}
417-
}
418330
}
419331
}
420332
}

0 commit comments

Comments
 (0)