@@ -40,21 +40,31 @@ import i18n from "@/i18n";
40
40
import { WithLocale } from "@/util/lang" ;
41
41
import { LayerVisibilities } from "@/states/controlState" ;
42
42
import LayerSelectItem from "./LayerSelectItem" ;
43
+ import SelectableMenuItem from "@/components/SelectableMenuItem" ;
43
44
44
45
// noinspection JSUnusedLocalSymbols
45
46
const styles = ( _theme : Theme ) => createStyles ( { } ) ;
46
47
47
48
interface LayerSelectProps extends WithStyles < typeof styles > , WithLocale {
48
49
openDialog : ( dialogId : string ) => void ;
50
+ layerTitles : Record < keyof LayerVisibilities , string > ;
51
+ layerSubtitles : Record < keyof LayerVisibilities , string > ;
49
52
layerVisibilities : LayerVisibilities ;
50
53
setLayerVisibility : (
51
54
layerId : keyof LayerVisibilities ,
52
55
visible : boolean ,
53
56
) => void ;
57
+ variableCompareMode : boolean ;
58
+ setVariableCompareMode : ( selected : boolean ) => void ;
54
59
}
55
60
56
61
const _LayerSelect : React . FC < LayerSelectProps > = ( props ) => {
57
- const { openDialog, ...otherProps } = props ;
62
+ const {
63
+ openDialog,
64
+ variableCompareMode,
65
+ setVariableCompareMode,
66
+ ...layerSelectProps
67
+ } = props ;
58
68
const [ menuAnchor , setMenuAnchor ] = React . useState < Element | null > ( null ) ;
59
69
60
70
const handleUserOverlays = ( ) => {
@@ -82,13 +92,20 @@ const _LayerSelect: React.FC<LayerSelectProps> = (props) => {
82
92
>
83
93
< Paper >
84
94
< MenuList dense >
85
- < LayerSelectItem layerId = "baseMap" { ...otherProps } />
86
- < LayerSelectItem layerId = "datasetRgb" { ...otherProps } />
87
- < LayerSelectItem layerId = "datasetVariable" { ...otherProps } />
88
- < LayerSelectItem layerId = "datasetBoundary" { ...otherProps } />
89
- < LayerSelectItem layerId = "datasetPlaces" { ...otherProps } />
90
- < LayerSelectItem layerId = "userPlaces" { ...otherProps } />
91
- < LayerSelectItem layerId = "overlay" { ...otherProps } />
95
+ < LayerSelectItem layerId = "baseMap" { ...layerSelectProps } />
96
+ < LayerSelectItem layerId = "datasetRgb" { ...layerSelectProps } />
97
+ < LayerSelectItem layerId = "datasetVariable2" { ...layerSelectProps } />
98
+ < LayerSelectItem layerId = "datasetVariable" { ...layerSelectProps } />
99
+ < LayerSelectItem layerId = "datasetBoundary" { ...layerSelectProps } />
100
+ < LayerSelectItem layerId = "datasetPlaces" { ...layerSelectProps } />
101
+ < LayerSelectItem layerId = "userPlaces" { ...layerSelectProps } />
102
+ < LayerSelectItem layerId = "overlay" { ...layerSelectProps } />
103
+ < Divider />
104
+ < SelectableMenuItem
105
+ title = { i18n . get ( "Compare Mode (Swipe)" ) }
106
+ selected = { variableCompareMode }
107
+ onClick = { ( ) => setVariableCompareMode ( ! variableCompareMode ) }
108
+ />
92
109
< Divider />
93
110
< MenuItem onClick = { handleUserBaseMaps } >
94
111
{ i18n . get ( "User Base Maps" ) + "..." }
0 commit comments