Показать сообщение отдельно
Старый 11.05.2016, 16:03   #1755
seriousstas
Бывалый писикарщик
 
Регистрация: 14.06.2013
Регион: Украина
Машина: Nissan Qashqai+2
Сообщений: 3,424
seriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant futureseriousstas has a brilliant future
По умолчанию

На кнопке простой переключатель (два состояния) :
Код:
man++;
if (man > 1)
    man = 0;
		if (man == 0) {
				if (Man_set_off= utils.ReadINI( set_path + 'settings.ini', 'close_man', 'man_off')==2){
				utils.WriteINI( set_path + 'settings.ini', 'close_man', 'man_off', 1);

				}
				}
if (man == 1) {
	
				if (Man_set_off= utils.ReadINI( set_path + 'settings.ini', 'start_man', 'man_off')==0){
				utils.WriteINI( set_path + 'settings.ini', 'start_man', 'man_off', 1);
								TAB_Timer = window.CreateTimerInterval(TAB_prop);

			}
			}
window.SetProperty("SYS.Man Switch", man);
первое положение покоя - все флаги обнулены :[
Код:
[start_man]
man_off=0
[close_man]
man_off=0
[time_man]
man_off=0
Далее в основном срипте разбил одну функцию на две :
Код:
function togglePlaylistManager_1(){
.......} и
function togglePlaylistManager_2(){
............}
Соответственно закрыть-открыть .
При вызове пишу единицу, а самой функции (JS) её обнуляю, что-б не грузить проц :
utils.WriteINI( set_path + 'settings.ini', 'start_man', 'man_off', 0);
Далее - это для кнопки "закрыть" (ты её рисовал - знешь где ) :
utils.WriteINI( set_path + 'settings.ini', 'close_man', 'man_off', 2); - внутри function togglePlaylistManager_2() - показываю открытую панель,
при закрытии - обнуляю .

в WSHplaylistmanager.js пишу тройку при закрытии (крестиком) :
utils.WriteINI( set_path + 'settings.ini', 'close_man', 'man_off', 3);
В МПС принимаю и обнуляю эту тройку здесь (это чтоб переключатель window.SetProperty("SYS.Man Switch", man); стал в правильное положение) :
if (TAB_set_off = utils.ReadINI( set_path + 'settings.ini', 'close_man', 'man_off')==3){
tab_switch_check()
}

Здесь смотрим за значениями в главном скрипте JS :
Код:
 function on_paint(gr) {
        if (utils.ReadINI( set_path + 'settings.ini', 'close_man', 'man_off')==1){
                             togglePlaylistManager_1();

                    }
    
    if (utils.ReadINI( set_path + 'settings.ini', 'start_man', 'man_off')==1){
                             togglePlaylistManager_2();

                    }
    ........
Это в JS что-б сбросить таймер при одиночном клике :
Код:
p.playlistManager.check("down", x, y);
                                            var set_path = fb.ProfilePath + "\\settings\\";
                                            if(cPlaylistManager.visible) {
				utils.WriteINI( set_path + 'settings.ini', 'time_man', 'man_off', 3);
				}
В МПС принимаю и обнуляю таймер и тройку здесь :
Код:
     function on_timer(id) {
     				if ( utils.ReadINI( set_path + 'settings.ini', 'time_man', 'man_off')==3){
tab_switch_check2()
		}
Возможно что-то забыл))
seriousstas вне форума   Ответить с цитированием