Вверх ↑
Ответов: 3889
Рейтинг: 362
#1: 2011-08-05 19:40:20 ЛС | профиль | цитата
В процессе написания векторного редактора столкнулся с необходимостью отслеживания момента, когда мышка начала и перестала двигаться, тогда я это решил ChangeMon и флагом на дискретных элементах (пришлось серьёзно потанцевать с бубном).
Сегодня miver опубликовал забавную схему дробления строки на группы символов, разделённые пробелом, в которой используется тот же ChangeMon. и опять такая же задача - узнать, что больше изменений не происходит. Он этот вопрос не решал, т.к. задачей была минимальная схема, а это её серьёзно раздувает и замедляет.

Это была преамбула, теперь - амбула.

Если хотим в этих и подобных случаях получить универсальное, гениальное и простое решение - слёзно просим кого-нибудь с доступом к SVN добавить две строчки в условный переход кода ChangeMon и оформить ещё одно событие - событие неизменности данных. Собственно, вот и вся необходимая и достаточная доработка. Сразу станет возможным делать ветвление - действие при изменении и действие при неизменности.

Спектр применения очень широк, иногда бывает очень полезно реагировать на приостановление каких-либо изменений, а не только на их началопродолжение.

Если продолжить мысль, добавив триггер получаем детектор "заднего фронта" изменений - реакцию на прекращение изменений. Тоже полезный режим)
карма: 1

0