макрос для импорта переменных

Здесь обсуждается всё, что касается макросов.
Post Reply
User avatar
hoopoe
Posts: 263
Joined: Mon 28 Mar, 2005 07:44
Location: Нежный Новгород
Has thanked: 1 time
Contact:

макрос для импорта переменных

Post by hoopoe »

приветствую
изобретаю lua макрос для импорта переменных, типа FarCall, но только на lua (чтобы на всех платформах шло)...

возникла проблема: после того, как какой-нить батник нагадит в консоль Far не восстанавливает картинку... код примерно такой:

Code: Select all

    local screen = far.SaveScreen();

-- тут гадим в консоль со страшной силой

    far.RestoreScreen(screen);
    far.AdvControl(far.Flags.ACTL_REDRAWALL, 0, 0);
    panel.RedrawPanel(nil, 0);
    panel.RedrawPanel(nil, 1);
пробовал разные варианты перерисовки/восстановления - никакой реакции. эксперименты ставил на билде 4545 x86, при запуске добавляется ключ /w и размер буфера ооочень большой (2000 строк)

есть идеи?
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

погасить/зажечь или перерисовать панели

Post by Shmuel »

hoopoe, посмотрите пример в luafar_manual.chm в статье panel.SetUserScreen. Также поищите panel.SetUserScreen на форуме.
User avatar
hoopoe
Posts: 263
Joined: Mon 28 Mar, 2005 07:44
Location: Нежный Новгород
Has thanked: 1 time
Contact:

погасить/зажечь или перерисовать панели

Post by hoopoe »

ай спасибо!!!
заработало!!!

вот что получилось...
farcall.lua
(901 Bytes) Downloaded 167 times
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

погасить/зажечь или перерисовать панели

Post by Shmuel »

Пара замечаний:
1. if(not name ~= "") then замените на if name then
2. Вместо os.remove (не юникодная ф-ция) рекомендуется пользовать win.DeleteFile.
User avatar
hoopoe
Posts: 263
Joined: Mon 28 Mar, 2005 07:44
Location: Нежный Новгород
Has thanked: 1 time
Contact:

погасить/зажечь или перерисовать панели

Post by hoopoe »

так?
Attachments
farcall.lua
(901 Bytes) Downloaded 127 times
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

погасить/зажечь или перерисовать панели

Post by Shmuel »

Так, только в if (name) скобки не обязательны. Но это дело вкуса.
User avatar
hoopoe
Posts: 263
Joined: Mon 28 Mar, 2005 07:44
Location: Нежный Новгород
Has thanked: 1 time
Contact:

погасить/зажечь или перерисовать панели

Post by hoopoe »

да, знаю... только поздно уже мне привычки менять :)
давай на ты? ;)
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

погасить/зажечь или перерисовать панели

Post by Shmuel »

hoopoe wrote: давай на ты?
Меня можно на ты, никогда не обижаюсь. А в форуме с определённого момента обращаюсь ко всем на вы.
Post Reply

Return to “Обсуждение макросов”