Pos
Номер окна, о котором нужно узнать информацию.
Нумерация идет с 0. Pos = -1 вернет информацию о текущем окне.
Type
Тип окна. Может иметь одно из следующих значений (перечисление
WINDOWINFO_TYPE):
Modified
Признак модификации содержимого файла в окне.
Может быть только у WTYPE_EDITOR.
Current
Является ли окно текущим.
TypeName
Имя типа окна (Panels,View,Edit,Help,VMenu),
зависит от текущего языка.
Name
Имя окна. Для окон типа WTYPE_VIEWER,
WTYPE_EDITOR содержит имя файла.
Для панелей - имя текущего файлового объекта.
Для окна помощи - полный путь к просматриваемому HLF-файлу.
Для диалогов и меню - заголовок.
void GetFarWindowInfo()
{
WindowInfo WInfo;
int CountWindow;
int I;
FILE *Fp;
if((Fp=fopen("window.log","a+t")) == NULL)
return ;
// запросили число окон
CountWindow=(int)Info.AdvControl(Info.ModuleNumber,ACTL_GETWINDOWCOUNT,NULL);
fprintf(Fp,"WindowCount=%i\n",CountWindow);
for ( I=0; I < CountWindow; I++ )
{
// установили нужный номер
WInfo.Pos=I;
// запросили информаци об окне
Info.AdvControl(Info.ModuleNumber,ACTL_GETWINDOWINFO,(void*)&WInfo);
// распечатали ее
fprintf(Fp,"Window[%i], Type=%i (%s), File=[%s] Current=%i, Modified=%i\n",
I,WInfo.Type,WInfo.TypeName,WInfo.Name,
WInfo.Current,WInfo.Modified);
}
fclose(Fp);
// установили окно номер 1 (то есть второе)
Info.AdvControl(Info.ModuleNumber,ACTL_SETCURRENTWINDOW,(void*)1);
}