Package org.eclipse.ui.intro.config
Class IntroConfigurer
- java.lang.Object
-
- org.eclipse.ui.intro.config.IntroConfigurer
-
public abstract class IntroConfigurer extends Object
Classes that extend this abstract class are used to configureCustomizableIntroPart
. Since it is possible for multiple products to use the same intro configuration, this class allows them to customize some aspects of the intro content so that it looks different for different products even though they all share the same intro implementation and content.- Since:
- 3.2
-
-
Field Summary
Fields Modifier and Type Field Description protected IIntroSite
site
static String
TB_ADDITIONS
The identifier of the named group where the configurer can contribute local tool bar actions.protected Map<String,String>
themeProperties
-
Constructor Summary
Constructors Constructor Description IntroConfigurer()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
bind(org.eclipse.ui.internal.intro.impl.model.IntroModelRoot model)
Internal method to associate the corresponding intro configuration model.abstract IntroElement[]
getGroupChildren(String pageId, String groupId)
Returns the children of computed groups.IntroElement[]
getLaunchBarShortcuts()
Returns an array of elements that will be used to build launch bar short cut links.String
getMixinStyle(String pageId, String extensionId)
Returns the style value that will be mixed in with the original style of the extension.protected String
getThemeProperty(String name)
Returns the value of the theme property with a given name.abstract String
getVariable(String variableName)
Returns the value of the variable defined by the configurer.void
init(IIntroSite site, Map<String,String> themeProperties)
Provides the opportunity for the configurer to contribute to the action bars and to fetch presentation theme properties.protected boolean
isStartPage(String pageId)
Return true ifpageId
is the configured start page.abstract String
resolvePath(String extensionId, String path)
Resolves an incomplete path in the form "page_id/@" where page_id represents the identifier of the target page.
-
-
-
Field Detail
-
TB_ADDITIONS
public static final String TB_ADDITIONS
The identifier of the named group where the configurer can contribute local tool bar actions.- See Also:
init(IIntroSite, Map)
, Constant Field Values
-
site
protected IIntroSite site
-
-
Method Detail
-
init
public void init(IIntroSite site, Map<String,String> themeProperties)
Provides the opportunity for the configurer to contribute to the action bars and to fetch presentation theme properties.- Parameters:
site
- the intro part's sitethemeProperties
- properties of the current theme that can be used by the configurer, ornull
if no theme is currently active or the active theme has no properties.
-
bind
public final void bind(org.eclipse.ui.internal.intro.impl.model.IntroModelRoot model)
Internal method to associate the corresponding intro configuration model. May be called independently ofinit(IIntroSite, Map)
.- Restriction:
-
getThemeProperty
protected String getThemeProperty(String name)
Returns the value of the theme property with a given name.- Parameters:
name
- the theme property name- Returns:
- the value of the property or
null
if property is not found, the theme does not have properties or no theme is currently active.
-
getVariable
public abstract String getVariable(String variableName)
Returns the value of the variable defined by the configurer. This variable can appear in XML content files in attribute names and values of elements. Whenever $variable$ is encountered in the content, it is evaluated using this class by passing 'variable' to this method and substituting the result in the content.- Parameters:
variableName
- the name of the substitution variable- Returns:
- the value to substitute in place of a variable or
null
if the variable cannot be resolved.
-
getGroupChildren
public abstract IntroElement[] getGroupChildren(String pageId, String groupId)
Returns the children of computed groups. Groups marked as computed will be completed at run time when the group is asked to provide children.- Parameters:
pageId
- the identifier of the page in which this group appearsgroupId
- the identifier of the group group within the page- Returns:
- an array of intro elements for this group. Each intro element should contain only legal elements and attributes according to the intro content schema. Returns an empty array for no children.
-
getLaunchBarShortcuts
public IntroElement[] getLaunchBarShortcuts()
Returns an array of elements that will be used to build launch bar short cut links. Override this method if the intro launch bar has been marked as computed.- Returns:
- an array of elements that will be used to dynamically build shortcut links.
-
resolvePath
public abstract String resolvePath(String extensionId, String path)
Resolves an incomplete path in the form "page_id/@" where page_id represents the identifier of the target page. The configurator should complete the path according to its internal resolution mechanism. The final path must point at an anchor in the referenced page.- Parameters:
extensionId
- the id specified for the config extensionpath
- the incomplete path specified for the config extension- Returns:
- the complete path that points at the anchor element in the referenced page, or
null
if the path cannot be resolved or the extension should be hidden.
-
getMixinStyle
public String getMixinStyle(String pageId, String extensionId)
Returns the style value that will be mixed in with the original style of the extension. Themes can use this feature to render certain extensions differently.- Parameters:
pageId
- the identifier of the target page that this extension is contributed intoextensionId
- the identifier of the extension to provide the mixin style for.- Returns:
- the style to add to the original extension style or
null
if no mixin style is found for this extension.
-
isStartPage
protected boolean isStartPage(String pageId)
Return true ifpageId
is the configured start page.- Parameters:
pageId
- the page identifier- Since:
- 3.5
-
-