# Activity Support

###### Identifier:

org.eclipse.help.base.activitySupport

###### Since:

3.1

###### Description:

This extension point is used by product plug-ins to configure the behaviour of the Help system when activities are used. It provides for configuring the following aspects:

- By default, table of contents view hides topics that belong to disabled activities. A local tool bar button allows this filter to be turned off. A subsequent message box text can be plugged in using this extension point.
- When activity filter is turned off, topics that belong to disabled activities will have a message injected at the top warning them about the possibility that they may not see the user interface artifact mentioned in the topic in the running UI. This message can be plugged in.
- Optionally, if the message contains a link to take the users to the UI component that provides for enabling activites, a class can be plugged in to do the work.

This extension point is experimental and is likely to change in the future releases as the activity support evolves.

###### Configuration Markup:

<!ELEMENT extension (support+)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED>

<!ELEMENT support (localScopeCheckbox? , documentMessage , showAllMessage)>

<!ATTLIST support

productId CDATA #REQUIRED>

- productId - a product identifier that this support should be associated with. When multiple `support` elements are found, the one whose `productId` value matches the active product id will be chosen.

<!ELEMENT showAllMessage (#PCDATA)>

a plain text message that will be shown in the dialog when activity filtering is turned off. The intent of the message is to warn that without the filter some documents may be referring to user interface elements that are not visible.

The localScopeCheckbox element is deprecated

<!ELEMENT localScopeCheckbox (#PCDATA)>

a label of the checkbox in the local search scope preference page. When the checkbox is selected, search hits in documents that belong to disabled activites will be included in the search results. As of 3.6, this element is no longer used.

<!ELEMENT documentMessage EMPTY>

<!ATTLIST documentMessage

class CDATA #IMPLIED

pluginId CDATA #REQUIRED>

an HTML snippet that will be injected at the top of the help topic that belongs to the disabled activity. The intent of the message is to notify the user that the topic may contain references to the UI elements that are not visible. Since the message text is inside an XML file, HTML tags must be escaped using standard XML entities for special characters.

The message may contain a hyperlink that takes the user to the activity editor that provides for changing activity enablement state. Attribute `class` must be used in this case.

- class - a fully qualified name of a Java class that implements `org.eclipse.help.ILiveHelpAction`. This class will be used when the document message contains a hyperlink or a button whose `href` value contains the substitution string ACTIVITY_EDITOR. The class should be implemented in such a way as to programmatically invoke and show a UI component (e.g. a preference page) that the product offers for changing the activity enablement state.
- pluginId - an identifier of the plug-in in which the activity editor class resides.

###### Examples:

The following is a sample usage of the activity support extension point:

     <extension point="org.eclipse.help.base.activitySupport">
      <support productId="com.example.xyzProduct">
         <showAllMessage>
            This actions will reveal all topics in the table of contents.
         </showAllMessage>
         <documentMessage class="com.example.xyz.OpenRolePreference">
            This topic belongs to the role that is currently disabled.
            &lt;p&gt;
            To enable the role, open &lt;a href="ACTIVITY_EDITOR"&gt;Role Preference Page.&lt;/a&gt;
         </documentMessage>
      </support>
     </extension>

###### API Information:

Attribute `class` of the element `documentMessage` must implement `org.eclipse.help.ILiveHelpAction` interface.

###### Supplied Implementation:

Eclipse SDK provides the default activity support that uses the term 'capability' and and opens the Capabilities preference page from the hyperlink in disabled topics. When overriding, make sure that the changes and the terminology match those in the platform UI.

Copyright (c) 2005, 2013 IBM Corporation and others.
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-v20.html/ SPDX-License-Identifier: EPL-2.0