Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: for the plan.

Jump to: navigation, search

Platform UI/33 Features

3.3 UI Features Overview




  • Supported in 3.2.2 and M5
  • Working on it full time now

New colours

  • Did a refresh in 3.3
  • Do more blending of the selection colour
  • All text is black where possible
  • Reduced palette theme enhanced to deal with accessibility issues

Column Based Viewers

  • Tree and Table viewers support this
  • Removed the need for keeping track of indices all of the time
  • Allows you to update based on the cell
  • Opens up label providers
  • Had 6 interfaces to choose from in 3.2 – don’t want to add more
  • Still support the old ones
  • No broken API



  • Can now treat a cell like a GC
  • Required a viewer that can look at a cell


  • Simplifies cell editing
  • More fine grained than the CellEditor
  • Can implement it on a per column basis
  • A CellEditor applied to the entire Viewer
  • Use EditingSupport instead of ICellModifier (new in 3.3).


  • API no longer provisional in 3.3
  • Listeners are an overly complex way for widgets to interact
  • Databindings are a way to connect widgets and model objects
  • Reduces the amount of code required to synchronize data from the widget to the model and vice versa
  • Also handles conversion of data types and validation


  • Actions were limited as to how you could add them
  • The additions path was the only place to add an action
  • Could not place a new entry anywhere you wanted
  • Menus define the commands that will show up in them
  • Menus allow you to do much more powerful enablement
  • Everything is declarative so you can access the location you want to add your entry to

Custom Splash


  • Before 3.3 splash was a custom SWT application and not extensible except for the image
  • Now we have org.eclipse.ui.splashhandler
  • You are given a Shell to fill in whatever you like
  • Your custom splash only appears when it is bound to your product id
  • Remember there is no workbench yet so stay in SWT code


  • Constant error dialogs are annoying if it is an unexpected error that occurs frequently
  • To handle more eloquently use StatusManager in org.eclipse.ui.workbench
  • You can implement your own status handler using the org.eclipse.ui.statushandlers extension point
  • We are going to handle errors in a non-intrusive way

SWT System Tray


  • Can now link into the OS system tray
  • We set our own tray icon in the advisor



  • Min/max now uses the trim area to move views to the trim area
  • Stacks are now moved as groups

Back to the top