Skip to content

Commit 08082ad

Browse files
committed
WIP
1 parent f06384b commit 08082ad

File tree

1 file changed

+42
-22
lines changed

1 file changed

+42
-22
lines changed

ui/arduino2/store.js

Lines changed: 42 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ async function store(state, emitter) {
7777
state.selectedFiles = []
7878
state.selectedBoardFiles = []
7979
state.selectedDiskFiles = []
80+
state.lastSelectedFile = null
8081
state.editingFile = null
8182
state.creatingFile = null
8283
state.creatingFolder = null
@@ -578,18 +579,22 @@ async function store(state, emitter) {
578579
return !(f.fileName === file.fileName && f.source === source)
579580
})
580581
} else {
581-
582+
const newSelectedFiles = selectRange(state.lastSelectedFile, index, source).forEach((f) => {
583+
})
584+
state.lastSelectedFile = index
582585
state.selectedFiles.push({
583586
fileName: file.fileName,
584587
type: file.type,
585588
source: source,
586589
parentFolder: file.parentFolder
587590
})
588591
}
592+
589593
state.selectedDiskFiles = state.selectedFiles.filter((f) => f.source === 'disk')
590594
state.selectedBoardFiles = state.selectedFiles.filter((f) => f.source === 'board')
591595
emitter.emit('render')
592596
})
597+
593598
emitter.on('open-single-file', async(file, source) => {
594599
state.selectedFiles = []
595600
state.selectedFiles.push({
@@ -600,6 +605,7 @@ async function store(state, emitter) {
600605
})
601606
emitter.emit('open-selected-files')
602607
})
608+
603609
emitter.on('open-selected-files', async () => {
604610
let files = []
605611
for (let i in state.selectedFiles) {
@@ -1044,45 +1050,59 @@ function deselectFilesFromSource(source, selectedFiles) {
10441050
return selectedFiles.filter((f) => f.source !== source)
10451051
}
10461052

1047-
function toggleFileSelection({ fileName, source, selectedFiles }) {
1048-
let result = []
1049-
let file = selectedFiles.find((f) => {
1050-
return f.fileName === fileName && f.source === source
1051-
})
1052-
if (file) {
1053-
// filter file out
1054-
result = selectedFiles.filter((f) => {
1055-
return f.fileName !== fileName && f.source !== source
1056-
})
1057-
} else {
1058-
// push file
1059-
selectedFiles.push({ fileName, source })
1060-
}
1061-
return result
1062-
}
1053+
1054+
/* NOT USED >> CLEAN UP LATER */
1055+
// function toggleFileSelection({ fileName, source, selectedFiles }) {
1056+
// let result = []
1057+
// let file = selectedFiles.find((f) => {
1058+
// return f.fileName === fileName && f.source === source
1059+
// })
1060+
// if (file) {
1061+
// // filter file out
1062+
// result = selectedFiles.filter((f) => {
1063+
// return f.fileName !== fileName && f.source !== source
1064+
// })
1065+
// } else {
1066+
// // push file
1067+
// selectedFiles.push({ fileName, source })
1068+
// }
1069+
// return result
1070+
// }
10631071

10641072

10651073
function range(start, stop, step){
10661074
return Array.from({ length: (stop - start) / step + 1 }, (_, i) => start + i * step);
10671075
}
10681076

1069-
function selectRange(start, stop, source){
1070-
const rangeStart = Math.min(start, stop)
1071-
const rangeEnd = Math.max(start, stop)
1077+
function clearSelection(state, source){
1078+
if(source === 'disk'){
1079+
deselectFilesFromSource('disk', state.selectedDiskFiles)
1080+
state.selectedDiskFiles = []
1081+
}
1082+
if(source === 'board'){
1083+
deselectFilesFromSource('board', state.selectedBoardFiles)
1084+
state.selectedBoardFiles = []
1085+
}
1086+
}
1087+
1088+
function selectRange(itemA, itemB, source){
1089+
const rangeStart = Math.min(itemA, itemB)
1090+
const rangeEnd = Math.max(itemA, itemB)
10721091
if(source === 'disk'){
10731092
return range(rangeStart, rangeEnd, 1).map((i) => {
10741093
return {
10751094
fileName: i,
10761095
source: source
10771096
}
10781097
})
1079-
}else{
1098+
}
1099+
else(source === 'board'){
10801100
return range(rangeStart, rangeEnd, 1).map((i) => {
10811101
return {
10821102
fileName: i,
10831103
source: source
10841104
}
10851105
})
10861106
}
1087-
}
10881107

1108+
}

0 commit comments

Comments
 (0)