drag & drop e design rato padrões?
-
12-09-2019 - |
Pergunta
Existem padrões de projeto bem estudadas relacionadas com drag & drop e gestos do mouse? Considere uma tela contendo objetos em uma hierarquia pai-filho com uma certa layout. Alguns objetos podem ser arrastados e caiu sobre outros objetos usando o mouse. Além disso, os objetos podem ser redimensionadas e mudou-se com o mouse.
Diferentes hot-spots em objetos se comportam de forma diferente, dependendo do estado do usuário (arrastando, selecionando.) Para uma operação de arrastar-soltar, alguns elementos são: 1) O feedback visual para o usuário para o objeto fonte 2) O feedback visual para o usuário durante o arrasto 3) detecção de área Gota 4) Os testes de compatibilidade gota 5) ação Gota ??p>
Os da API padrão tendem a combiná-las em código bastante monolítica.
Além disso, gestos tais como o movimento e o redimensionamento tem certos elementos em comum: 1) O feedback visual para o usuário quando o mouse está em uma região Resize / Move 2) O feedback visual durante uma operação de movimentação / redimensionamento 3) Conclusão / cancelamento de operação.
A pergunta é, existe uma maneira de fazer isso que agiliza o código, separa as responsabilidades de nível visual e documentos, e possivelmente muito deste declarativa?
Determinar se o ponto sob o rato é um alvo da gota, por exemplo, pode utilizar alguma forma de acerto para testes combinado com a corrente de padrão Responsabilidade.
Eu sinto que deve haver bons padrões de projeto que trazem disciplina e organização para este problema de outra forma confusa.
Cheers,
Solução
Para responder a minha própria pergunta, Capítulo Dois deste livro tem uma discussão muito relevante: http://www.amazon.com/gp/product/0596516258 .
No entanto, isso ainda não é tão declarativa ou bem consignado como um gostaria.