|
![]() |
#1 |
Участник
|
Цитата:
Сообщение от DSPIC
![]() 2. Конечно же, видеть форму SysEditorGotoLine нам не нужно, да и ломать её не хочется. Решение – создать класс – наследник от FormRun, у которого убрать вызовы super() в методах init(), run(). Добавить методы, которые вызываются kernel’ем при использовании оригинальной формы: editor(), showForm(). В этом классе и будет жить наш editor, c которым мы можем что-нибудь делать.
Есть правда один недостаток – мы лишаемся формы SysEditorGotoLine, но за всю свою практику мне не пришлось ею воспользоваться ни разу. Достоинство – изменение только одной строки в стандартном методе ClassFactory\formRunClassOnClient. Этот подход должен избавить от необходимости правки методов класса EditorScripts для AxAssist. Надеюсь - это пригодится. ![]() ЗЫ Я editor храню в infolog, как где-то тут описано было. ClassFactory не менял. Последний раз редактировалось Denicce; 31.08.2009 в 12:21. |
|
![]() |
#2 |
Боец
|
Цитата:
Сообщение от Denicce
![]() можно и не лишаться формы. Я через globalCache() храню признак запуска Alt+M из класса-плугина Табакса и анализирую его в EditorScripts.getApplicableScripts(). Если вкл., то тут же return, иначе - стандартная обработка. Думаю, аналогично и в случае формы перехода к строке можно сделать.
ЗЫ Я editor храню в infolog, как где-то тут описано было. ClassFactory не менял.
|
|
Теги |
download, editor script, полезное, axapta |
|
|