seriousstas
Я тут немного переделал опрос по закрытию панели ДСП через МПС после выбора пресета, снизил нагрузку на проц при обращении к диску в on_paint... теперь работает по интервальному таймеру
вот...
старт таймера и переменные размести где удобно(начало скрипта например...)
Код:
var dsp_switch_check_timer = false;
var dsp_switch_check_timer_on = window.GetProperty("SYS.DSP Switch Check Interval ON",true);
var dsp_switch_check_timer_count = window.GetProperty("SYS.DSP Switch Check Interval(ms)",5000);
dsp_switch_check_timer_on ? dsp_switch_check_timer = window.CreateTimerInterval(dsp_switch_check_timer_count) : dsp_switch_check_timer = false;
в on_timer(id) это в конце по аналогии с предыдущим кодом пропиши...
Код:
// ============= dsp switch interval
if(dsp_switch_check_timer && id == dsp_switch_check_timer.ID){
dsp_switch_check();
//dsp_switch_check_timer.Dispose();
fb.trace("...DSP SWITCH CHECK...");
};
функцию можешь в конец срипта пихнуть...
Код:
function dsp_switch_check(){
//================ DSP switch
if (dsp_off = utils.ReadINI(set_path + 'settings.ini', 'dsp', 'dsp_off') == 1) {
panel = 4;
dir_move = panel > old_panel ? "left" : "right";
if (old_panel != panel) {
move_panel();
old_panel = panel
}
utils.WriteINI(set_path + 'settings.ini', 'dsp', 'dsp_off', 0);
fb.trace("...DSP SWITCH WriteINI...");
};
};
после проделанных манипуляций удали код проверки из on_paint();
его начало в on_paint();
if (dsp_off = utils.ReadINI(set_path + 'settings.ini', 'dsp', 'dsp_off')....
fb.trace(); можно удалить на работу функций не влияет
проигрывание мп3-ки с ресемплером в дсп и в состоянии покоя...

...