Difference between revisions of "Platform UI/33 Features"

From Eclipsepedia

Jump to: navigation, search
Line 80: Line 80:
 
   <li> We are going to handle errors in a non-intrusive way</li>
 
   <li> We are going to handle errors in a non-intrusive way</li>
 
</ul>
 
</ul>
<p><h>SWT System Tray</h2></p>
+
<p><h2>SWT System Tray</h2></p>
 
[[Image:tray.jpg]]
 
[[Image:tray.jpg]]
 
<ul>
 
<ul>

Revision as of 10:32, 25 April 2007

Contents

3.3 UI Features Overview

 

Vista

Vistashot.jpg

  • 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

OwnerDraw

Ownerdraw.jpg

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

CellEditors

  • 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).

Databindings

  • 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

Menus

  • 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

Customsplash.jpg

  • 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

ErrorHandling

  • 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

Tray.jpg

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