CEC-3514-add-select-all (#295)

This commit is contained in:
das31
2023-03-17 18:46:41 -04:00
committed by GitHub
parent a4e774c8d4
commit a9b040f345

View File

@@ -72,9 +72,19 @@ const MainForm = ({ id }) => {
}; };
const handleSelectedItemsChange = (event) => { const handleSelectedItemsChange = (event) => {
setSelectedCanSignals(event.target.value); const { value } = event.target;
if (value.some(item => item === "Select All")) {
if (selectedCanSignals.length === canSignals.length) {
setSelectedCanSignals([]);
} else {
setSelectedCanSignals(canSignals.map(signal => signal.signal_name));
}
} else {
setSelectedCanSignals(value);
}
}; };
return ( return (
<div className={classes.paper}> <div className={classes.paper}>
<Grid container spacing={3} justifyContent="center"> <Grid container spacing={3} justifyContent="center">
@@ -163,6 +173,10 @@ const MainForm = ({ id }) => {
</div> </div>
)} )}
> >
<MenuItem value="Select All">
<Checkbox checked={selectedCanSignals.length === canSignals.length} />
<ListItemText primary="Select All" />
</MenuItem>
{canSignals.map((signal) => ( {canSignals.map((signal) => (
<MenuItem key={signal.signal_name} value={signal.signal_name}> <MenuItem key={signal.signal_name} value={signal.signal_name}>
<Checkbox checked={selectedCanSignals.indexOf(signal.signal_name) > -1} /> <Checkbox checked={selectedCanSignals.indexOf(signal.signal_name) > -1} />