Associações de teclas de área de trabalho

A área de trabalho define muitos aceleradores de teclado para invocar acções comuns com o teclado.  Em versões anteriores da plataforma, os plug-ins podiam definir a tecla aceleradora a utilizar para a acção quando esta era definida.  Todavia, esta estratégia pode causar vários problemas:

No intuito de obviar a estes problemas, a plataforma define uma estratégia de associação de teclas configurável que é extensível por plug-ins. Resolve assim os problemas supracitados e introduz novas capacidades:

A estratégia básica consiste nos plug-ins utilizarem comandos para definir acções semânticas.  Os comandos são meramente declarações de uma acção e respectiva categoria associada.  Estes comandos podem depois ser associados a associações de teclas, acções e rotinas de tratamento.  Os comandos não definem uma implementação para a acção.  Quando um plug-in define uma acção para um editor, conjunto de acções ou vista, a acção pode especificar que se trata de uma implementação de um desses comandos.   Assim se permite que acções semelhantes fiquem semanticamente associadas ao mesmo comando.

Uma vez definido um comando, poderá ser definida uma associação de teclas que referencie o comando.  A associação de teclas define a sequência de teclas que deve ser usada para invocar o comando.  Uma associação de teclas poderá referenciar um esquema que é usado para agrupar associações de teclas em esquemas denominados diferentes que o utilizador poderá activar através do diálogo Preferências.

Poderemos compreender melhor tudo isto com uma visita à área de trabalho e vendo como comandos e associações de teclas são declarados.  Veremos tudo isto do ponto de vista da definição de associações de teclas para acções de área de trabalho existentes.