Вопросики про History для DI_EDIT

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
Post Reply
ladserg
Posts: 234
Joined: Thu 19 Feb, 2009 14:51
Has thanked: 5 times
Been thanked: 6 times

Вопросики про History для DI_EDIT

Post by ladserg »

Реализовав ведение истории редактирования текстовых полей через DI_COMBOBOX, обнаружил что, то на что у меня ушло две портянки уже реализовано в виде DI_EDIT с флагом DIF_HISTORY. :whistle:

Посему хочу чуток уточнить, при определении, например так:

Code: Select all

{F.DI_EDIT, x ,y, width,0, 0, descriptor, 0, F.DIF_HISTORY, text}
достаточно ли в переменной descriptor указать строку с уникальным идентификатором, что бы для у этого поля была своя уникальная история?

Какой формат таблицы истории элемента редактирования? Если я получу информацию об элементе:

Code: Select all

local item=hDlg:send(F.DM_GETDLGITEM, ItemNumber)
то как мне просмотреть содержимое таблицы?

П.С. Кста как то странно, Far.Dialog при закрытии обновляет всё, кроме таблицы значений (ListItems) у DI_COMBOBOX, причем значения поля ввода у DI_COMBOBOX обновляется.
Last edited by ladserg on Sat 20 Sep, 2014 00:50, edited 2 times in total.
User avatar
John Doe
Бюрократ
Posts: 13867
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: Вопросики про History для DI_EDIT

Post by John Doe »

достаточно ли в переменной descriptor указать строку с уникальным идентификатором, что бы для у этого поля была своя уникальная история?
Достаточно.
Какой формат таблицы истории элемента редактирования? Если я получу информацию об элементе:
Для начала надо решить а для чего вам эта таблица?
История для пользователя, а плагину обычно достаточно получить итоговый результат в поле ввода.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: Вопросики про History для DI_EDIT

Post by Shmuel »

ladserg wrote:П.С. Кста как то странно, Far.Dialog при закрытии обновляет всё, кроме таблицы значений (ListItems) у DI_COMBOBOX, причем значения поля ввода у DI_COMBOBOX обновляется.
far.Dialog реализован как довольно простой Lua-код, вставленный в файл service.c. Возможно, что-то там недоработано.

Если нужно иметь возможность "полного доступа", используйте far.DialogInit - far.DialogRun - far.DialogFree.
ladserg
Posts: 234
Joined: Thu 19 Feb, 2009 14:51
Has thanked: 5 times
Been thanked: 6 times

Re: Вопросики про History для DI_EDIT

Post by ladserg »

Shmuel wrote:Если нужно иметь возможность "полного доступа", используйте far.DialogInit - far.DialogRun - far.DialogFree.
Я пока в процедуре обработке событий обновляю значения при закрытии диалога.

Кстати, я когда добавляю или вставляю элемент в COMBOBOX (при помощи сообщений DM_LISTINSERT, DM_LISTADD, DM_LISTADDSTR), значение текстового поля COMBOBOX'а заменяется на вставленной/добавленное. Можно это как то обойти?
John Doe wrote:Для начала надо решить а для чего вам эта таблица?
История для пользователя, а плагину обычно достаточно получить итоговый результат в поле ввода.
Да в принципе сейчас уже незачем, просто интересно, поинтересовался из любопытства.
Post Reply

Return to “Нужна помощь”