Skip to content

Commit 0e1447f

Browse files
committed
show all files returned from dcm2niix
1 parent 1baa8a1 commit 0e1447f

File tree

2 files changed

+20
-12
lines changed

2 files changed

+20
-12
lines changed

index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
<li>
3232
<!-- optional: save nii file in the niivue canvas from conversion -->
3333
<label for="saveButton" id="saveButtonLabel">Optional: save the nifti file you are viewing</label>
34-
<button id="saveButton" class="hidden">Save nifti</button>
34+
<button id="saveButton" class="hidden">Save selected file</button>
3535
</li>
3636
</ol>
3737

main.js

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,15 @@ const nv = new Niivue({
99
// reference to the results list from dcm2niix for use later
1010
let resultFileList = []
1111
let conversionTime = 0
12+
let downloadFile = null
1213

1314

1415
const handleSaveButtonClick = () => {
15-
const name = nv.volumes[0].name
16-
nv.volumes[0].saveToDisk(name)
16+
let url = URL.createObjectURL(downloadFile);
17+
const downloadLink = document.createElement('a');
18+
downloadLink.href = url;
19+
downloadLink.download = downloadFile.name;
20+
downloadLink.click()
1721
}
1822

1923
const showSaveButton = () => {
@@ -66,14 +70,18 @@ const handleFileSelectChange = async (event) => {
6670
if (selectedIndex === -1) {
6771
return
6872
}
69-
removeAllVolumes()
7073
const selectedFile = resultFileList[selectedIndex]
71-
console.log(selectedFile);
72-
const image = await NVImage.loadFromFile({
73-
file: selectedFile,
74-
name: selectedFile.name
75-
})
76-
await nv.addVolume(image)
74+
downloadFile = selectedFile
75+
// only load the file in niivue if it is nifti
76+
if (selectedFile.name.endsWith('.nii')) {
77+
removeAllVolumes()
78+
console.log(selectedFile);
79+
const image = await NVImage.loadFromFile({
80+
file: selectedFile,
81+
name: selectedFile.name
82+
})
83+
await nv.addVolume(image)
84+
}
7785
showSaveButton()
7886
}
7987

@@ -116,7 +124,7 @@ const runDcm2niix = async (files) => {
116124
showText(`Conversion time: ${conversionTime} seconds`)
117125
// filter out files that are not nifti (.nii) so we don't show them
118126
// in the select dropdown
119-
resultFileList = resultFileList.filter(file => file.name.endsWith('.nii'))
127+
// resultFileList = resultFileList.filter(file => file.name.endsWith('.nii'))
120128
updateSelectItems(resultFileList)
121129
console.log(resultFileList);
122130
hideLoadingCircle()
@@ -227,7 +235,7 @@ async function main() {
227235

228236
// handle drag and drop
229237
dropTarget.ondrop = handleDrop;
230-
dropTarget.ondragover = (e) => {e.preventDefault();}
238+
dropTarget.ondragover = (e) => { e.preventDefault(); }
231239

232240
// when user clicks save
233241
saveButton.onclick = handleSaveButtonClick

0 commit comments

Comments
 (0)