@@ -294,6 +294,18 @@ $(function() {
294294 . on ( "mousedown" , function ( ) { $ ( row . node ( ) ) . settings_row ( "toggle_draggable" , false ) } )
295295 . on ( "mouseup" , function ( ) { $ ( row . node ( ) ) . settings_row ( "toggle_draggable" , true ) } )
296296 . on ( "mouseleave" , function ( ) { $ ( row . node ( ) ) . settings_row ( "toggle_draggable" , true ) } ) ;
297+
298+ //creates a new slider for the scale input
299+ scale_col . append ( "input" )
300+ . style ( "margin-left" , "10px" )
301+ . attr ( "type" , "range" )
302+ . classed ( "scale-slider" , true )
303+ . attr ( "value" , 50 )
304+ . attr ( "min" , 1 )
305+ . attr ( "max" , 100 )
306+ . on ( "input" , function ( ) { $ ( row . node ( ) ) . settings_row ( "change_scale" , 10 ** ( ( this . value - 50 ) / 50 ) ) } )
307+ . on ( "mouseup" , function ( ) { $ ( row . node ( ) ) . settings_row ( "toggle_draggable" , true ) } )
308+ . on ( "mousedown" , function ( ) { $ ( row . node ( ) ) . settings_row ( "toggle_draggable" , false ) } )
297309
298310 // Add opacity input
299311 opacity_col . append ( "label" )
@@ -604,11 +616,13 @@ $(function() {
604616
605617 change_scale : function ( new_scale , plot = true ) {
606618 if ( isNaN ( new_scale ) ) {
607- d3 . select ( this . element . context ) . select ( "td.scale-col input" ) . node ( ) . value = this . scale
619+ d3 . select ( this . element . context ) . select ( "td.scale-col input" ) . node ( ) . value = this . scale ;
620+ d3 . select ( this . element . context ) . select ( "td.scale-col input.scale-slider" ) . node ( ) . value = Math . log10 ( this . scale ) * 50 + 50
608621 } else {
609622 new_scale = new_scale !== "" ? parseFloat ( new_scale ) : 1 ;
610623 this . scale = new_scale ;
611- d3 . select ( this . element . context ) . select ( "td.scale-col input" ) . node ( ) . value = new_scale ;
624+ d3 . select ( this . element . context ) . select ( "td.scale-col input.setting-text" ) . node ( ) . value = Math . round ( new_scale * 100 ) / 100 ;
625+ d3 . select ( this . element . context ) . select ( "td.scale-col input.scale-slider" ) . node ( ) . value = Math . log10 ( new_scale ) * 50 + 50 ;
612626 if ( plot ) {
613627 this . plot_composite ( )
614628 }
@@ -817,4 +831,4 @@ $(function() {
817831 } ) ;
818832
819833 $ ( "#settings-table" ) . settings_table ( )
820- } )
834+ } )
0 commit comments