Ну в принципе с Drag&Drop все понятно. Работает. А что делать если нужно добавить в контектное меню пункт ВСТАВИТЬ? Как и что нужно редактировать или дописывать?
Игорь, для вставки в контекстного меню дополнительного пункта, необходимо в Terrasoft Administrator найти и открыть окно wnd_FilesDetailGridArea, перейти на закладку невизуальных компонент и добавить новый ActionMenuItem в ветку amiGridOperations, а также создать для этого элемента обработчик события OnExecute.
Что касается определения "горячих" клавиш для контекстного меню, то сравнительно легко это можно сделать только начиная с версии 3.3.2. В этой версии у окна появилось свойство HotKeyList, работая с которым, Вы можете определять обработку клавиш. Основные функции для работы с клавиатурой находятся в скрипте scr_KeyboardUtils.
Пример обработки:
function UpdateWindowHotKey(Window, HotKey, ButtonName, MethodName){
var OldHotKey = Window.HotKeyList.ItemsByHotKeyString(HotKey);if(Assigned(OldHotKey)){
Window.HotKeyList.RemoveItem(OldHotKey);}
Window.HotKeyList.Add(HotKey, Window.ComponentsByName(ButtonName),
MethodName);}
function InitializeGridAreaHotKeyList(Window){
UpdateWindowHotKey(Window, 'Ins', 'btnAdd', 'AddAction');
UpdateWindowHotKey(Window, 'Ctrl+Ins', 'btnCopy', 'btnCopyOnClick');
UpdateWindowHotKey(Window, 'Del', 'btnDelete', 'btnDeleteOnClick');}
Олег Лабьяк,
разработчик,
3-я линия Службы поддержки Terrasoft.