@@ -149,7 +149,13 @@ const context = {
149149
150150setup ( context )
151151
152- function setSelected ( el ?: HTMLElement ) {
152+ function setSelected ( region : string ) {
153+ const el = regionEls . get ( region )
154+ if ( ! el ) return
155+ ( el as HTMLInputElement ) . checked = true
156+ showSelected ( el . parentNode as any )
157+ }
158+ function showSelected ( el ?: HTMLElement ) {
153159 for ( const other of document . querySelectorAll ( '.region-selected' ) ) {
154160 other . classList . remove ( 'region-selected' )
155161 }
@@ -171,16 +177,14 @@ for(const el0 of inputEls) {
171177
172178 el . onchange = ( ) => {
173179 if ( ! el . checked ) return
174- setSelected ( parent )
180+ showSelected ( parent )
175181 showRegion ( el . value , reg )
176182 }
177183 regionEls . set ( el . value , el )
178184}
179185
180186// null if show all
181187function fillRegions ( filter : string | null ) {
182- regionEls = new Map ( )
183-
184188 const regs : Array < { key : RegionKey , region : Region } > = [ ]
185189 for ( const regK in regions ) {
186190 if ( filter && ! regK . includes ( filter ) ) continue
@@ -422,7 +426,6 @@ function showRegion(regionName: RegionKey, region: Region, pos?: [number, number
422426 }
423427
424428 context . onClick = ( cx , cy ) => {
425- console . log ( cx , cy )
426429 const closest : [ distance : number , object : ( Marker & { element : HTMLElement } ) | null ] [ ] = Array ( 20 )
427430 for ( let i = 0 ; i < closest . length ; i ++ ) {
428431 closest [ i ] = [ 1 / 0 , null ]
@@ -483,7 +486,7 @@ function showRegion(regionName: RegionKey, region: Region, pos?: [number, number
483486 }
484487 }
485488 showRegion ( regionName , allRegions [ regionName ] , pos ?? undefined )
486- setSelected ( regionEls . get ( regionName ) )
489+ setSelected ( regionName . toUpperCase ( ) )
487490 }
488491 return el
489492 }
0 commit comments