2009-09-21 4 views
2

Есть ли хорошо изученные образцы дизайна, связанные с перетаскиванием мышц &? Рассмотрим холст, содержащий объекты в иерархии parent-child с определенным расположением. Некоторые объекты можно перетаскивать и опускать на другие объекты с помощью мыши. Кроме того, объекты могут быть изменены и перемещены с помощью мыши.модели перетаскивания и мыши?

Различных горячие точки на объектах ведут себя по-разному в зависимости от состояния пользователя (. Перетаскивание сигнала) Для операции перетаскивания, некоторые элементы: 1) Визуальная обратная связь с пользователем для исходного объекта 2) Визуальные обратной связи пользователь во время перетаскивания 3) Отбросьте обнаружение зоны 4) Бросьте тесты на совместимость 5) Бросьте действие

стандартный API, как правило, чтобы объединить их в достаточно монолитный код.

Кроме того, жесты, такие как движение и изменение размеров имеют определенные общие элементы: 1) визуальную обратную связь для пользователя, когда мышь находится в изменении размера/переместить область 2) визуальную обратную связь во время перемещения/изменения размера операции 3) Завершение/отмена операции.

Вопрос в том, есть ли способ сделать это, что упрощает код, разделяет обязанности на уровне визуального и документа и, возможно, большую часть этого декларативного?

Определение того, является ли точка под мышью целевой точкой капли, например, может использовать некоторую форму тестирования ударов в сочетании с шаблоном Chain of Responsibility.

Я чувствую, что должны быть хорошие шаблоны проектирования, которые привносят дисциплину и организацию в эту грязную проблему.

Приветствия,

ответ

1

Чтобы ответить на мой собственный вопрос, вторая глава этой книги имеет очень соответствующее обсуждение: http://www.amazon.com/gp/product/0596516258.

Однако это все еще не так декларативно или хорошо учтено, как хотелось бы.

+0

Спасибо, приятель :) – mlvljr

Смежные вопросы