audio_midi/js/ui.js : Fixed ui_set_number_display() precision error and added use of precisionRound()

This commit is contained in:
kevin 2025-04-19 13:50:34 -04:00
parent 6e8bc206a2
commit 415f0ca955

View File

@ -572,6 +572,13 @@ function ui_create_number( parent_ele, d )
return ele; return ele;
} }
function precisionRound(number, precision)
{
var factor = Math.pow(10, precision);
return Math.round(number * factor) / factor;
}
function ui_set_number_display( ele_id, value ) function ui_set_number_display( ele_id, value )
{ {
var ele = dom_id_to_ele(ele_id); var ele = dom_id_to_ele(ele_id);
@ -580,10 +587,19 @@ function ui_set_number_display( ele_id, value )
{ {
var val = value.toString(); var val = value.toString();
if( ele.decpl == 0 ) var defined_fl = (typeof ele.decpl !== 'undefined');
ele.innerHTML = parseInt(val,10);
if( defined_fl )
{
if( ele.decpl == 0 )
ele.innerHTML = parseInt(val,10);
else
ele.innerHTML = precisionRound(parseFloat(val),ele.decpl)
}
else else
ele.innerHTML = parseFloat(val); {
ele.innerHTML = parseFloat(val)
}
} }
} }
@ -617,7 +633,7 @@ function ui_create_text_display( parent_ele, d )
function ui_set_progress( ele, value ) function ui_set_progress( ele, value )
{ {
var ele = dom_id_to_ele(ele_id); //var ele = dom_id_to_ele(ele_id);
ele.value = Math.round( ele.max * (value - ele.minValue) / (ele.maxValue - ele.minValue)); ele.value = Math.round( ele.max * (value - ele.minValue) / (ele.maxValue - ele.minValue));
} }