Understanding the eclipseui.xml file

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

To remove an item from the interface, you add the item's ID to the eclipseui.xml file. For example, to remove the Edit menu from the Eclipse main menu when the DITA perspective is open, you add the following line:
<perspective id="com.ixiasoft.dita.eclipse.gui.perspective.DitaPerspective">
  <section id="menu">
      <removeditem id="edit"/>
   </section>
</perspective>
The eclipseui.xml file has the following structure:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE eclipseui PUBLIC "-//ixiasoft.com//cms//config//eclipseui" "eclipseui.dtd">
<eclipseui>
   <perspective id="perspective_id">
      <section id="section_id">
        ...items to remove...
         <removeditem id="item_id"/> 
          ...or items to close/minimize...
         <item id="item_id" state="minimized"/> 
      </section>
   </perspective>
</eclipseui>
There are three main elements in this file:
  • <perspective>
  • <section>
  • <removeditem> or <item>

Perspectives

The interface is configurable by perspective, so the first sub-element is the <perspective> element, as shown above. There are two types of perspectives:
  • The startup perspective: This is not an Eclipse perspective per se. It's the configuration that is executed when the CCMS Desktop starts up. This configuration lets you customize the File > Import and Window > Preferences menus as well as the perspectives that are shown to users when they start the CCMS Desktop.

    The ID of the startup perspective is ixiasoft.eclipse.startup.

  • Regular perspectives such as the DITA perspective, the Information Architect perspective, the RelTable Editing perspective, etc.: For each perspective, you can customize the menus, submenus, oXygen pop ups and action bar, panels, views, buttons, and so on.
    The IDs for the main DITA perspectives are:
    • DITA: com.ixiasoft.dita.eclipse.gui.perspective.DitaPerspective
    • Information Architect: com.ixiasoft.dita.eclipse.gui.perspective.LeadPerspective
    When specifying perspective names, you can use wildcards to specify multiple perspectives in a single line. For example, "com.ixiasoft.dita.eclipse.gui.perspective.*" will match all the IXIASOFT CCMS perspectives.

    You can use the trace log to identify the ID of the other perspectives.

Sections

Each perspective has sections that can be customized.

The startup perspective has 3 specific sections:

Table 1. Sections of the startup perspective
Section ID Description
import Removes items from the File > Import menu.
preferences Removes items from the Window > Preferences menu.
perspective Configures the perspectives that are closed when the CCMS Desktop starts. For example, the Java perspective is opened by default when customers run the CCMS Desktop for the first time. By customizing the perspective section you can now close the Java perspective when the CCMS Desktop first starts.

There are 12 sections supported in a regular perspective:

Table 2. Sections of the regular perspectives
Section ID Description
menu Removes items from the main Eclipse menu bar (for example, the Project menu).
submenu Removes options (submenus) from the main Eclipse menus (for example, the Print option from the File menu).
oxygenpopup Removes options from the oXygen right-click menu (for example, Edit Attributes).
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 (for example, Validate).
panels Removes panels from the Search view (for example, the Advanced Search panel).
views Closes or minimizes views (for example, the DITA Map view).
com.ixiasoft.dita. eclipse.gui.views. map.MapView Removes buttons from the Map View (for example, the Set Conditions button).
com.ixiasoft.dita. eclipse.gui.views. sidebar.SearchGui MiniBar Removes the menu bar (i.e., the 4 buttons) from the Cycles, Document Types, Limit to, and Languages panels in the Search view.
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.
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.
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.
toolbar Removes buttons from the toolbar at the top of the CCMS Desktop.

Items to remove, close, or minimize

There are two different elements used to customize each interface items:
  • <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.
Table 3. Section elements and attributes for the Startup perspective
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 4. 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"/>