@@ -2372,20 +2372,31 @@ export class FilterPointDistanceFromRow extends ToolboxItem {
23722372 * @returns An object mapping class identifiers to their distance values, or null if no sliders are found
23732373 */
23742374 public get_current_values ( ) : DistanceFromPolylineClasses | null {
2375- const container_id = this . multi_class_mode ? "filter-multi-class-mode" : "filter-single-class-mode" ;
2376- const container = document . getElementById ( container_id ) ;
2377- if ( container === null ) return null ;
2378-
2379- const sliders = container . querySelectorAll < HTMLInputElement > ( ".filter-row-distance-slider" ) ;
2380- if ( sliders . length === 0 ) return null ;
2381-
2382- const filter_values : DistanceFromPolylineClasses = { closest_row : undefined } ;
2383- for ( let idx = 0 ; idx < sliders . length ; idx ++ ) {
2384- const slider_class_name = / [ ^ - ] * $ / . exec ( sliders [ idx ] . id ) [ 0 ] ;
2385- filter_values [ slider_class_name ] = {
2386- distance : sliders [ idx ] . valueAsNumber ,
2387- } ;
2375+ // Always read the single-class slider for closest_row
2376+ const single_container = document . getElementById ( "filter-single-class-mode" ) ;
2377+ if ( single_container === null ) return null ;
2378+
2379+ const single_slider = single_container . querySelector < HTMLInputElement > ( ".filter-row-distance-slider" ) ;
2380+ if ( single_slider === null ) return null ;
2381+
2382+ const filter_values : DistanceFromPolylineClasses = {
2383+ closest_row : { distance : single_slider . valueAsNumber } ,
2384+ } ;
2385+
2386+ // In multi-class mode, also read the per-class sliders
2387+ if ( this . multi_class_mode ) {
2388+ const multi_container = document . getElementById ( "filter-multi-class-mode" ) ;
2389+ if ( multi_container !== null ) {
2390+ const sliders = multi_container . querySelectorAll < HTMLInputElement > ( ".filter-row-distance-slider" ) ;
2391+ for ( let idx = 0 ; idx < sliders . length ; idx ++ ) {
2392+ const slider_class_name = / [ ^ - ] * $ / . exec ( sliders [ idx ] . id ) [ 0 ] ;
2393+ filter_values [ slider_class_name ] = {
2394+ distance : sliders [ idx ] . valueAsNumber ,
2395+ } ;
2396+ }
2397+ }
23882398 }
2399+
23892400 return filter_values ;
23902401 }
23912402
0 commit comments