Вопросы по EE_REDRAW для раскраски

Место, где разработчики плагинов могут поделиться своим опытом.
User avatar
zg
zero-gravity
Posts: 6035
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Re: Вопросы по EE_REDRAW для раскраски

Post by zg »

Latest post of the previous page:

NightRoman wrote:Прямой связи нет, но косвенная может быть. Зависит от реализации. Колорер в текущей реализации завязан на EEREDRAW_CHANGE существенно, он не только рисует, но по этому событию еще и перепарсинг делает (и без этого сейчас явно не работает, как надо). Код его:
http://forum.farmanager.com/viewtopic.p ... 903#p89903
я видел код колорера. и не очень понимаю, чем будет плох EE_CHANGE.
EE_CHANGE хорошо, вопрос в производительности. т.е. всё таки хочется на каждый чих получать событие с полной информацией?
Я бы хотел, да. Пользу от этого извлеку немедленно (правильное обновление брекпойнтов). Если будут проблемы с производительностью, то я первый буду за то, чтобы это убрать куда подальше. Но думается, что не будет проблем. А фиче найдутся и другие применения, был бы инструмент.
единственная проблема, рекурсию в EE_CHANGE плагинам придётся отслеживать самим. это ок? по любому надо плагинам. ибо если глушить на уровне фара, один поменяет, другой не узнает.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: Вопросы по EE_REDRAW для раскраски

Post by NightRoman »

я видел код колорера. и не очень понимаю, чем будет плох EE_CHANGE.
Наверное ничем. Колореру просто надо будет слегка поменять логику по отслеживанию изменений.
единственная проблема, рекурсию в EE_CHANGE плагинам придётся отслеживать самим. это ок?
Это когда они в обработчике сами будут вдруг менять текст? Наверное, это ок. Кроме того, думается, что это редко понадобится плагинам (но не ручаюсь, конечно).
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: Вопросы по EE_REDRAW для раскраски

Post by NightRoman »

Если же такие плуги будут, то тоже может получиться эффект каскада вызовов. Но тут это по делу (в отличие от каскада вызовов при раскраске, где одна и та же работа повторяется зря) - раз было изменение, и кто-то за этим следит, то он и должен быть оповещен. В принципе можно придумать 2 вычурных плагина, которые друг друга зациклят (один в EE_CHANGE что-то добавляет, а другой это что-то убирает - и так они работают без конца). Но на практике вряд ли это когда произойдет. А если произойдет, то тогда можно будет и подумать.
Post Reply

Return to “Разработка плагинов”