Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Triquetrum/Releng/Welcome Pages
Issue #169 Create Welcome Support wants us to add Welcome Page support.
Contents
Summary
The Welcome information is in org.eclipse.triquetrum.workflow.editor/intro/
To get this to work org.eclipse.triquetrum.workflow.editor/plugin.xml was edited:
<extension point="org.eclipse.ui.intro.configExtension"> <configExtension content="intro/overview.xml" configId="org.eclipse.ui.intro.universalConfig"> </configExtension> </extension>
Basically, how this works is that individual plugins contribute to the universal intro.
Details below.
Resources
Unfortunately, modifying the Welcome Page is not well documented. Below are some references:
- How to contribute to welcome (bioclipse.net) In the end, this was the page that helped the most.
- Platform Plug-in Developer Guide > Programmer's Guide > User assistance support > Welcome (eclipse.org) Light on the details, but helpful
Types of Welcome
The Programmer's Guide (see above) outlines a few different approaches
It seems that Universal intro is more modern and preferred because it allows plugins to add to the pages.
Stumbling Blocks
One issue is that Triquetrum has a org.eclipse.triquetrum.repository/Triquetrum.product, which defines how to invoke Triquetrum, but the Welcome documentation does not really cover that.
When editing org.eclipse.triquetrum.repository/Triquetrum.product, the Branding tab has a Welcome Page section, which we set to org.eclipse.ui.intro.universal:
Setting the Branding tab adds the following to Triquetrum.product:
<intro introId="org.eclipse.ui.intro.universal"/>
Here's a key insight: The way that this works is that individual plugins contribute to the Welcome facility.
So, we edit org.eclipse.triquetrum.workflow.model.editor/plugin.xml and add
<extension point="org.eclipse.ui.intro.configExtension"> <configExtension content="target/intro.xml" configId="org.eclipse.ui.intro.universalConfig"> </configExtension> </extension>
Then, based on How to contribute to welcome (bioclipse.net), we create org.eclipse.triquetrum.workflow.model.edit/target/intro.xml
<?xml version="1.0" encoding="utf-8" ?> <introContent> <extensionContent id="org.eclipse.triquetrum.workflow.model.edit" style="css/sample.css" name="Triquetrum Workflow Model Edit" path="overview/@"> <group style-id="content-group" id="workbench-group"> <link label="Triquetrum WorkfloW Model Edit" url="http://org.eclipse.ui.intro/showPage?id=myPageID" id="myLinkID"> <text>The o.e.triquetrum.workflow.model.edit Eclipse project has item adapters </text> </link> <page id="myPageID" style="/intro/overview.css" style-id="page"> <title style-id="intro-header">What is Bioclipse</title> <include path="overview/tutorials" /> <group id="page-content"> <group id="content-header" label="What is Bioclipse" filteredFrom="swt"> </group> <text style-id="page-title" id="page-title" filteredFrom="html">HEADER </text> <text style-id="page-description" id="page-description"> CONTENT GOES HERE </text> </group> </page> </group> </extensionContent>
Starting Triquetrum from the org.eclipse.triquetrum.repository/Triquetrum.product page brings up the following Welcome page:
If the Welcome page is not visible, select Help -> Welcome.
To Do
- What we have above is not formatted well
- We need to figure out which plugins should contribute what
- More branding would be helpful
How Bioclipse Uses the universal config
- How to contribute to welcome (bioclipse.net)
- net.bioclipse.ui/plugin.xml defines text like
<configExtension content="intro/overview.xml" configId="org.eclipse.ui.intro.universalConfig"> </configExtension>
- net.bioclipse.ui/intro/overview.xml defines the contents of the overview section.
Change Welcome to Eclipse to Welcome to Triquetrum
What we want to do is to change the title of the Welcome home page from "Welcome to Eclipse" to "Welcome to Triquetrum". As always, the documentation is a bit lacking for this.
- Eclipse Product Configuration (Eclipse Help) discusses using the Properties pane in the Configuration tab of the Product editor to set properties.
- Contributing to universal intro (Eclipse Help) discusses how to set the introTitle:
- "Universal intro customization is split between product branding properties and preferences. Product branding properties are set by the product and cannot be modified. They include product title, branding image and branding image text:"
<product application="org.eclipse.ui.ide.workbench" description="Product Foo to use for testing the universal intro" name="Product Foo"> <property name="introTitle" value="Welcome to Product Bar"/> <property name="introBrandingImage" value="product:eclipse.png"/> <property name="introBrandingImageText" value="XYZ Company"/> </product>
- "introTitle - the value of the property will be used at the top of the root page (assuming that the current presentation theme elected to show the root page title)"
However, again, here the issue is that we are using Triquetrum.product and not plugin.xml
Bioclipse
Bioclipse has the string "Welcome to Bioclipse 2" in the Welcome home page.
In the Mac Bioclipse app, that string comes from Bioclipse.app/configuration/org.eclipse.osgi/67/0/.cp/plugin.xml:
<extension id="product" point="org.eclipse.core.runtime.products"> <product name="Bioclipse" description="The Bioclipse workbench for life science" application="net.bioclipse.ui.application"> ... <property name="introTitle" value="Welcome to Bioclipse 2"/> ... </product> </extension>
That plugin.xml is found at https://github.com/bioclipse/bioclipse.core/blob/master/plugins/net.bioclipse.ui/plugin.xml
<extension id="product" point="org.eclipse.core.runtime.products"> <product name="Bioclipse" description="The Bioclipse workbench for life science" application="net.bioclipse.ui.application"> ... <property name="introTitle" value="Welcome to Bioclipse 2"/> ... </product> </extension>
Faking modifying the Welcome Root Pane
Ideally, we would like to change the root page of the Welcome system from "Welcome to Eclipse" to "Welcome to Triquetrum". It appears that that it is possible to use the universal intro because the universal intro is meant to add to the Welcome pages, not replace the Welcome page.
We should use the universal intro because it means that Triquetrum could be more easily reused within another product.
An alternative would be to add to the root page of the welcome window. This does not seem to be possible. org.eclipse.triquetrum.workflow.editor/plugin.xml contains the code that adds text to the overview window. The actual text is in org.eclipse.triquetrum.workflow.editor/intro/overview.xml. Changing overview/@
to root/@
does not modify the root pane.
Bioclipse is using the universal intro, but they are also not using a .product file, which means that they can set the introTitle property. In Triquetrum, setting the introTitle property within Triquetrum.product seems to have no effect.
One idea is to edit org.eclipse.triquetrum.workflow.editor/plugin_customization.ini
:
org.eclipse.ui.intro/INTRO_START_PAGE=overview
but that does not seem to work.
- Searching for
site:eclipse.org universal intro root
is useful:- Regarding Extending the Universal Intro (Eclipse Forum)