Em seguida são apresentadas descrições de algumas das alterações de maior interesse efectuadas pelos programadores de plug-ins à Plataforma e SWT para a edição 3.2 do Eclipse.
Existem também várias funções novas direccionadas para os utilizadores finais da plataforma que podem ser visualizadas na secção Novidades do Manual do Utilizador da Área de Trabalho.
Alterações à Plataforma
|
|
Refactorização em tempo de execução |
Para tornar o tempo de execução do Eclipse mais flexível e permitir a utilização independente dos componentes de tempo de execução, o plug-in org.eclipse.core.runtime foi dividido em vários plug-ins:
Foram adicionadas novas APIs para facilitar o controlo das partes divididas do tempo de execução. A refactorização em tempo de execução deverá ser transparente para os outros plug-ins. Para mais detalhes, consulte o manual de migração do Eclipse 3.2. |
Navegador Comum |
Um novo plug-in, o org.eclipse.ui.navigator, introduz um
enquadramento para os visualizadores de construção que combinam o conteúdo de
vários modelos de domínio. O enquadramento permite a contribuição declarativa
de conteúdo, etiquetas, acções, filtros e outras capacidades. O plug-in
org.eclipse.ui.navigator.resources faculta a utilização concreta deste
enquadramento na forma de uma vista Explorador de Projectos e de
extensões do visualizador declarativas para o modelo IResource.
|
Enquadramento de propriedades em separadores |
Foi adicionado enquadramento de propriedades em separadores. O
enquadramento de propriedades em separadores faculta uma página de folha de
propriedades de substituição, permitindo que as propriedades sejam apresentadas
na vista Propriedades através da utilização de controlos arbitrários,
organizados em separadores e secções contribuídos através do registo da
extensão.
Para mais detalhes, consulte o artigo A Vista de Propriedades em Separadores do Eclipse. |
API do Sistema de Ficheiros |
Um novo plug-in, o org.eclipse.core.filesystem, introduz uma nova API genérica para interagir com os sistemas de ficheiros. A plataforma foi migrada para utilizar esta API de sistema de ficheiros em vez de APIs java.io. Isto significa que os recursos podem ser criados em sistemas de ficheiros de segurança arbitrários e que os plug-ins podem facultar suporte para novos tipos de sistemas de ficheiros. O suporte foi adicionado ao projecto e a assistentes de recursos ligados para criar recursos que estejam ligados a outros sistemas de ficheiros. Os plug-ins que definem sistemas de ficheiros alternativos podem ligar-se a este suporte do assistente através da utilização do ponto de extensão org.eclipse.ui.ide.filesystemSupport. |
Categorização adicionada à Importação e à Exportação |
Os pontos de extensão |
Sugestões para anotações em editores de texto |
A passagem do rato para anotações foi deslocada para baixo do Texto de JDT
para o Texto da Plataforma. O suporte de passagem do rato para réguas de texto,
vertical e de descrição geral é instalado por
TextSourceViewerConfiguration utilizado pelos editores de
texto:
|
Navegação na anotação em editores de texto |
A navegação pela anotação foi deslocada para baixo do Texto de JDT
para o Texto da Plataforma e está disponível em todos os editores de texto:
|
Assistência de campo de JFace |
O JFace introduz um novo suporte para auxiliar o utilizador na conclusão de campos dentro de caixas de diálogo e de formulários. O pacote org.eclipse.jface.fieldassist faculta classes que lhe permitem decorar controlos arbitrários com imagens e com o texto correspondente que surge à passagem do rato. Estas classes podem ser utilizadas para marcar os campos requeridos numa caixa de diálogo, para mostrar condições de erro baseadas em campos ou para mostrar pedidos de assistência de conteúdo. O pacote também permite instalar propostas de conteúdo num controlo, incluindo uma caixa de diálogo emergente com propostas de conteúdo, janelas emergentes secundárias com informações adicionais e opções para invocar propostas explicitamente ou em estilo automático (memorização de teclas).
|
Aperfeiçoamento de TreeViewer de JFace |
O AbstractTreeViewer suporta agora vários elementos iguais na árvore, cada um deles com uma cadeia ascendente diferente. Este suporte requer que os clientes activem a correlação de elementos ao chamar setUseHashLookup(true). O TreeViewer suporta agora árvores SWT.VIRTUAL. Existe um fornecedor de conteúdo lazy correspondente, o ILazyTreeContentProvider, que apenas devolve conteúdos conforme forem necessários. |
Suporte para conteúdo de Ajuda dinâmico |
O sistema de ajuda suporta agora a composição dinâmica do conteúdo de ajuda. Os tópicos criados no XHMTL podem conter marcações adicionais específicas do Eclipse para a filtragem rápida do conteúdo com base em valores os/ws/arch, na presença de plug-ins, nas capacidades activadas, etc. O conteúdo partilhado pode ser incluído em vários documentos. Finalmente, os plug-ins podem contribuir com fragmentos de XHTML que se ligam a âncoras contidas noutros documentos. Todas estas acções permitem que os programadores de informações facultem documentos dinâmicos que personalizam o contexto durante a visualização. |
Aperfeiçoamentos da pesquisa de ajuda |
A indexação e procura de assistência ao utilizador foi aperfeiçoada de várias formas. Os participantes de pesquisa adicional podem ser registados através do ponto de extensão que pode adicionar conteúdo ao índice Lucene. A ajuda contribui agora com um participante de pesquisa XHTML que pode indexar documentos de ajuda dinâmica criada no XHTML (consultar acima). Para além disso, os documentos que anteriormente não constavam do índice são agora apresentados (por exemplo, folhas de apontamentos e páginas Bem-vindo). Os acertos da pesquisa podem agora ter ícones diferentes e a acção "open" pode ser delegada para o motor de pesquisa. |
Os problemas podem ser agrupados |
Os problemas contidos na vista Problemas podem agora ser agrupados. Existem agrupamentos predefinidos por gravidade e por tipo de problema e podem ser definidos grupos adicionais através do ponto de extensão org.eclipse.ui.ide.markerSupport. |
Ajuda aperfeiçoada em caixas de diálogo |
A maioria das caixas de diálogo no Eclipse contêm agora um botão de ajuda padrão no canto inferior esquerdo. Este botão chama a ajuda de contexto, que equivale a premir F1 (no Windows). para além disso, o conteúdo de ajuda será apresentado no tabuleiro da caixa de diálogo em vez de ser apresentado numa janela à parte. As caixas de diálogo personalizadas podem herdar esta funcionalidade ao transformar a nova classe TrayDialog em sub-classe em vez de Caixa de Diálogo. As folhas de apontamentos podem também segui-lo até às caixas de diálogo (no tabuleiro) para os passos que envolvam a abertura das caixas de diálogo. |
Ligações de comandos incorporados no conteúdo da
Assistência ao Utilizador |
As ligações na Ajuda, as folhas de apontamentos e o conteúdo de
Introdução podem agora executar comandos quando activados pelo utilizador. As
ligações de comandos podem ser utilizadas para abrir páginas de preferências,
para lançar assistentes, para apresentar vistas, para abrir perspectivas e para outros objectivos.
O enquadramento do comando é extensível para que sejam possíveis muitas mais
utilizações das ligações de comandos. O Manual
do Utilizador da Área de Trabalho foi aperfeiçoada com ligações de
comandos em várias localizações. A imagem apresentada abaixo mostra duas
ligações de comandos num tópico de ajuda: |
Suporte para lançar comandos a partir de folhas de apontamentos |
Os comandos podem agora ser lançados a partir de folhas de apontamentos.
O ficheiro de conteúdo apresentado abaixo contém comandos para abrir a
vista Pesquisar e o Explorador de Pacotes.
<?xml version="1.0" encoding="UTF-8"?> <cheatsheet title="Example of Commands in a Cheat Sheet"> <intro> <description>A cheat sheet shows the package explorer</description> </intro> <item title="Show Search View"> <description>This is a step with a command which shows the search view.</description> <command serialization= "org.eclipse.search.ui.views.SearchView"/> </item> <item title="Step 2"> <description>This is a step with a command and parameters, shows package explorer.</description> <command serialization="org.eclipse.ui.views.showView( org.eclipse.ui.views.showView.viewId= org.eclipse.jdt.ui.PackageExplorer)"/> <onCompletion> Command example completed. </onCompletion> </item> </cheatsheet> |
Mensagem de conclusão |
Uma mensagem de conclusão pode ser adicionada a um passo numa folha de
apontamentos apresentada após a conclusão do passo.
|
Folhas de apontamentos compósitas |
As folhas de apontamentos compósitas são uma novidade no Eclipse 3.2.
Uma folha de apontamentos compósita faculta orientação caso surja um
problema grande ao dividi-lo em pequenas tarefas, cada uma delas contendo a sua
própria folha de apontamentos. As tarefas podem ser organizadas em grupos. As
folhas de apontamentos compósitas são abertas na vista de folhas de
apontamentos e são lançadas através da utilização da caixa de diálogo de
selecção de folhas de apontamentos. Cada tarefa contém uma descrição e as
hiperligações direccionam o utilizador através de uma sequência de tarefas.
As folhas de apontamentos compósitas contêm uma árvore que apresenta as tarefas e o respectivo estado. O painel do lado inferior direito contém tarefas individuais. O conteúdo de uma folha de apontamentos compósita é definido num ficheiro XML. O ficheiro de conteúdo pode especificar as dependências que existem entre as tarefas, para que uma tarefa apenas possa ser iniciada após a conclusão das tarefas pré-requisitadas. |
Índice de palavras-chave da ajuda |
A ajuda contém agora um índice de palavras-chave, no qual é possível
registar palavras-chave da documentação e facultar uma ligação para um
documento de ajuda adequado. O índice está disponível na vista Ajuda e na
janela Ajuda (vista apresenta abaixo).
Nota: O conteúdo do índice ainda não está disponível para o SDK (o índice será apenas apresentado se o conteúdo estiver disponível). |
Ferramenta de conversão de documentos de ajuda XHTML |
O PDE contém um novo utilitário que permite converter rapidamente od
documentos de ajuda HTML para XHTML. Para além de converter o HTML em XHTML
válido, a ferramenta irá actualizar a extensão do nome do ficheiro e o índice e
adicionar as associações necessárias para activar o conteúdo dinâmico e para
pesquisar o conteúdo do XHTML. Após esta conversão, os utilizadores podem tirar
partido das novas funções de Ajuda da versão 3.2, tais como a filtragem de
conteúdo dinâmico, a reutilização do conteúdo e a contribuição de conteúdo
dinâmico que requerem o XHTML como formato de conteúdo.
Esta função pode ser invocada através de ferramentas do PDE > Converter ficheiros de Ajuda em XHTML no menu contextual dos projectos de plug-ins. |
Bem-vindo universal |
Com base na experiência obtida através das implementações de Bem-vindo
concretas, é agora oferecida uma página de "Universal Welcome" configurável,
que pode ser utilizada por qualquer produto. Os produtos podem optar entre 7
secções principais predefinidas: Descrição Geral, Primeiros Passos, Iniciações,
Exemplos, Novidades, Recursos da Web e Migração (o SDK do Eclipse utiliza 4
destas opções). A página "Universal Welcome" contém disposições de página e
níveis de importância configuráveis para cada contribuição e é totalmente
consciente do tema.
Também oferece apresentações de HTML e de SWT para uma cobertura total da
plataforma.
Uma página de preferências Bem-vindo facultada pelo "Universal Welcome" abre a personalização da página Bem-vindo para os utilizadores finais e pode ser incluída em qualquer produto que a pretenda oferecer. Pode ler mais sobre esta opção em Especificação de "Universal Welcome". |
Suporte para a configuração e os temas da página Bem-vindo |
O enquadramento Introdução contém mais suporte de configuração. Um
configurador de introdução pode ser contribuído para oferecer um único cálculo
dos descendentes do grupo, suporte de substituição da variável e resolução
tardia de caminho da âncora. Este suporte é utilizado com frequência pela
página "Universal Welcome", mas também pode ser utilizado por outras
implementações da página Bem-vindo.
Os temas representam recolhas de nomes de ficheiros CSS, propriedades e imagens que em conjunto definem o conteúdo da página Bem-vindo. A página "Universal Welcome" toma partido deste suporte ao facultar a capacidade de seleccionar o tema e dois temas concretos na versão 3.2: "Circles" e "Purple Mesh". |
Suporte de espaço de nomes para os pontos de extensão Ant |
Os pontos de extensão org.eclipse.ant.core, antTasks e antTypes permitem agora a designação de um URI no qual deverá residir a definição. Para mais detalhes sobre todas as alterações, consulte bug 133190. |
Suporte de equipa para a integração de modelos lógicos |
A API foi adicionada para permitir que os modelos lógicos participem na
operação da Equipa. Com esta API, os fornecedores de Equipas podem:
|
Alterações a SWT
|
|
Ordenar indicadores em tabelas e árvores |
Tabela e Árvore suportam agora um indicador de direcção no cabeçalho da coluna. Os fragmentos do SWT ordenar por coluna (simples) e ordenar por coluna (tabela virtual). |
Coluna reordenáveis em árvores |
No Eclipse 3.1, foi adicionada a capacidade de reordenar colunas numa Tabela. Esse suporte foi agora adicionado à Árvore. A ordem de apresentação das colunas na árvore pode ser alterada ao arrastar o cabeçalho da coluna ou pode ser definida programaticamente. Fragmento de exemplo. |
Suporte de tema XP aperfeiçoado |
No Windows XP, o SWT apresenta agora o segundo plano com textura nas pastas de separadores. Os grupos, as etiquetas, as caixas de verificação, etc. são transparentes para este segundo plano. Os widgets personalizados, como o StyledText, também apresentam o contorno correcto para o tema do Windows XP que prevalece. Para mais instruções sobre a execução com uma máscara do Windows XP, consulte FAQ sobre o SWT. |
GIF animados |
As imagens dos GIF animados podem ser guardadas no ficheiro. Para ver um exemplo, consulte o fragmento SWT. |
Notificação da aparência do ambiente de trabalho |
Quando as definições de aparência, tais como o tema, o tipo de letra ou
as cores predefinidas do ambiente de trabalho forem alteradas, é emitido um
evento |
Notificação de inutilização |
Anteriormente, quando um evento |
Sugestões de ferramentas para colunas |
O texto das sugestões de ferramentas pode ser definido num cabeçalho
de tabela ou de coluna em árvore através da utilização de |
CoolBar Vertical |
Uma coolbar vertical pode ser criada através da utilização do estilo
|
Suporte OpenGL |
Pode agora utilizar OpenGL em aplicações SWT. A interface OpenGL trabalha com bibliotecas de OpenGL de terceiros, tais como LWJGL. Para ver exemplos, consulte os fragmentos SWT |
Árvore virtual |
A árvore suporta agora o estilo SWT.VIRTUAL. Isto permite-lhe criar rapidamente árvores com grandes quantidades de dados. Quando são necessários os TreeItems, estes são criados a pedido. Para ver um exemplo, consulte o fragmento SWT. |
Botões com imagem e texto |
Os botões podem agora apresentar uma imagem, bem como um texto. Esta função é suportada pelo Windows XP, Mac OS X e GTK. |
HIView no Mac OS X |
O SWT utiliza agora o HIView no Mac OS X. Esta utilização resolve vários problemas de recorte e de dimensionamento. |
Incorporar objectos em texto |
Através da utilização de TextLayout, é agora possível incorporar objectos, tais como imagens ou widgets, dentro do texto. Podem ser especificadas as métricas de glifos, tais como a subida, a descida e a largura. Os objectos translineiam-se com o texto. Para ver um exemplo, consulte o fragmento SWT. |
Indentar, alinhar e justificar texto |
O TextLayout suporta agora a indentação, a justificação e o alinhamento de texto. Para ver um exemplo, consulte o fragmento SWT. |
Aumento da linha de base do texto |
Através da utilização de TextLayout e de TextStyle, é agora possível especificar o aumento da linha de base de um intervalo de texto. Para ver um exemplo, consulte o fragmento SWT. |
Suporte de cor de HSB |
Uma cor pode ser criada ao especificar a tonalidade, a saturação e a luminosidade. Para além disso, pode ser consultada a tonalidade, a saturação e a luminosidade de uma determinada cor. Para ver um exemplo, consulte o fragmento SWT |
Alinhamento, indentação e justificação de StyledText |
O StyledText suporta agora a indentação, a justificação e o alinhamento de texto. Para ver um exemplo, consulte o fragmento SWT |
Objectos incorporados em StyledText |
O StyledText permite agora a incorporação de objectos, tais como imagens ou widgets, dentro do texto. Os objectos translineiam-se com o texto. Para ver um exemplo, consulte o fragmento SWT |
Imagem estática |
Uma imagem estática pode ser definida num controlo. Para além disso, o segundo plano pode ser herdado por widgets descendentes, tais como as etiquetas. Para ver um exemplo, consulte o fragmento SWT |
Carregamento de imagem nativa |
O construtor |
Arrastar texto |
Se o evento Para ver um exemplo, consulte este fragmento SWT |
Novo widget ExpandBar |
O widget ExpandBar permite ao utilizador apresentar e ocultar recolhes de widgets, ao fazer clique num cabeçalho. A ExpandBar contém vários artigos que poderão conter uma imagem ou um título no cabeçalho. Para ver um exemplo, consulte este fragmento SWT. |
Marcas em StyledText |
O StyledText pode agora apresentar listas formatadas em vários estilos, incluindo marcas, números, letras maiúsculas ou minúsculas e estilos definidos por personalização. Para ver um exemplo, consulte este fragmento SWT. |
Árvore de desenho personalizado |
O widget Árvore suporta agora desenhos personalizados para células individuais. As aplicações podem aperfeiçoar o aspecto nativo da árvore ao personalizar a composição dos dados. A aplicação controla a altura das linhas, para que possam ser desenhadas várias linhas de texto. Para além disso, pode apresentar várias imagens na mesma célula, alterar o tipo de letra e a cor várias vezes e alterar a forma como as selecções são desenhadas. Para ver exemplos, consulte os seguintes fragmentos: |
Tabela de desenho personalizado |
O widget Tabela suporta agora desenhos personalizados para células individuais. Apesar de manter o aspecto nativo da tabela, os utilizadores podem personalizar o modo como as células são desenhadas para apresentar os dados noutro formato que não seja texto com uma imagem, para mostrar várias linhas de texto numa única célula, para alterar o tipo de letra e a cor várias vezes na mesma célula, para substituir o desenho de selecção nativo, etc. Para ver exemplos, consulte os seguintes fragmentos: |
Arrastar efeitos para a Tabela e a Árvore |
Os widgets Tabela e Árvore facultam agora comentários visuais do que está a ser arrastado. |
Nova classe de Sugestões de Ferramentas |
A nova classe de Sugestões de Ferramentas pode ser utilizada para apresentar sugestões de ferramentas que não estejam directamente ligadas a um controlo. Estas sugestões de ferramentas podem ser colocadas em qualquer localização e podem ter a aparência predefinida da plataforma ou uma aparência BALLOON, como é apresentado abaixo. |