Флаг DIF_HISTORY позволяет вести историю редактирования для полей ввода. Если этот флаг установлен, то поле History должно содержать адрес текстовой строки, которая будет использоваться как внутреннее название истории редактирования. Если для нескольких полей ввода оно одинаково, они используют одну и ту же историю редактирования. Для следующего примера (файл ARCPROC.CPP из MultiArc):
const char *PathHistoryName="ExtrDestPath";
struct InitDialogItem InitItems[]={
...
DI_EDIT,5,3,70,3,1,(DWORD)PathHistoryName,DIF_HISTORY,0,DestPath,
...
};
история будет храниться в реестре (ключ HKCU\Software\Far\SavedDialogHistory\ExtrDestPath)
по одной строке (имена параметров выглядят как "Line<номер>", тип REG_SZ) для
каждого введенного пользователем значения.Флаг DIF_HISTORY имеет смысл для следующих элементов диалога:
| Элемент | Описание |
|---|---|
| DI_EDIT | строка ввода |
| DI_FIXEDIT | поле ввода фиксированного размера |
| имя | назначение |
|---|---|
| "SearchText" | строки поиска |
| "ReplaceText" | строки замены |
| "PersPath" | пути к персональным плагинам |
| "Copy" | строки назначения в диалоге копирования |
| "LineNumber" | переходы в редакторе (Alt-F8) |
| "ViewerOffset" | переходы в программе просмотра (Alt-F8) |
| "NewEdit" | редактируемые файлы (Shift-F4/Shift-F2) |
| "Masks" | маски файлов (пометка, ассоциации, фильтры, поиск файлов) |
| "UserVarN" | переменные в подстановках |
| "ApplyCmd" | "выполнить команду" (Ctrl-G) |
| "DizText" | строки ввода описаний файлов |
| "NewFolder" | создание каталогов |