Можно ли из макроса получить указатель (hDlg) на текущий открытый диалог?
Например, что-бы послать в него сообщение far.SendDlgMessage
Получить указатель на диалог в макросе
- zg
- zero-gravity
- Posts: 6035
- Joined: Tue 15 Mar, 2005 17:36
- Location: riga
- Been thanked: 185 times
- Contact:
Re: Получить указатель на диалог в макросе
Code: Select all
Macro
{
area="Shell";key="CtrlShiftF1";flags="DisableOutput";description="arclite: backup";
action=function()
local F=far.Flags
Keys("ShiftF1")
local info=far.AdvControl(F.ACTL_GETWINDOWINFO,-1,0)
if info and info.Type==F.WTYPE_DIALOG then
local id=info.Id
local focus=far.SendDlgMessage(id,F.DM_GETFOCUS,0,0)
local text=far.SendDlgMessage(id,F.DM_GETTEXT,focus,0)
text=os.date("%Y_%m_%d_%H_%M_%S_")..text
far.SendDlgMessage(id,F.DM_SETTEXT,focus,text)
far.SendDlgMessage(id,F.DM_EDITUNCHANGEDFLAG,focus,1)
end
end
}