Definindo o Conteúdo da Introdução
Agora, observaremos o conteúdo em si. O conteúdo é descrito em termos de páginas. Todas as páginas têm um atributo deid.
Esse é o id que é utilizado ao definir as páginas home e de espera e outros locais em que há referência a uma página. Caso contrário, os atributos relevantes dependem do tipo de página que está definido.
Há dois tipos básicos de páginas:
- Páginas estáticas são arquivos HTML simples. Essas páginas utilizam os mecanismos HTML normais para se vincularem a outras páginas. As páginas estáticas não precisam ser definidas no arquivo de conteúdo da configuração, com exceção da home page. Já que a home
page é especificada pelo id (home-page-id) no elemento apresentação, deve haver uma definição de página utilizando esse id no arquivo de conteúdo. Essa página precisa somente definir uma url. Todos os outros subelementos serão ignorados, já que a página HTML em si descreverá o conteúdo da página. Todas as outras páginas de introdução HTML contribuídas pelo plug-in devem ser incluídas com o plug-in, mas não precisam ser especificadas no arquivo de conteúdo. Os arquivos HTML localizados em outros plug-ins ou na web também podem ser utilizados como referência.
- Páginas dinâmicas são descritas no arquivo de conteúdo XML utilizando subelementos que descrevem o conteúdo da página. Os subelementos são itens da UI freqüentemente localizados em páginas parecidas com HTML. Dependendo da implementação, essas páginas serão dinamicamente traduzidas para HTML (quando o tipo de implementação é html) ou serão dinamicamente criadas como formulários da UI com base em SWT (quando o tipo de implementação é swt). Os seguintes subelementos podem ser definidos em uma página:
- Um grupo é utilizado para agrupar outros subelementos e definir um estilo consistente no grupo.
- Um link define um link que pode ser exibido utilizando uma imagem e um texto. O link pode navegar para outra página e opcionalmente executar uma ação de introdução. As ações são especificadas como comandos na URL.
- Os elementos text e img mostram o conteúdo de texto e de imagem.
- O elemento include inclui um subelemento definido anteriormente. O elemento é chamado por seu id.
- O elemento head define HTML adicional a ser incluído na seção título da página quando a implementação html for utilizada.
- O elemento html define HTML adicional a ser incluído no corpo da página quando a implementação html for utilizada.
Um título para uma página também pode ser definido. Uma página também pode especificar que o seu conteúdo seja definido em um arquivo de conteúdo separado. Dividir páginas em arquivos separados pode ser útil quando o desempenho é uma preocupação, já que um conteúdo da página de introdução não será inicializado até que seja necessário.
A melhor maneira de obter uma amostra do formato da definição do conteúdo é procurar as implementações no SDK. O seguinte fragmento mostra apenas a primeira parte do conteúdo para a página raiz do SDK, que é a primeira página de introdução mostrada.
<introContent>
<page alt-style="css/root_swt.properties" style="css/root.css" id="root" style-id="page">
<title style-id="intro-header">Welcome to Eclipse Platform 3.0</title>
<group id="links-background">
<group id="page-links">
<link label="Overview" url="http://org.eclipse.ui.intro/showPage?id=overview" id="overview" style-id="left">
<text>Find out what Eclipse is all about</text>
</link>
<link label="Tutorials" url="http://org.eclipse.ui.intro/showPage?id=tutorials" id="tutorials" style-id="left">
<text>Let us guide you through Eclipse end-to-end tutorials</text>
</link>
<link label="Samples" url="http://org.eclipse.ui.intro/showPage?id=samples" id="samples" style-id="right">
<text>Explore Eclipse development through code samples</text>
</link>
<link label="Whats New" url="http://org.eclipse.ui.intro/showPage?id=news" id="news" style-id="right">
<text>Find out what is new in this release</text>
</link>
</group>
</group>
Os elementos em uma página também podem ser filteredFrom de uma implementação específica. Isso permite que os designers de página projetem com plataformas específicas em mente. Há muitos outros atributos poderosos que podem ser utilizados ao descrever uma página e seu conteúdo. Consulte a documentação do ponto de extensão para
org.eclipse.ui.intro.config
e sua especificação do formato do arquivo de conteúdo da introdução associada para uma referência completa dos elementos válidos, subelementos e seus atributos.