Hi, All!
Столкнулся с проблемой - не могу определить какие диалоговые окна открыты на данный момент в Far 2.0.
Через AdvControl(..., ACTL_GETSHORTWINDOWINFO, ...) я могу определить текущее активное окно (редактор, панели и т.д), но, к примеру, как определить, что при открытой файловой панели активно юзер-меню или меню выбора дисков?
Конкретный пример: Я отловил изменения в своей файловой системе, хочу заставить Far принудительно обновить панель, но при обновлении затирается открытое меню выбора диска (Alt-F1/F2). Отказаться от принудительного обновления не могу - нужно видеть изменения в реал-тайме.
Список активных диалоговых окон
Список активных диалоговых окон
Code: Select all
for i = 1, far.AdvControl(far.Flags.ACTL_GETWINDOWCOUNT) do
w1 = far.AdvControl(far.Flags.ACTL_GETWINDOWINFO, i)
if band(w1.Flags, far.Flags.WIF_CURRENT) == far.Flags.WIF_CURRENT
then far.Show("active window:", w1.Name, w1.TypeName) end
end
Last edited by Xerox on Fri 03 Jan, 2020 13:17, edited 1 time in total.