SWT/Plan3.7

From Eclipsepedia

< SWT
Revision as of 13:08, 23 February 2012 by Carolyn MacLeod.ca.ibm.com (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Please note: The SWT 3.7 Plan is now complete. This page is no longer being updated, but will be kept for future planning.

Contents

Introduction

This page contains blue sky thinking about the kind of things we would like to see in SWT's immediate future. This is a place to collect ideas - it does not represent a commitment to implement the ideas.

Theme Drawing API

  • Provide an API to draw operating system themed controls and parts of controls.
    • Partially implemented already. May need to expand or implement on remaining platforms.

Native Controls

  • Add more native controls to SWT such as Header and HeaderItem
  • Native tool bar support for the Mac
  • Single MenuBar per Display support for Mac
  • 'Source list' mode for Trees in Cocoa (like iTunes or Mail.app)
  • Investigate custom draw for controls other than tables and trees (Menu background)
  • Gesture/touch event support for Windows 7 and Mac OS X
  • Use native DateTime dropdown control on Cocoa
  • Animation, transformation and effects API (something like CoreAnimation or Windows Animation Manager)
  • Button with SWT.WRAP

Graphics

  • Direct2D
  • Radial Gradients

Images

  • Add new API to give more control to the way images are saved, i.e. jpeg quality, dpi, etc.
  • Add new API to allow storing an image in parts (tiles) for faster rendering of very large images.
  • Support writing multi-page TIFF to allow tiled images to be stored as tiles.
  • Ensure that any image can be saved in any format on any platform.

Printing

  • Add new API to handle more printer options.

Performance

  • Investigate performance improvements on all platforms.
  • Investigate lightweight monitoring and tracing tool [1] to find slow code and problem areas in big applications.

E4

  • Investigate SWT in a Browser
    • investigate SproutCore as a platform
    • investigate and/or implement a JCL (Java Class Library) for the browser
    • implement API to resolve desktop and web (Display.run(), async image loading ...)
    • implement API to animate layouts
    • implement API for async dialogs
  • CSS engine improvments

Qt

Browser

  • Webkit for Windows

Ports

  • GTK for AIX and HPUX

Accessibility

  • Text editable interface
  • Complete new accessiblity API

BIDI

  • Change widget orientation on the fly
  • Non-Gregorian calendar support