Managing links
Most of the extensions coming into the main Welcome pages offer links to open
further pages contributed by the extensions themselves. It is recommended to
create these pages in such a way as to continue with the shared Welcome visual
design. The main requirement is to show the appropriate navigator at the top of
the page.
It is fairly easy to do that using the 'include' element. The idea is to
include the navigation content at the beginning of contributed page. Unlike the
current Welcome implementation, shared Welcome main pages have navigation
section that is different for each page. For this reason, pages that branch off
these pages should include the navigation from the parent page. For example:
<introContent>
<extensionContent id="extra" name="Extra" alt-style="css/swt.properties" style="css/overview.css" path="overview/@">
<link
label="Extra Overview link"
url="https://org.eclipse.ui.intro/showPage?id=extraOverview"
id="extra-overview">
<text>Showing the third-level extra page for overview</text>
</link>
</extensionContent>
<page id="extraOverview" style="$theme$/html/overview.css" style-id="page">
<title style-id="intro-header">$introTitle$</title>
<group id="extra-group1" filteredFrom="swt"/>
<include path="overview/navigation-links"/>
<group id="page-content">
<group id="content-header" label="EXTRA OVERVIEW" filteredFrom="swt">
</group>
<text style-id="page-title" id="page-title" filteredFrom="html">EXTRA OVERVIEW</text>
<text style-id="page-description" id="page-description">Extra overview page description.</text>
<!-- Add content here -->
</group>
</page>
</introContent>
The extension above contributed into the overview page contributes a
link that shows another page whose definition is part of the extension.
Note how we define the title element using substitution variable (the
variable will be resolved based on the product property). We also
include the group 'navigation-links' that belongs to the 'overview'
page at the beginning of the page content definition. We also add the
'extra-group1' div because it is can be used by some themes for adding
additional page decoration (indeed, it is used in 'Purple Mesh' theme
for that exact purpose).