Class ActivityCategoryPreferencePage

All Implemented Interfaces:
IExecutableExtension, IDialogPage, IMessageProvider, IPreferencePage, IWorkbenchPreferencePage

public final class ActivityCategoryPreferencePage extends PreferencePage implements IWorkbenchPreferencePage, IExecutableExtension
Activities preference page that primarily shows categories and can optionally show an advanced dialog that allows fine-tune adjustmenet of activities. This page may be used by product developers to provide basic ability to tweak the enabled activity set. You may provide certain strings to this class via method #2 of IExecutableExtension.
Since:
3.1
See Also:
  • Field Details

    • ACTIVITY_NAME

      public static final String ACTIVITY_NAME
      The name to use for the activities. Ie: "Capabilities".
      See Also:
    • ALLOW_ADVANCED

      public static final String ALLOW_ADVANCED
      The parameter to use if you want the page to show the allow button. Must be true or false.
      See Also:
    • CAPTION_MESSAGE

      public static final String CAPTION_MESSAGE
      The string to use for the message at the top of the preference page.
      See Also:
    • CATEGORY_NAME

      public static final String CATEGORY_NAME
      The name to use for the activity categories. Ie: "Roles".
      See Also:
    • ACTIVITY_PROMPT_BUTTON

      public static final String ACTIVITY_PROMPT_BUTTON
      The label to be used for the prompt button. Ie: "&Prompt when enabling capabilities".
      See Also:
    • ACTIVITY_PROMPT_BUTTON_TOOLTIP

      public static final String ACTIVITY_PROMPT_BUTTON_TOOLTIP
      The tooltip to be used for the prompt button. Ie: "Prompt when a feature is first used that requires enablement of capabilities".
      See Also:
    • workbench

      protected IWorkbench workbench
  • Constructor Details

    • ActivityCategoryPreferencePage

      public ActivityCategoryPreferencePage()
  • Method Details

    • createContents

      protected Control createContents(Composite parent)
      Description copied from class: PreferencePage
      Creates and returns the SWT control for the customized body of this preference page under the given parent composite.

      This framework method must be implemented by concrete subclasses. Any subclass returning a Composite object whose Layout has default margins (for example, a GridLayout) is expected to set the margins of this Layout to 0 pixels.

      Specified by:
      createContents in class PreferencePage
      Parameters:
      parent - the parent composite
      Returns:
      the new control
    • setDetails

      protected void setDetails(ICategory category)
      Parameters:
      category - the ICategory to get the details from
    • clearDetails

      protected void clearDetails()
      Clear the details area.
    • init

      public void init(IWorkbench workbench)
      Description copied from interface: IWorkbenchPreferencePage
      Initializes this preference page for the given workbench.

      This method is called automatically as the preference page is being created and initialized. Clients must not call this method.

      Specified by:
      init in interface IWorkbenchPreferencePage
      Parameters:
      workbench - the workbench
    • isLocked

      protected boolean isLocked(ICategory category)
      Return whether the category is locked.
      Parameters:
      category - the category to test
      Returns:
      whether the category is locked
    • performOk

      public boolean performOk()
      Description copied from interface: IPreferencePage
      Notifies that the OK button of this page's container has been pressed.
      Specified by:
      performOk in interface IPreferencePage
      Overrides:
      performOk in class PreferencePage
      Returns:
      false to abort the container's OK processing and true to allow the OK to happen
    • performDefaults

      protected void performDefaults()
      Description copied from class: PreferencePage
      Performs special processing when this page's Defaults button has been pressed.

      This is a framework hook method for subclasses to do special things when the Defaults button has been pressed. Subclasses may override, but should call super.performDefaults.

      Overrides:
      performDefaults in class PreferencePage
    • setInitializationData

      public void setInitializationData(IConfigurationElement config, String propertyName, Object data)
      Description copied from interface: IExecutableExtension
      This method is called by the implementation of the method IConfigurationElement.createExecutableExtension on a newly constructed extension, passing it its relevant configuration information. Most executable extensions only make use of the first two call arguments.

      Regular executable extensions specify their Java implementation class name as an attribute of the configuration element for the extension. For example

           <action run="com.example.BaseAction"/>
       

      In the above example, this method would be called with a reference to the <action> element (first argument), and "run" as the name of the attribute that defined this executable extension (second argument).

      The last parameter is for the specific use of extension adapters and is typically not used by regular executable extensions.

      There are two supported ways of associating additional adapter-specific data with the configuration in a way that is transparent to the extension point implementor:

      (1) by specifying adapter data as part of the implementation class attribute value. The Java class name can be followed by a ":" separator, followed by any adapter data in string form. For example, if the extension point specifies an attribute "run" to contain the name of the extension implementation, an adapter can be configured as

           <action run="com.example.ExternalAdapter:./cmds/util.exe -opt 3"/>
       

      (2) by converting the attribute used to specify the executable extension to a child element of the original configuration element, and specifying the adapter data in the form of xml markup. Using this form, the example above would become

           <action>
               <run class="com.xyz.ExternalAdapter">
                   <parameter name="exec" value="./cmds/util.exe"/>
                   <parameter name="opt"  value="3"/>
               </run>
           </action>
       

      Form (2) will typically only be used for extension points that anticipate the majority of extensions configured into it will in fact be in the form of adapters.

      In either case, the specified adapter class is instantiated using its 0-argument public constructor. The adapter data is passed as the last argument of this method. The data argument is defined as Object. It can have the following values:

      • null, if no adapter data was supplied
      • in case (1), the initialization data string is passed as a String
      • in case (2), the initialization data is passed as a Hashtable containing the actual parameter names and values (both Strings)
      Specified by:
      setInitializationData in interface IExecutableExtension
      Parameters:
      config - the configuration element used to trigger this execution. It can be queried by the executable extension for specific configuration properties
      propertyName - the name of an attribute of the configuration element used on the createExecutableExtension(String) call. This argument can be used in the cases where a single configuration element is used to define multiple executable extensions.
      data - adapter data in the form of a String, a Hashtable, or null.
      See Also:
    • dispose

      public void dispose()
      Description copied from class: DialogPage
      The DialogPage implementation of this IDialogPage method disposes of the page image if it has one. Subclasses may extend.
      Specified by:
      dispose in interface IDialogPage
      Overrides:
      dispose in class DialogPage