Understanding the eclipseui.xml file

The CCMS Desktop user interface (UI) is customized in the eclipseui.xml configuration file.

CCMS Desktop runs within the Eclipse platform, which is a free, open-source software program used to create, test, and debug all kinds of computer applications. This means that it includes a lot of options that have nothing to do with the CCMS. To create a cleaner, clearer user interface for CCMS Desktop users, many of these unneeded options are hidden by default using the eclipseui.xml configuration file.

The eclipseui.xml file is a list of UI elements that are hidden in CCMS Desktop. The assumption is that most UI elements should be visible, so it is easier to list the ones to hide than to list the ones to show.

The file is organized into two <perspective> elements, described below.

perspective id="ixiasoft.eclipse.startup"

This section, despite its name, does not apply to a specific Eclipse perspective. It is a global configuration that is executed when CCMS Desktop starts up.

This "perspective" has three sections:

  • <section id="import">: This section lets you specify which options are hidden in the File > Import menu.
  • <section id="preferences">: This section lets you specify which options are hidden in the Window > Preferences menu.
  • <section id="perspective">: This section lets you specify which perspectives are initially closed when users start CCMS Desktop.

For example, using the file's defaults in the import section—which hide many options—users see the following when they select File > Import:

These are the only import wizards that apply to CCMS Desktop.

If you commented out all the individual <removeditem> elements in this section, users would see this instead:

This is a long, confusing list of additional options that CCMS Desktop users do not need.

perspective id="com.ixiasoft.dita.eclipse.gui.perspective.*"

The wildcard (*) in the ID here means that it matches any IXIA CCMS perspectives. Therefore this general perspective lets you specify which UI options are hidden from all Eclipse perspectives.

This general perspective includes the following sections:

Section ID Description Example item for removal
menu Removes items from the main menu bar The Project menu item
submenu Removes options or submenus from the main menus The Print option from the File menu
oxygenpopup Removes options from the Oxygen right-click menu The Edit Attributes option
oxygenactionbar Removes options/buttons from the XML main menu, the Oxygen toolbar on the top-level toolbar, and the Oxygen toolbar in the Oxygen editor The Validate option
panels Removes panels from the Search view The Advanced Search panel
views Closes or minimizes views The DITA Map view
com.ixiasoft.dita. eclipse.gui.views. map.MapView Removes buttons from the Map view The Set Conditions button
com.ixiasoft.dita. eclipse.gui.views. sidebar.SearchGui MiniBar Removes the menu bar from the Cycles, Document Types, Limit to, and Languages panels in the Search view N/A
com.ixiasoft.dita. eclipse.gui.views. sidebar.sidebar Removes the New Query, Save Query, Save XML Query, and Show/Hide Panels buttons from the Search view N/A
com.ixiasoft.dita. eclipse.gui.views. sidebar.SideBarResults Removes the Clear Results List, Export Results List, Search and Replace, Manage Groupings, and Turn On/Off Thumbnail Display buttons from the Search Results view N;/A
com.ixiasoft.dita. eclipse.gui.views. job.JobView Removes the Refresh Todo List, Export Todo List, Show Statistics, Select Groupings, and Turn On/Off Thumbnail Display buttons from the Todo List view N/A
toolbar Removes buttons from the top toolbar N/A

Additional specific perspectives

Following the example of the general perspective, you can add specific perspectives to customize. For example, you might want to configure the DITA perspective. Its ID is com.ixiasoft.dita.eclipse.gui.perspective.DitaPerspective, so you would create a new perspective element with that ID:

<perspective id="com.ixiasoft.dita.eclipse.gui.perspective.DitaPerspective">

and add the UI elements you want to remove.

If you have hidden a UI element in the general perspective, there is no way to "unhide" it for a specific perspective. If you only want to hide UI elements from specific perspectives, you must add the <removeditem> elements to those specific perspectives, not to the general perspective.

An additional specific perspective you might want to customize is the Information Architect perspective (com.ixiasoft.dita.eclipse.gui.perspective.LeadPerspective).

You can use the trace log to identify the ID of the any perspectives you want to customize.

Items to remove, close, or minimize

There are two different elements used to customize each interface item:
  • <removeditem>: Applies to items that can either be removed or displayed (such as a menu option).
  • <item>: Applies to items that can be removed, displayed, or minimized (such as views).
The element and attributes that must be specified depend on the section ID. For example, to remove the File menu completely, you only need to specify the menu ID, as shown below:
<removeditem id="file"/>
But to remove an option from the File menu (for example, Print), you need to specify the ID of the option and the ID of its parent menu, for example:
<removeditem id="print" menupath="file"/>
The following tables summarize the elements and attributes required per section for each type of perspective.
Note: The IDs specified in italics in the tables are obtained from the trace log.
Section ID Element/Attributes required
import
  • For top menus: <removeditem id="item_id"/>
  • For menu options or submenus: <removeditem id="item_id" menupath="parent_menu_id"/>
preferences <removeditem id="item_id"/>
perspective <item id="item_id" state="closed"/>
Table 1. Section elements and attributes for the Regular perspectives
Section ID Element/Attributes required
menu <removeditem id="item_id"/>
submenu <removeditem id="item_id" menupath="parent_menu_id"/>
oxygenpopup <removeditem id="item_id" type="type_id"/>

or

<removeditem id="item_id" type="type_id" menupath="parent_menu_id"/>

oxygenactionbar <removeditem id="item_id" type="type"/>
Where type is one of the following:
  • menu
  • toolbar
  • button
panels <removeditem id="item_id"/>
views <item id="item_id" state="state"/>Where state is one of the following:
  • closed
  • minimized
  • open
com.ixiasoft.dita. eclipse.gui.views. map.MapView <removeditem id="item_id" type="org.eclipse.swt.widgets.Label"/>
com.ixiasoft.dita. eclipse.gui.views. sidebar. SearchGuiMiniBar <removeditem id="item_id" type="org.eclipse.swt.widgets.Button"/>
com.ixiasoft.dita. eclipse.gui.views. sidebar.SideBar <removeditem id="item_id" type="org.eclipse.swt.widgets.Button"/>
com.ixiasoft.dita. eclipse.gui.views. sidebar. SideBarResults <removeditem id="item_id" type="org.eclipse.swt.widgets.Button"/>
com.ixiasoft.dita. eclipse.gui.views. job.JobView <removeditem id="item_id" type="org.eclipse.swt.widgets.Button"/>
toolbar <item id="item_id"/>