Ao utilizar formulários de uma maneira não trivial, é importante compartilhar o máximo possível para conservar recursos. Por esse motivo, o gerenciamento de cores deve ser separado do toolkit quando houver mais de um formulário a ser manipulado.
É claro que é possível criar um toolkit por formulário, mas isso será muito dispendioso se houver muitos formulários. Em vez disso:
Crie um toolkit para todos os formulários que têm o mesmo ciclo de vida útil. Por exemplo, se estiver criando um editor de várias páginas, crie um toolkit por editor e descarte-o quando o editor for descartado. Todas as páginas no editor devem compartilhar esse toolkit.
Crie um gerenciador de cor (FormColors
) por plug-in. Ao criar o toolkit, transmita o gerenciador de cores para o toolkit.
O toolkit saberá que as cores são compartilhadas e não as descartará.
Utilize o suporte da plataforma para fontes e, se possível, utilize fontes JFaceResources
predefinidas. Entre fontes padrão, de 'banner' e de
'cabeçalho' é possível realizar muita coisa. O uso de muitas fontes é muito confuso para o usuário e, se você gerenciar suas próprias fontes, deverá garantir alternativas entre plataformas.
As fontes JFace funcionam garantidamente em todas as plataformas nas quais o Eclipse é fornecido.
Descarte o gerenciador de cores no encerramento do plug-in (não assuma que o encerramento do plug-in também indica o encerramento da plataforma - o tempo de execução do Eclipse pode desinstalar o plug-in dinamicamente enquanto a plataforma ainda está em execução).
Utilize o gerenciador de cores para alocar todas as cores necessárias pelos formulários.