Develop > Presentation layer > Customize IBM Sales Center > Eclipse and plug-ins in the IBM Sales Center client
IBM Sales Center user interface framework
The following section explains the impact of Eclipse and IBM Sales Center on the user interface framework.
What Eclipse provides for User Interface elements
The workbench in Eclipse is a collection of views and editors that are arranged in a particular layout. Each window contains a menu bar, a toolbar, a shortcut bar, and one or more perspectives. A perspective is a container for a set of views and content editors. The views exist wholly within the perspective and are not shared, but any opened content editors are shared across perspectives. If two or more perspectives have the same view opened, they share the same instance of the view although its layout may differ in the perspectives. For perspectives in different workbench windows, neither editors nor views are shared. Runtime composition of perspectives views and editors in IBM Sales Center is same as that of Eclipse.
What IBM Sales Center provides for User Interface elements
IBM Sales Center uses all UI guidelines that are unique and specific to the Eclipse platform. In addition, Sales Center provides a set of plug-in extension points, other supporting classes, and a programming model that you can use to create, customize, and extend the contents of editors and dialogs. This user interface framework ensures that the customization is efficient and that the customization will not be overwritten by enhancements in the base code. The IBM Sales Center framework provides a common way to create user interface elements that avoids the duplication of code. The Sales Center user interface framework also ensures conformance to user interface standards.
As a plug-in developer, you can contribute new views, editors, wizards, menus, and tool items to the platform with the help of Eclipse extension points. These contributions are defined declaratively (by using XML files). After they are registered, the contributions integrate seamlessly with other components in the platform. The Eclipse platform does not define SWT controls declaratively. The Sales Center user interface framework provides extension points for declaratively creating SWT controls and layouts that help you to customize.
Choosing the user interface customization method
- For extending existing user interface assets:
- Code using the Sales Center user interface framework
- Extensions mechanism using XML tags
- Redefine using the system configurator in the config.ini file
- For new user interface elements you can either use the Eclipse framework or the Sales Center user interface framework. Choose one approach or the other, but do not mix approaches. Note that the Sales Center user interface framework only supports the following SWT (Standard Widget Toolkit) controls.
- checkBox
- combo
- composite
- expandableComposite
- group
- label
- list
- pushButton
- radioButton
- readOnlyText
- requiredLabel
- scrolledComposite
- separator
- tabFolder
- table
- tableList
- tableTree
- text
- textarea
Comparison chart
The following table lists the support provided by Eclipse, WebSphere Everyplace Deployment, and the Sales Center UI framework to create UI elements. In the third column, the specific extensions or helper classes are listed wherever applicable.
UI Objects Eclipse framework or WebSphere Everyplace Deployment Sales Center UI framework Perspectives Eclipse extension point Application WED extension point Preference Pages Eclipse extension point Activities Eclipse extension point Roles N/A Sales Center extension point Editor Eclipse extension point Sales Center provides helper classes for multi-page and single-page editors that can be time-consuming to implement using the Eclipse user interface. For example: MultipageEditor
See the Editor API and Eclipse UI part API for more details.
Views Eclipse extension point Dialogs Eclipse extension point Sales Center provides helper classes for dialogs, which is easier to implement than by doing so directly with JFace, using the Eclipse method. These classes help in developing UI features and for providing support to Sales Center UI Framework. For example: ConfiguredTitleAreaDialog
See the dialog API and JFace API for more details
Editor Pages N/A Sales Center extension point Product Configuration Eclipse extension point SWT Objects N/A Sales Center extension point Layout N/A Sales Center extension point
Summary
- Sales Center UI framework provides support for the SWT controls mentioned above.
- Maintainability and customization is easy:
- You can remove or add SWT controls using XML tags.
- You can add or change the behavior of SWTs control.
- Layouts can be defined and managed in a declarative way.
- There is a reduction of code duplication and development effort.
- There is an initial leaning curve required to understand the framework.