Skip to content

Commit bfe0b36

Browse files
committed
Added refresh button to regenerate the graph if the layout is random or cose.
1 parent 7d7395f commit bfe0b36

File tree

4 files changed

+25
-6
lines changed

4 files changed

+25
-6
lines changed

images/icons8-refresh-18.png

219 Bytes
Loading

stylesheets/dgmlViewer.css

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,6 @@
2727
z-index: 300;
2828
}
2929

30-
input[type=button] {
31-
margin-right: 10px;
32-
}
33-
3430
#selectionLayer {
3531
display: none;
3632
background-color: rgba(240, 240, 240, 0.4);
@@ -43,4 +39,15 @@ input[type=button] {
4339
display: none;
4440
color: black;
4541
padding: 2px;
46-
}
42+
}
43+
44+
#refresh {
45+
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAOBAMAAADQ9FGEAAAAJ1BMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdEvm1AAAADXRSTlMAzgT+tKMb9tPFfPQdvCI9yQAAAFZJREFUCNdjYFBiChQUlFzEwMDmkgRkSexiYEgx9mFgYGDqZGBwNjZRADIFGRgCy0XBLAgmmsUE1AdlAc1iYJihwAA1f3WjoKComksCA4PWRCBLQYkBAMD4DcyUSChYAAAAAElFTkSuQmCC);
46+
background-repeat: no-repeat;
47+
background-position: left center;
48+
width: 18px;
49+
height: 14px;
50+
margin: 0px 5px 0px 5px;
51+
padding: 0px;
52+
display: none;
53+
}

templates/dgmlViewer_Template.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
<input type="button" id="saveSelectionAsPngButton" value="Save selection as png">
1818
<div id="hierarchical">Change layout:<input type="checkbox" id="showLayoutOptions"></div>
1919
<div id="layoutDiv">
20+
<div id="refresh"></div>
2021
Layout: <select id="layout">
2122
<option value="breadthfirst">Breadth first</option>
2223
<option value="cose">Cose</option>

templates/dgmlViewer_Template.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
const saveSelectionAsPngButton = document.getElementById('saveSelectionAsPngButton');
2020
const selectionLayer = document.getElementById('selectionLayer');
2121
const helpTextDiv = document.getElementById('helpText');
22+
const refreshDiv = document.getElementById('refresh');
2223
const vscode = acquireVsCodeApi();
2324
let doShowPopup = false;
2425
let lastMouseX = lastMouseY = 0;
@@ -34,6 +35,7 @@
3435
saveSelectionAsPngButton.addEventListener('click', saveSelectionAsPng);
3536
showLayoutOptionsCheckbox.addEventListener('click', showHierarchicalOptions);
3637
layoutSelect.addEventListener('change', setNetworkLayout);
38+
refreshDiv.addEventListener('click', setNetworkLayout);
3739

3840
function mouseUpEventListener(event) {
3941
// Convert the canvas to image data that can be saved
@@ -326,13 +328,22 @@
326328
componentSpacing: 5,
327329
numIter: 5000,
328330
};
331+
refreshDiv.style.display = 'inline-block';
332+
refreshDiv.style.cursor = 'pointer';
329333
} else if (layoutSelect.value === 'circle' || layoutSelect.value === 'grid') {
330334
options = {
331335
name: layoutSelect.value,
332336
spacingFactor: 0.5,
333337
padding: 1
334338
};
335-
}
339+
} else if (layoutSelect.value === 'random') {
340+
refreshDiv.style.display = 'inline-block';
341+
refreshDiv.style.cursor = 'pointer';
342+
}
343+
if (layoutSelect.value !== 'cose' && layoutSelect.value !== 'random') {
344+
refreshDiv.style.display = 'none';
345+
refreshDiv.style.cursor = 'default';
346+
}
336347
if (layoutSelect.value === 'preset') {
337348
restoreCoordinates(cy);
338349
}

0 commit comments

Comments
 (0)