This commit was manufactured by cvs2svn to create tag 'v3107'.

Sprout from master 2004-09-27 20:51:22 UTC Christophe Cornu <ccornu> 'v3107'
Cherrypick from master 2004-09-24 15:53:20 UTC Steve Northover <steve> '*** empty log message ***':
    bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java
    bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/List.java
Cherrypick from master 2004-09-28 18:20:38 UTC Silenio Quarti <silenio> '75168':
    bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/widgets/Synchronizer.java
Delete:
    bundles/org.eclipse.swt.opengl/.classpath_gtk
    bundles/org.eclipse.swt.opengl/.classpath_motif
    bundles/org.eclipse.swt.opengl/.classpath_win32
    bundles/org.eclipse.swt.opengl/.cvsignore
    bundles/org.eclipse.swt.opengl/.project
    bundles/org.eclipse.swt.opengl/META-INF/MANIFEST.MF
    bundles/org.eclipse.swt.opengl/about.html
    bundles/org.eclipse.swt.opengl/common/library/gl.c
    bundles/org.eclipse.swt.opengl/common/library/glu.c
    bundles/org.eclipse.swt.opengl/common/library/swt.h
    bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GL.java
    bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLU.java
    bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLYPHMETRICSFLOAT.java
    bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/ImageDataUtil.java
    bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/Library.java
    bundles/org.eclipse.swt.opengl/gtk/library/build.sh
    bundles/org.eclipse.swt.opengl/gtk/library/glx.c
    bundles/org.eclipse.swt.opengl/gtk/library/make_gtk.mak
    bundles/org.eclipse.swt.opengl/gtk/library/structs.c
    bundles/org.eclipse.swt.opengl/gtk/library/structs.h
    bundles/org.eclipse.swt.opengl/gtk/library/xgtk.c
    bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/GLContext.java
    bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGL.java
    bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGTK.java
    bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XVisualInfo.java
    bundles/org.eclipse.swt.opengl/motif/library/build.sh
    bundles/org.eclipse.swt.opengl/motif/library/glx.c
    bundles/org.eclipse.swt.opengl/motif/library/make_aix.mak
    bundles/org.eclipse.swt.opengl/motif/library/make_hpux.mak
    bundles/org.eclipse.swt.opengl/motif/library/make_linux.mak
    bundles/org.eclipse.swt.opengl/motif/library/make_solaris.mak
    bundles/org.eclipse.swt.opengl/motif/library/structs.c
    bundles/org.eclipse.swt.opengl/motif/library/structs.h
    bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/GLContext.java
    bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XGL.java
    bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XVisualInfo.java
    bundles/org.eclipse.swt.opengl/plugin.properties
    bundles/org.eclipse.swt.opengl/plugin.xml
    bundles/org.eclipse.swt.opengl/win32/library/build.bat
    bundles/org.eclipse.swt.opengl/win32/library/glw.c
    bundles/org.eclipse.swt.opengl/win32/library/make_win32.mak
    bundles/org.eclipse.swt.opengl/win32/library/structs.c
    bundles/org.eclipse.swt.opengl/win32/library/structs.h
    bundles/org.eclipse.swt.opengl/win32/library/swt.rc
    bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/GLContext.java
    bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/LAYERPLANEDESCRIPTOR.java
    bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/PIXELFORMATDESCRIPTOR.java
    bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/POINTFLOAT.java
    bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/WGL.java
    examples/org.eclipse.swt.examples.browser.demos/.classpath
    examples/org.eclipse.swt.examples.browser.demos/.project
    examples/org.eclipse.swt.examples.browser.demos/about.html
    examples/org.eclipse.swt.examples.browser.demos/build.properties
    examples/org.eclipse.swt.examples.browser.demos/css1/back1.jpg
    examples/org.eclipse.swt.examples.browser.demos/css1/back2.jpg
    examples/org.eclipse.swt.examples.browser.demos/css1/black.gif
    examples/org.eclipse.swt.examples.browser.demos/css1/board1.jpg
    examples/org.eclipse.swt.examples.browser.demos/css1/empty.gif
    examples/org.eclipse.swt.examples.browser.demos/css1/line1.gif
    examples/org.eclipse.swt.examples.browser.demos/css1/style.css
    examples/org.eclipse.swt.examples.browser.demos/css1/wall.gif
    examples/org.eclipse.swt.examples.browser.demos/css1/welcome.html
    examples/org.eclipse.swt.examples.browser.demos/css1/white.gif
    examples/org.eclipse.swt.examples.browser.demos/css2/back2.png
    examples/org.eclipse.swt.examples.browser.demos/css2/black.png
    examples/org.eclipse.swt.examples.browser.demos/css2/empty.png
    examples/org.eclipse.swt.examples.browser.demos/css2/line1.gif
    examples/org.eclipse.swt.examples.browser.demos/css2/style.css
    examples/org.eclipse.swt.examples.browser.demos/css2/wall.png
    examples/org.eclipse.swt.examples.browser.demos/css2/welcome.html
    examples/org.eclipse.swt.examples.browser.demos/css2/white.png
    examples/org.eclipse.swt.examples.browser.demos/doc-html/hglegal.htm
    examples/org.eclipse.swt.examples.browser.demos/doc-html/ngibmcpy.gif
    examples/org.eclipse.swt.examples.browser.demos/doc-html/swt_browser_ex.html
    examples/org.eclipse.swt.examples.browser.demos/icons/sample.gif
    examples/org.eclipse.swt.examples.browser.demos/plugin.properties
    examples/org.eclipse.swt.examples.browser.demos/plugin.xml
    examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/BrowserDemoPlugin.java
    examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/Pawns.java
    examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/views/BrowserDemoView.java
    examples/org.eclipse.swt.examples.browser/.classpath
    examples/org.eclipse.swt.examples.browser/.cvsignore
    examples/org.eclipse.swt.examples.browser/.project
    examples/org.eclipse.swt.examples.browser/about.html
    examples/org.eclipse.swt.examples.browser/build.properties
    examples/org.eclipse.swt.examples.browser/doc-html/hglegal.htm
    examples/org.eclipse.swt.examples.browser/doc-html/ngibmcpy.gif
    examples/org.eclipse.swt.examples.browser/doc-html/swt_browser_ex.html
    examples/org.eclipse.swt.examples.browser/icons/browser_example.gif
    examples/org.eclipse.swt.examples.browser/plugin.properties
    examples/org.eclipse.swt.examples.browser/plugin.xml
    examples/org.eclipse.swt.examples.browser/src/import.properties
    examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserPlugin.java
    examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserView.java
    examples/org.eclipse.swt.examples.controls/.classpath
    examples/org.eclipse.swt.examples.controls/.cvsignore
    examples/org.eclipse.swt.examples.controls/.project
    examples/org.eclipse.swt.examples.controls/about.html
    examples/org.eclipse.swt.examples.controls/build.properties
    examples/org.eclipse.swt.examples.controls/doc-html/hglegal.htm
    examples/org.eclipse.swt.examples.controls/doc-html/ngibmcpy.gif
    examples/org.eclipse.swt.examples.controls/doc-html/swt_controls_ex.html
    examples/org.eclipse.swt.examples.controls/doc-html/swt_customcontrols_ex.html
    examples/org.eclipse.swt.examples.controls/icons/controls_example.gif
    examples/org.eclipse.swt.examples.controls/plugin.properties
    examples/org.eclipse.swt.examples.controls/plugin.xml
    examples/org.eclipse.swt.examples.controls/src/import.properties
    examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlPlugin.java
    examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlView.java
    examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/CustomControlView.java
    examples/org.eclipse.swt.examples.launcher/.classpath
    examples/org.eclipse.swt.examples.launcher/.cvsignore
    examples/org.eclipse.swt.examples.launcher/.project
    examples/org.eclipse.swt.examples.launcher/about.html
    examples/org.eclipse.swt.examples.launcher/build.properties
    examples/org.eclipse.swt.examples.launcher/doc-html/hglegal.htm
    examples/org.eclipse.swt.examples.launcher/doc-html/ngibmcpy.gif
    examples/org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html
    examples/org.eclipse.swt.examples.launcher/doc/org.eclipse.swt.examples.launcher.launchItems.html
    examples/org.eclipse.swt.examples.launcher/icons/closedFolder.gif
    examples/org.eclipse.swt.examples.launcher/icons/generic_example.gif
    examples/org.eclipse.swt.examples.launcher/icons/launcher_example.gif
    examples/org.eclipse.swt.examples.launcher/icons/openFolder.gif
    examples/org.eclipse.swt.examples.launcher/plugin.properties
    examples/org.eclipse.swt.examples.launcher/plugin.xml
    examples/org.eclipse.swt.examples.launcher/schema/org.eclipse.swt.examples.launcher.launchItems.exsd
    examples/org.eclipse.swt.examples.launcher/src/import.properties
    examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemDescriptor.java
    examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemTreeNode.java
    examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherPlugin.java
    examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherView.java
    examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/SplitLayout.java
    examples/org.eclipse.swt.examples.layouts/.classpath
    examples/org.eclipse.swt.examples.layouts/.cvsignore
    examples/org.eclipse.swt.examples.layouts/.project
    examples/org.eclipse.swt.examples.layouts/about.html
    examples/org.eclipse.swt.examples.layouts/build.properties
    examples/org.eclipse.swt.examples.layouts/doc-html/hglegal.htm
    examples/org.eclipse.swt.examples.layouts/doc-html/ngibmcpy.gif
    examples/org.eclipse.swt.examples.layouts/doc-html/swt_layout_ex.html
    examples/org.eclipse.swt.examples.layouts/icons/layouts_example.gif
    examples/org.eclipse.swt.examples.layouts/plugin.properties
    examples/org.eclipse.swt.examples.layouts/plugin.xml
    examples/org.eclipse.swt.examples.layouts/src/import.properties
    examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutPlugin.java
    examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutView.java
    examples/org.eclipse.swt.examples.ole.win32/.classpath
    examples/org.eclipse.swt.examples.ole.win32/.cvsignore
    examples/org.eclipse.swt.examples.ole.win32/.project
    examples/org.eclipse.swt.examples.ole.win32/about.html
    examples/org.eclipse.swt.examples.ole.win32/build.properties
    examples/org.eclipse.swt.examples.ole.win32/doc-html/hglegal.htm
    examples/org.eclipse.swt.examples.ole.win32/doc-html/ngibmcpy.gif
    examples/org.eclipse.swt.examples.ole.win32/doc-html/swt_ole_ex.html
    examples/org.eclipse.swt.examples.ole.win32/icons/backward_nav.gif
    examples/org.eclipse.swt.examples.ole.win32/icons/forward_nav.gif
    examples/org.eclipse.swt.examples.ole.win32/icons/home_nav.gif
    examples/org.eclipse.swt.examples.ole.win32/icons/refresh_nav.gif
    examples/org.eclipse.swt.examples.ole.win32/icons/search_nav.gif
    examples/org.eclipse.swt.examples.ole.win32/icons/stop_nav.gif
    examples/org.eclipse.swt.examples.ole.win32/icons/webbrowser_example.gif
    examples/org.eclipse.swt.examples.ole.win32/plugin.properties
    examples/org.eclipse.swt.examples.ole.win32/plugin.xml
    examples/org.eclipse.swt.examples.ole.win32/src/import.properties
    examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleBrowserView.java
    examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OlePlugin.java
    examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleWebBrowser.java
    examples/org.eclipse.swt.examples.paint/.classpath
    examples/org.eclipse.swt.examples.paint/.cvsignore
    examples/org.eclipse.swt.examples.paint/.project
    examples/org.eclipse.swt.examples.paint/about.html
    examples/org.eclipse.swt.examples.paint/build.properties
    examples/org.eclipse.swt.examples.paint/doc-html/hglegal.htm
    examples/org.eclipse.swt.examples.paint/doc-html/ngibmcpy.gif
    examples/org.eclipse.swt.examples.paint/doc-html/swt_paint_ex.html
    examples/org.eclipse.swt.examples.paint/icons/fill_none.gif
    examples/org.eclipse.swt.examples.paint/icons/fill_outline.gif
    examples/org.eclipse.swt.examples.paint/icons/fill_solid.gif
    examples/org.eclipse.swt.examples.paint/icons/linestyle_dash.gif
    examples/org.eclipse.swt.examples.paint/icons/linestyle_dashdot.gif
    examples/org.eclipse.swt.examples.paint/icons/linestyle_dot.gif
    examples/org.eclipse.swt.examples.paint/icons/linestyle_solid.gif
    examples/org.eclipse.swt.examples.paint/icons/options_font.gif
    examples/org.eclipse.swt.examples.paint/icons/paint_example.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_airbrush.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_ellipse.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_line.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_pencil.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_polyline.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_rectangle.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_roundedrectangle.gif
    examples/org.eclipse.swt.examples.paint/icons/tool_text.gif
    examples/org.eclipse.swt.examples.paint/plugin.properties
    examples/org.eclipse.swt.examples.paint/plugin.xml
    examples/org.eclipse.swt.examples.paint/src/import.properties
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/AirbrushTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/BasicPaintSession.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContainerFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContinuousPaintSession.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/DragPaintSession.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/Figure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/FigureDrawContext.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintPlugin.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSession.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSurface.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintView.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PencilTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PointFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PolyLineTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SegmentedPaintSession.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidEllipseFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidPolygonFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRectangleFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRoundedRectangleFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextFigure.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextTool.java
    examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ToolSettings.java
    examples/org.eclipse.swt.opengl.examples/.classpath
    examples/org.eclipse.swt.opengl.examples/.project
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AntialiasingTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AreaTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BezierTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BitmapTextTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ColorSelectionGroup.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/FogTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/GradientTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/IColorSelectionListener.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/LightTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/NurbTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ObjectsTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLExample.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OutlineTextTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ReflectionTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/SelectionTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/StencilTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TextureTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TransparencyTab.java
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Ball.jpg
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Box.bmp
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Floor.jpg
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/splash.bmp
    examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/untitled.jpg
    examples/org.eclipse.swt.snippets/.classpath
    examples/org.eclipse.swt.snippets/.cvsignore
    examples/org.eclipse.swt.snippets/.project
    examples/org.eclipse.swt.snippets/about.html
    examples/org.eclipse.swt.snippets/build.properties
    examples/org.eclipse.swt.snippets/plugin.properties
    examples/org.eclipse.swt.snippets/plugin.xml
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet1.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet10.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet100.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet101.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet102.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet103.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet104.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet105.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet106.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet107.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet108.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet109.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet11.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet110.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet111.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet112.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet113.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet114.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet115.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet116.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet117.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet118.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet119.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet12.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet120.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet121.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet122.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet123.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet124.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet125.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet126.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet127.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet128.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet129.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet13.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet130.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet131.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet132.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet133.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet134.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet135.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet136.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet137.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet138.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet139.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet14.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet140.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet141.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet142.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet143.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet144.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet145.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet146.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet147.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet148.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet149.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet15.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet150.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet151.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet152.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet153.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet154.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet155.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet156.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet157.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet16.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet17.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet18.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet19.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet2.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet20.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet21.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet22.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet23.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet24.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet25.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet26.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet27.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet28.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet29.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet3.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet30.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet31.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet32.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet33.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet34.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet35.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet36.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet37.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet38.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet39.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet4.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet40.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet41.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet42.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet43.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet44.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet45.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet46.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet47.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet48.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet49.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet5.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet50.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet51.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet52.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet53.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet54.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet55.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet56.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet57.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet58.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet59.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet6.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet60.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet61.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet62.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet63.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet64.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet65.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet66.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet67.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet68.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet69.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet7.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet70.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet71.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet72.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet73.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet74.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet75.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet76.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet77.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet78.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet79.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet8.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet80.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet81.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet82.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet83.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet84.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet85.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet86.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet87.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet88.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet89.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet9.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet90.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet91.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet92.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet93.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet94.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet95.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet96.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet97.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet98.java
    examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet99.java
diff --git a/bundles/org.eclipse.swt.opengl/.classpath_gtk b/bundles/org.eclipse.swt.opengl/.classpath_gtk
deleted file mode 100644
index 4fda90a..0000000
--- a/bundles/org.eclipse.swt.opengl/.classpath_gtk
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry sourcepath="JRE_SRC" kind="var" path="JRE_LIB"/>
-	<classpathentry kind="src" path="common"/>
-	<classpathentry kind="src" path="gtk"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="/org.eclipse.swt"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.opengl/.classpath_motif b/bundles/org.eclipse.swt.opengl/.classpath_motif
deleted file mode 100644
index 75b5fe1..0000000
--- a/bundles/org.eclipse.swt.opengl/.classpath_motif
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry sourcepath="JRE_SRC" kind="var" path="JRE_LIB"/>
-	<classpathentry kind="src" path="common"/>
-	<classpathentry kind="src" path="motif"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="/org.eclipse.swt"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.opengl/.classpath_win32 b/bundles/org.eclipse.swt.opengl/.classpath_win32
deleted file mode 100644
index 88fea25..0000000
--- a/bundles/org.eclipse.swt.opengl/.classpath_win32
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry sourcepath="JRE_SRC" kind="var" path="JRE_LIB"/>
-	<classpathentry kind="src" path="common"/>
-	<classpathentry kind="src" path="win32"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="/org.eclipse.swt"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.swt.opengl/.cvsignore b/bundles/org.eclipse.swt.opengl/.cvsignore
deleted file mode 100644
index 661113b..0000000
--- a/bundles/org.eclipse.swt.opengl/.cvsignore
+++ /dev/null
@@ -1,3 +0,0 @@
-bin
-.classpath
-ws
diff --git a/bundles/org.eclipse.swt.opengl/.project b/bundles/org.eclipse.swt.opengl/.project
deleted file mode 100644
index 577537a..0000000
--- a/bundles/org.eclipse.swt.opengl/.project
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.opengl</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.swt</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.team.cvs.core.cvsnature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.swt.opengl/META-INF/MANIFEST.MF b/bundles/org.eclipse.swt.opengl/META-INF/MANIFEST.MF
deleted file mode 100644
index e12636f..0000000
--- a/bundles/org.eclipse.swt.opengl/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0

-Bundle-Name: %pluginName

-Bundle-Vendor: %providerName

-Bundle-SymbolicName: org.eclipse.swt.opengl; singleton=true

-Bundle-Version: 3.1.0

-Bundle-ClassPath: $ws$/opengl.jar

-Bundle-Localization: plugin

-Provide-Package: 

-  org.eclipse.swt.opengl

diff --git a/bundles/org.eclipse.swt.opengl/about.html b/bundles/org.eclipse.swt.opengl/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/bundles/org.eclipse.swt.opengl/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.opengl/common/library/gl.c b/bundles/org.eclipse.swt.opengl/common/library/gl.c
deleted file mode 100644
index 5826303..0000000
--- a/bundles/org.eclipse.swt.opengl/common/library/gl.c
+++ /dev/null
@@ -1,5930 +0,0 @@
-#include "swt.h"
-#include "gl_structs.h"
-#include "gl_stats.h"
-
-#define GL_NATIVE(func) Java_org_eclipse_swt_opengl_GL_##func
-
-#ifndef NO_glAccum
-JNIEXPORT void JNICALL GL_NATIVE(glAccum)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glAccum_FUNC);
-	glAccum(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glAccum_FUNC);
-}
-#endif
-
-#ifndef NO_glAlphaFunc
-JNIEXPORT void JNICALL GL_NATIVE(glAlphaFunc)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glAlphaFunc_FUNC);
-	glAlphaFunc(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glAlphaFunc_FUNC);
-}
-#endif
-
-#ifndef NO_glAreTexturesResident
-JNIEXPORT jboolean JNICALL GL_NATIVE(glAreTexturesResident)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1, jbooleanArray arg2)
-{
-	jint *lparg1=NULL;
-	jboolean *lparg2=NULL;
-	jboolean rc;
-	GL_NATIVE_ENTER(env, that, glAreTexturesResident_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-		if (arg2) lparg2 = (*env)->GetBooleanArrayElements(env, arg2, NULL);
-	}
-	rc = (jboolean)glAreTexturesResident(arg0, lparg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseBooleanArrayElements(env, arg2, lparg2, 0);
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glAreTexturesResident_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glArrayElement
-JNIEXPORT void JNICALL GL_NATIVE(glArrayElement)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glArrayElement_FUNC);
-	glArrayElement(arg0);
-	GL_NATIVE_EXIT(env, that, glArrayElement_FUNC);
-}
-#endif
-
-#ifndef NO_glBegin
-JNIEXPORT void JNICALL GL_NATIVE(glBegin)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glBegin_FUNC);
-	glBegin(arg0);
-	GL_NATIVE_EXIT(env, that, glBegin_FUNC);
-}
-#endif
-
-#ifndef NO_glBindTexture
-JNIEXPORT void JNICALL GL_NATIVE(glBindTexture)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glBindTexture_FUNC);
-	glBindTexture(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glBindTexture_FUNC);
-}
-#endif
-
-#ifndef NO_glBitmap
-JNIEXPORT void JNICALL GL_NATIVE(glBitmap)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2, jfloat arg3, jfloat arg4, jfloat arg5, jbyteArray arg6)
-{
-	jbyte *lparg6=NULL;
-	GL_NATIVE_ENTER(env, that, glBitmap_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg6) lparg6 = (*env)->GetPrimitiveArrayCritical(env, arg6, NULL);
-	} else
-#endif
-	{
-		if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL);
-	}
-	glBitmap(arg0, arg1, arg2, arg3, arg4, arg5, lparg6);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg6) (*env)->ReleasePrimitiveArrayCritical(env, arg6, lparg6, 0);
-	} else
-#endif
-	{
-		if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glBitmap_FUNC);
-}
-#endif
-
-#ifndef NO_glBlendFunc
-JNIEXPORT void JNICALL GL_NATIVE(glBlendFunc)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glBlendFunc_FUNC);
-	glBlendFunc(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glBlendFunc_FUNC);
-}
-#endif
-
-#ifndef NO_glCallList
-JNIEXPORT void JNICALL GL_NATIVE(glCallList)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glCallList_FUNC);
-	glCallList(arg0);
-	GL_NATIVE_EXIT(env, that, glCallList_FUNC);
-}
-#endif
-
-#ifndef NO_glCallLists__II_3B
-JNIEXPORT void JNICALL GL_NATIVE(glCallLists__II_3B)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2)
-{
-	jbyte *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glCallLists__II_3B_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
-	}
-	glCallLists(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glCallLists__II_3B_FUNC);
-}
-#endif
-
-#ifndef NO_glCallLists__II_3C
-JNIEXPORT void JNICALL GL_NATIVE(glCallLists__II_3C)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2)
-{
-	jchar *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glCallLists__II_3C_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
-	}
-	glCallLists(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glCallLists__II_3C_FUNC);
-}
-#endif
-
-#ifndef NO_glCallLists__II_3I
-JNIEXPORT void JNICALL GL_NATIVE(glCallLists__II_3I)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glCallLists__II_3I_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glCallLists(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glCallLists__II_3I_FUNC);
-}
-#endif
-
-#ifndef NO_glClear
-JNIEXPORT void JNICALL GL_NATIVE(glClear)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glClear_FUNC);
-	glClear(arg0);
-	GL_NATIVE_EXIT(env, that, glClear_FUNC);
-}
-#endif
-
-#ifndef NO_glClearAccum
-JNIEXPORT void JNICALL GL_NATIVE(glClearAccum)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glClearAccum_FUNC);
-	glClearAccum(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glClearAccum_FUNC);
-}
-#endif
-
-#ifndef NO_glClearColor
-JNIEXPORT void JNICALL GL_NATIVE(glClearColor)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glClearColor_FUNC);
-	glClearColor(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glClearColor_FUNC);
-}
-#endif
-
-#ifndef NO_glClearDepth
-JNIEXPORT void JNICALL GL_NATIVE(glClearDepth)
-	(JNIEnv *env, jclass that, jdouble arg0)
-{
-	GL_NATIVE_ENTER(env, that, glClearDepth_FUNC);
-	glClearDepth(arg0);
-	GL_NATIVE_EXIT(env, that, glClearDepth_FUNC);
-}
-#endif
-
-#ifndef NO_glClearIndex
-JNIEXPORT void JNICALL GL_NATIVE(glClearIndex)
-	(JNIEnv *env, jclass that, jfloat arg0)
-{
-	GL_NATIVE_ENTER(env, that, glClearIndex_FUNC);
-	glClearIndex(arg0);
-	GL_NATIVE_EXIT(env, that, glClearIndex_FUNC);
-}
-#endif
-
-#ifndef NO_glClearStencil
-JNIEXPORT void JNICALL GL_NATIVE(glClearStencil)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glClearStencil_FUNC);
-	glClearStencil(arg0);
-	GL_NATIVE_EXIT(env, that, glClearStencil_FUNC);
-}
-#endif
-
-#ifndef NO_glClipPlane
-JNIEXPORT void JNICALL GL_NATIVE(glClipPlane)
-	(JNIEnv *env, jclass that, jint arg0, jdoubleArray arg1)
-{
-	jdouble *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glClipPlane_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetDoubleArrayElements(env, arg1, NULL);
-	}
-	glClipPlane(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseDoubleArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glClipPlane_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3b
-JNIEXPORT void JNICALL GL_NATIVE(glColor3b)
-	(JNIEnv *env, jclass that, jbyte arg0, jbyte arg1, jbyte arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3b_FUNC);
-	glColor3b(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3b_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3bv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3bv)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3bv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	}
-	glColor3bv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3bv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3d
-JNIEXPORT void JNICALL GL_NATIVE(glColor3d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3d_FUNC);
-	glColor3d(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3d_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3dv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glColor3dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3dv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3f
-JNIEXPORT void JNICALL GL_NATIVE(glColor3f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3f_FUNC);
-	glColor3f(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3f_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3fv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glColor3fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3fv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3i
-JNIEXPORT void JNICALL GL_NATIVE(glColor3i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3i_FUNC);
-	glColor3i(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3i_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3iv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glColor3iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3iv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3s
-JNIEXPORT void JNICALL GL_NATIVE(glColor3s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3s_FUNC);
-	glColor3s(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3s_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3sv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glColor3sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3sv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3ub
-JNIEXPORT void JNICALL GL_NATIVE(glColor3ub)
-	(JNIEnv *env, jclass that, jbyte arg0, jbyte arg1, jbyte arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3ub_FUNC);
-	glColor3ub(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3ub_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3ubv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3ubv)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3ubv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	}
-	glColor3ubv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3ubv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3ui
-JNIEXPORT void JNICALL GL_NATIVE(glColor3ui)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3ui_FUNC);
-	glColor3ui(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3ui_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3uiv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3uiv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3uiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glColor3uiv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3uiv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3us
-JNIEXPORT void JNICALL GL_NATIVE(glColor3us)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2)
-{
-	GL_NATIVE_ENTER(env, that, glColor3us_FUNC);
-	glColor3us(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glColor3us_FUNC);
-}
-#endif
-
-#ifndef NO_glColor3usv
-JNIEXPORT void JNICALL GL_NATIVE(glColor3usv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor3usv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glColor3usv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor3usv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4b
-JNIEXPORT void JNICALL GL_NATIVE(glColor4b)
-	(JNIEnv *env, jclass that, jbyte arg0, jbyte arg1, jbyte arg2, jbyte arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4b_FUNC);
-	glColor4b(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4b_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4bv
-JNIEXPORT void JNICALL GL_NATIVE(glColor4bv)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor4bv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	}
-	glColor4bv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor4bv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4d
-JNIEXPORT void JNICALL GL_NATIVE(glColor4d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4d_FUNC);
-	glColor4d(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4d_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4dv
-JNIEXPORT void JNICALL GL_NATIVE(glColor4dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor4dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glColor4dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor4dv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4f
-JNIEXPORT void JNICALL GL_NATIVE(glColor4f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4f_FUNC);
-	glColor4f(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4f_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4fv
-JNIEXPORT void JNICALL GL_NATIVE(glColor4fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor4fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glColor4fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor4fv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4i
-JNIEXPORT void JNICALL GL_NATIVE(glColor4i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4i_FUNC);
-	glColor4i(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4i_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4iv
-JNIEXPORT void JNICALL GL_NATIVE(glColor4iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor4iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glColor4iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor4iv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4s
-JNIEXPORT void JNICALL GL_NATIVE(glColor4s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2, jshort arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4s_FUNC);
-	glColor4s(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4s_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4ub
-JNIEXPORT void JNICALL GL_NATIVE(glColor4ub)
-	(JNIEnv *env, jclass that, jbyte arg0, jbyte arg1, jbyte arg2, jbyte arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4ub_FUNC);
-	glColor4ub(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4ub_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4ubv
-JNIEXPORT void JNICALL GL_NATIVE(glColor4ubv)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor4ubv_FUNC);
-	if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	glColor4ubv(lparg0);
-	if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	GL_NATIVE_EXIT(env, that, glColor4ubv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4ui
-JNIEXPORT void JNICALL GL_NATIVE(glColor4ui)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4ui_FUNC);
-	glColor4ui(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4ui_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4uiv
-JNIEXPORT void JNICALL GL_NATIVE(glColor4uiv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor4uiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glColor4uiv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor4uiv_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4us
-JNIEXPORT void JNICALL GL_NATIVE(glColor4us)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2, jshort arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColor4us_FUNC);
-	glColor4us(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColor4us_FUNC);
-}
-#endif
-
-#ifndef NO_glColor4usv
-JNIEXPORT void JNICALL GL_NATIVE(glColor4usv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glColor4usv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glColor4usv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColor4usv_FUNC);
-}
-#endif
-
-#ifndef NO_glColorMask
-JNIEXPORT void JNICALL GL_NATIVE(glColorMask)
-	(JNIEnv *env, jclass that, jboolean arg0, jboolean arg1, jboolean arg2, jboolean arg3)
-{
-	GL_NATIVE_ENTER(env, that, glColorMask_FUNC);
-	glColorMask(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glColorMask_FUNC);
-}
-#endif
-
-#ifndef NO_glColorMaterial
-JNIEXPORT void JNICALL GL_NATIVE(glColorMaterial)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glColorMaterial_FUNC);
-	glColorMaterial(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glColorMaterial_FUNC);
-}
-#endif
-
-#ifndef NO_glColorPointer
-JNIEXPORT void JNICALL GL_NATIVE(glColorPointer)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
-	jint *lparg3=NULL;
-	GL_NATIVE_ENTER(env, that, glColorPointer_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) lparg3 = (*env)->GetPrimitiveArrayCritical(env, arg3, NULL);
-	} else
-#endif
-	{
-		if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-	}
-	glColorPointer(arg0, arg1, arg2, lparg3);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) (*env)->ReleasePrimitiveArrayCritical(env, arg3, lparg3, 0);
-	} else
-#endif
-	{
-		if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glColorPointer_FUNC);
-}
-#endif
-
-#ifndef NO_glCopyPixels
-JNIEXPORT void JNICALL GL_NATIVE(glCopyPixels)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
-	GL_NATIVE_ENTER(env, that, glCopyPixels_FUNC);
-	glCopyPixels(arg0, arg1, arg2, arg3, arg4);
-	GL_NATIVE_EXIT(env, that, glCopyPixels_FUNC);
-}
-#endif
-
-#ifndef NO_glCopyTexImage1D
-JNIEXPORT void JNICALL GL_NATIVE(glCopyTexImage1D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6)
-{
-	GL_NATIVE_ENTER(env, that, glCopyTexImage1D_FUNC);
-	glCopyTexImage1D(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
-	GL_NATIVE_EXIT(env, that, glCopyTexImage1D_FUNC);
-}
-#endif
-
-#ifndef NO_glCopyTexImage2D
-JNIEXPORT void JNICALL GL_NATIVE(glCopyTexImage2D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7)
-{
-	GL_NATIVE_ENTER(env, that, glCopyTexImage2D_FUNC);
-	glCopyTexImage2D(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
-	GL_NATIVE_EXIT(env, that, glCopyTexImage2D_FUNC);
-}
-#endif
-
-#ifndef NO_glCopyTexSubImage1D
-JNIEXPORT void JNICALL GL_NATIVE(glCopyTexSubImage1D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5)
-{
-	GL_NATIVE_ENTER(env, that, glCopyTexSubImage1D_FUNC);
-	glCopyTexSubImage1D(arg0, arg1, arg2, arg3, arg4, arg5);
-	GL_NATIVE_EXIT(env, that, glCopyTexSubImage1D_FUNC);
-}
-#endif
-
-#ifndef NO_glCopyTexSubImage2D
-JNIEXPORT void JNICALL GL_NATIVE(glCopyTexSubImage2D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7)
-{
-	GL_NATIVE_ENTER(env, that, glCopyTexSubImage2D_FUNC);
-	glCopyTexSubImage2D(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
-	GL_NATIVE_EXIT(env, that, glCopyTexSubImage2D_FUNC);
-}
-#endif
-
-#ifndef NO_glCullFace
-JNIEXPORT void JNICALL GL_NATIVE(glCullFace)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glCullFace_FUNC);
-	glCullFace(arg0);
-	GL_NATIVE_EXIT(env, that, glCullFace_FUNC);
-}
-#endif
-
-#ifndef NO_glDeleteLists
-JNIEXPORT void JNICALL GL_NATIVE(glDeleteLists)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glDeleteLists_FUNC);
-	glDeleteLists(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glDeleteLists_FUNC);
-}
-#endif
-
-#ifndef NO_glDeleteTextures
-JNIEXPORT void JNICALL GL_NATIVE(glDeleteTextures)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glDeleteTextures_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	}
-	glDeleteTextures(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glDeleteTextures_FUNC);
-}
-#endif
-
-#ifndef NO_glDepthFunc
-JNIEXPORT void JNICALL GL_NATIVE(glDepthFunc)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glDepthFunc_FUNC);
-	glDepthFunc(arg0);
-	GL_NATIVE_EXIT(env, that, glDepthFunc_FUNC);
-}
-#endif
-
-#ifndef NO_glDepthMask
-JNIEXPORT void JNICALL GL_NATIVE(glDepthMask)
-	(JNIEnv *env, jclass that, jboolean arg0)
-{
-	GL_NATIVE_ENTER(env, that, glDepthMask_FUNC);
-	glDepthMask(arg0);
-	GL_NATIVE_EXIT(env, that, glDepthMask_FUNC);
-}
-#endif
-
-#ifndef NO_glDepthRange
-JNIEXPORT void JNICALL GL_NATIVE(glDepthRange)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1)
-{
-	GL_NATIVE_ENTER(env, that, glDepthRange_FUNC);
-	glDepthRange(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glDepthRange_FUNC);
-}
-#endif
-
-#ifndef NO_glDisable
-JNIEXPORT void JNICALL GL_NATIVE(glDisable)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glDisable_FUNC);
-	glDisable(arg0);
-	GL_NATIVE_EXIT(env, that, glDisable_FUNC);
-}
-#endif
-
-#ifndef NO_glDisableClientState
-JNIEXPORT void JNICALL GL_NATIVE(glDisableClientState)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glDisableClientState_FUNC);
-	glDisableClientState(arg0);
-	GL_NATIVE_EXIT(env, that, glDisableClientState_FUNC);
-}
-#endif
-
-#ifndef NO_glDrawArrays
-JNIEXPORT void JNICALL GL_NATIVE(glDrawArrays)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glDrawArrays_FUNC);
-	glDrawArrays(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glDrawArrays_FUNC);
-}
-#endif
-
-#ifndef NO_glDrawBuffer
-JNIEXPORT void JNICALL GL_NATIVE(glDrawBuffer)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glDrawBuffer_FUNC);
-	glDrawBuffer(arg0);
-	GL_NATIVE_EXIT(env, that, glDrawBuffer_FUNC);
-}
-#endif
-
-#ifndef NO_glDrawElements
-JNIEXPORT void JNICALL GL_NATIVE(glDrawElements)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
-	jint *lparg3=NULL;
-	GL_NATIVE_ENTER(env, that, glDrawElements_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) lparg3 = (*env)->GetPrimitiveArrayCritical(env, arg3, NULL);
-	} else
-#endif
-	{
-		if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-	}
-	glDrawElements(arg0, arg1, arg2, lparg3);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) (*env)->ReleasePrimitiveArrayCritical(env, arg3, lparg3, 0);
-	} else
-#endif
-	{
-		if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glDrawElements_FUNC);
-}
-#endif
-
-#ifndef NO_glDrawPixels
-JNIEXPORT void JNICALL GL_NATIVE(glDrawPixels)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jintArray arg4)
-{
-	jint *lparg4=NULL;
-	GL_NATIVE_ENTER(env, that, glDrawPixels_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg4) lparg4 = (*env)->GetPrimitiveArrayCritical(env, arg4, NULL);
-	} else
-#endif
-	{
-		if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
-	}
-	glDrawPixels(arg0, arg1, arg2, arg3, lparg4);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg4) (*env)->ReleasePrimitiveArrayCritical(env, arg4, lparg4, 0);
-	} else
-#endif
-	{
-		if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glDrawPixels_FUNC);
-}
-#endif
-
-#ifndef NO_glEdgeFlag
-JNIEXPORT void JNICALL GL_NATIVE(glEdgeFlag)
-	(JNIEnv *env, jclass that, jboolean arg0)
-{
-	GL_NATIVE_ENTER(env, that, glEdgeFlag_FUNC);
-	glEdgeFlag(arg0);
-	GL_NATIVE_EXIT(env, that, glEdgeFlag_FUNC);
-}
-#endif
-
-#ifndef NO_glEdgeFlagPointer
-JNIEXPORT void JNICALL GL_NATIVE(glEdgeFlagPointer)
-	(JNIEnv *env, jclass that, jint arg0, jbooleanArray arg1)
-{
-	jboolean *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glEdgeFlagPointer_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetBooleanArrayElements(env, arg1, NULL);
-	}
-	glEdgeFlagPointer(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseBooleanArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glEdgeFlagPointer_FUNC);
-}
-#endif
-
-#ifndef NO_glEdgeFlagv
-JNIEXPORT void JNICALL GL_NATIVE(glEdgeFlagv)
-	(JNIEnv *env, jclass that, jbooleanArray arg0)
-{
-	jboolean *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glEdgeFlagv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetBooleanArrayElements(env, arg0, NULL);
-	}
-	glEdgeFlagv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseBooleanArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glEdgeFlagv_FUNC);
-}
-#endif
-
-#ifndef NO_glEnable
-JNIEXPORT void JNICALL GL_NATIVE(glEnable)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glEnable_FUNC);
-	glEnable(arg0);
-	GL_NATIVE_EXIT(env, that, glEnable_FUNC);
-}
-#endif
-
-#ifndef NO_glEnableClientState
-JNIEXPORT void JNICALL GL_NATIVE(glEnableClientState)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glEnableClientState_FUNC);
-	glEnableClientState(arg0);
-	GL_NATIVE_EXIT(env, that, glEnableClientState_FUNC);
-}
-#endif
-
-#ifndef NO_glEnd
-JNIEXPORT void JNICALL GL_NATIVE(glEnd)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glEnd_FUNC);
-	glEnd();
-	GL_NATIVE_EXIT(env, that, glEnd_FUNC);
-}
-#endif
-
-#ifndef NO_glEndList
-JNIEXPORT void JNICALL GL_NATIVE(glEndList)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glEndList_FUNC);
-	glEndList();
-	GL_NATIVE_EXIT(env, that, glEndList_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord1d
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord1d)
-	(JNIEnv *env, jclass that, jdouble arg0)
-{
-	GL_NATIVE_ENTER(env, that, glEvalCoord1d_FUNC);
-	glEvalCoord1d(arg0);
-	GL_NATIVE_EXIT(env, that, glEvalCoord1d_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord1dv
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord1dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glEvalCoord1dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glEvalCoord1dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glEvalCoord1dv_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord1f
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord1f)
-	(JNIEnv *env, jclass that, jfloat arg0)
-{
-	GL_NATIVE_ENTER(env, that, glEvalCoord1f_FUNC);
-	glEvalCoord1f(arg0);
-	GL_NATIVE_EXIT(env, that, glEvalCoord1f_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord1fv
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord1fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glEvalCoord1fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glEvalCoord1fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glEvalCoord1fv_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord2d
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord2d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1)
-{
-	GL_NATIVE_ENTER(env, that, glEvalCoord2d_FUNC);
-	glEvalCoord2d(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glEvalCoord2d_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord2dv
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord2dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glEvalCoord2dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glEvalCoord2dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glEvalCoord2dv_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord2f
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord2f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glEvalCoord2f_FUNC);
-	glEvalCoord2f(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glEvalCoord2f_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalCoord2fv
-JNIEXPORT void JNICALL GL_NATIVE(glEvalCoord2fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glEvalCoord2fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glEvalCoord2fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glEvalCoord2fv_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalMesh1
-JNIEXPORT void JNICALL GL_NATIVE(glEvalMesh1)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glEvalMesh1_FUNC);
-	glEvalMesh1(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glEvalMesh1_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalMesh2
-JNIEXPORT void JNICALL GL_NATIVE(glEvalMesh2)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
-	GL_NATIVE_ENTER(env, that, glEvalMesh2_FUNC);
-	glEvalMesh2(arg0, arg1, arg2, arg3, arg4);
-	GL_NATIVE_EXIT(env, that, glEvalMesh2_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalPoint1
-JNIEXPORT void JNICALL GL_NATIVE(glEvalPoint1)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glEvalPoint1_FUNC);
-	glEvalPoint1(arg0);
-	GL_NATIVE_EXIT(env, that, glEvalPoint1_FUNC);
-}
-#endif
-
-#ifndef NO_glEvalPoint2
-JNIEXPORT void JNICALL GL_NATIVE(glEvalPoint2)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glEvalPoint2_FUNC);
-	glEvalPoint2(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glEvalPoint2_FUNC);
-}
-#endif
-
-#ifndef NO_glFeedbackBuffer
-JNIEXPORT void JNICALL GL_NATIVE(glFeedbackBuffer)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glFeedbackBuffer_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glFeedbackBuffer(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glFeedbackBuffer_FUNC);
-}
-#endif
-
-#ifndef NO_glFinish
-JNIEXPORT void JNICALL GL_NATIVE(glFinish)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glFinish_FUNC);
-	glFinish();
-	GL_NATIVE_EXIT(env, that, glFinish_FUNC);
-}
-#endif
-
-#ifndef NO_glFlush
-JNIEXPORT void JNICALL GL_NATIVE(glFlush)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glFlush_FUNC);
-	glFlush();
-	GL_NATIVE_EXIT(env, that, glFlush_FUNC);
-}
-#endif
-
-#ifndef NO_glFogf
-JNIEXPORT void JNICALL GL_NATIVE(glFogf)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glFogf_FUNC);
-	glFogf(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glFogf_FUNC);
-}
-#endif
-
-#ifndef NO_glFogfv
-JNIEXPORT void JNICALL GL_NATIVE(glFogfv)
-	(JNIEnv *env, jclass that, jint arg0, jfloatArray arg1)
-{
-	jfloat *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glFogfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL);
-	}
-	glFogfv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glFogfv_FUNC);
-}
-#endif
-
-#ifndef NO_glFogi
-JNIEXPORT void JNICALL GL_NATIVE(glFogi)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glFogi_FUNC);
-	glFogi(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glFogi_FUNC);
-}
-#endif
-
-#ifndef NO_glFogiv
-JNIEXPORT void JNICALL GL_NATIVE(glFogiv)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glFogiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	}
-	glFogiv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glFogiv_FUNC);
-}
-#endif
-
-#ifndef NO_glFrontFace
-JNIEXPORT void JNICALL GL_NATIVE(glFrontFace)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glFrontFace_FUNC);
-	glFrontFace(arg0);
-	GL_NATIVE_EXIT(env, that, glFrontFace_FUNC);
-}
-#endif
-
-#ifndef NO_glFrustum
-JNIEXPORT void JNICALL GL_NATIVE(glFrustum)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3, jdouble arg4, jdouble arg5)
-{
-	GL_NATIVE_ENTER(env, that, glFrustum_FUNC);
-	glFrustum(arg0, arg1, arg2, arg3, arg4, arg5);
-	GL_NATIVE_EXIT(env, that, glFrustum_FUNC);
-}
-#endif
-
-#ifndef NO_glGenLists
-JNIEXPORT jint JNICALL GL_NATIVE(glGenLists)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	jint rc;
-	GL_NATIVE_ENTER(env, that, glGenLists_FUNC);
-	rc = (jint)glGenLists(arg0);
-	GL_NATIVE_EXIT(env, that, glGenLists_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glGenTextures
-JNIEXPORT void JNICALL GL_NATIVE(glGenTextures)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGenTextures_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	}
-	glGenTextures(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGenTextures_FUNC);
-}
-#endif
-
-#ifndef NO_glGetBooleanv
-JNIEXPORT void JNICALL GL_NATIVE(glGetBooleanv)
-	(JNIEnv *env, jclass that, jint arg0, jbooleanArray arg1)
-{
-	jboolean *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetBooleanv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetBooleanArrayElements(env, arg1, NULL);
-	}
-	glGetBooleanv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseBooleanArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetBooleanv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetClipPlane
-JNIEXPORT void JNICALL GL_NATIVE(glGetClipPlane)
-	(JNIEnv *env, jclass that, jint arg0, jdoubleArray arg1)
-{
-	jdouble *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetClipPlane_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetDoubleArrayElements(env, arg1, NULL);
-	}
-	glGetClipPlane(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseDoubleArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetClipPlane_FUNC);
-}
-#endif
-
-#ifndef NO_glGetDoublev
-JNIEXPORT void JNICALL GL_NATIVE(glGetDoublev)
-	(JNIEnv *env, jclass that, jint arg0, jdoubleArray arg1)
-{
-	jdouble *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetDoublev_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetDoubleArrayElements(env, arg1, NULL);
-	}
-	glGetDoublev(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseDoubleArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetDoublev_FUNC);
-}
-#endif
-
-#ifndef NO_glGetError
-JNIEXPORT jint JNICALL GL_NATIVE(glGetError)
-	(JNIEnv *env, jclass that)
-{
-	jint rc;
-	GL_NATIVE_ENTER(env, that, glGetError_FUNC);
-	rc = (jint)glGetError();
-	GL_NATIVE_EXIT(env, that, glGetError_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glGetFloatv
-JNIEXPORT void JNICALL GL_NATIVE(glGetFloatv)
-	(JNIEnv *env, jclass that, jint arg0, jfloatArray arg1)
-{
-	jfloat *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetFloatv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL);
-	}
-	glGetFloatv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetFloatv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetIntegerv
-JNIEXPORT void JNICALL GL_NATIVE(glGetIntegerv)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetIntegerv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	}
-	glGetIntegerv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetIntegerv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetLightfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetLightfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetLightfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glGetLightfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetLightfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetLightiv
-JNIEXPORT void JNICALL GL_NATIVE(glGetLightiv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetLightiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glGetLightiv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetLightiv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetMapdv
-JNIEXPORT void JNICALL GL_NATIVE(glGetMapdv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jdoubleArray arg2)
-{
-	jdouble *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetMapdv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetDoubleArrayElements(env, arg2, NULL);
-	}
-	glGetMapdv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseDoubleArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetMapdv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetMapfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetMapfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetMapfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glGetMapfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetMapfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetMapiv
-JNIEXPORT void JNICALL GL_NATIVE(glGetMapiv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetMapiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glGetMapiv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetMapiv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetMaterialfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetMaterialfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetMaterialfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glGetMaterialfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetMaterialfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetMaterialiv
-JNIEXPORT void JNICALL GL_NATIVE(glGetMaterialiv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetMaterialiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glGetMaterialiv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetMaterialiv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetPixelMapfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetPixelMapfv)
-	(JNIEnv *env, jclass that, jint arg0, jfloatArray arg1)
-{
-	jfloat *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetPixelMapfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL);
-	}
-	glGetPixelMapfv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetPixelMapfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetPixelMapuiv
-JNIEXPORT void JNICALL GL_NATIVE(glGetPixelMapuiv)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetPixelMapuiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	}
-	glGetPixelMapuiv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetPixelMapuiv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetPixelMapusv
-JNIEXPORT void JNICALL GL_NATIVE(glGetPixelMapusv)
-	(JNIEnv *env, jclass that, jint arg0, jshortArray arg1)
-{
-	jshort *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetPixelMapusv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetShortArrayElements(env, arg1, NULL);
-	}
-	glGetPixelMapusv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseShortArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetPixelMapusv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetPointerv
-JNIEXPORT void JNICALL GL_NATIVE(glGetPointerv)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glGetPointerv_FUNC);
-	if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	glGetPointerv(arg0, (GLvoid **)lparg1);
-	if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	GL_NATIVE_EXIT(env, that, glGetPointerv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetPolygonStipple
-JNIEXPORT void JNICALL GL_NATIVE(glGetPolygonStipple)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glGetPolygonStipple_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	}
-	glGetPolygonStipple(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetPolygonStipple_FUNC);
-}
-#endif
-
-#ifndef NO_glGetString
-JNIEXPORT jint JNICALL GL_NATIVE(glGetString)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	jint rc;
-	GL_NATIVE_ENTER(env, that, glGetString_FUNC);
-	rc = (jint)glGetString(arg0);
-	GL_NATIVE_EXIT(env, that, glGetString_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glGetTexEnvfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexEnvfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexEnvfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glGetTexEnvfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexEnvfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexEnviv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexEnviv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexEnviv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glGetTexEnviv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexEnviv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexGendv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexGendv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jdoubleArray arg2)
-{
-	jdouble *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexGendv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetDoubleArrayElements(env, arg2, NULL);
-	}
-	glGetTexGendv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseDoubleArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexGendv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexGenfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexGenfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexGenfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glGetTexGenfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexGenfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexGeniv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexGeniv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexGeniv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glGetTexGeniv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexGeniv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexImage
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexImage)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jintArray arg4)
-{
-	jint *lparg4=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexImage_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg4) lparg4 = (*env)->GetPrimitiveArrayCritical(env, arg4, NULL);
-	} else
-#endif
-	{
-		if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
-	}
-	glGetTexImage(arg0, arg1, arg2, arg3, lparg4);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg4) (*env)->ReleasePrimitiveArrayCritical(env, arg4, lparg4, 0);
-	} else
-#endif
-	{
-		if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexImage_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexLevelParameterfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexLevelParameterfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jfloatArray arg3)
-{
-	jfloat *lparg3=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexLevelParameterfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) lparg3 = (*env)->GetPrimitiveArrayCritical(env, arg3, NULL);
-	} else
-#endif
-	{
-		if (arg3) lparg3 = (*env)->GetFloatArrayElements(env, arg3, NULL);
-	}
-	glGetTexLevelParameterfv(arg0, arg1, arg2, lparg3);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) (*env)->ReleasePrimitiveArrayCritical(env, arg3, lparg3, 0);
-	} else
-#endif
-	{
-		if (arg3) (*env)->ReleaseFloatArrayElements(env, arg3, lparg3, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexLevelParameterfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexLevelParameteriv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexLevelParameteriv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
-	jint *lparg3=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexLevelParameteriv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) lparg3 = (*env)->GetPrimitiveArrayCritical(env, arg3, NULL);
-	} else
-#endif
-	{
-		if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-	}
-	glGetTexLevelParameteriv(arg0, arg1, arg2, lparg3);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) (*env)->ReleasePrimitiveArrayCritical(env, arg3, lparg3, 0);
-	} else
-#endif
-	{
-		if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexLevelParameteriv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexParameterfv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexParameterfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexParameterfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glGetTexParameterfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexParameterfv_FUNC);
-}
-#endif
-
-#ifndef NO_glGetTexParameteriv
-JNIEXPORT void JNICALL GL_NATIVE(glGetTexParameteriv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glGetTexParameteriv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glGetTexParameteriv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glGetTexParameteriv_FUNC);
-}
-#endif
-
-#ifndef NO_glHint
-JNIEXPORT void JNICALL GL_NATIVE(glHint)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glHint_FUNC);
-	glHint(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glHint_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexMask
-JNIEXPORT void JNICALL GL_NATIVE(glIndexMask)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glIndexMask_FUNC);
-	glIndexMask(arg0);
-	GL_NATIVE_EXIT(env, that, glIndexMask_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexPointer
-JNIEXPORT void JNICALL GL_NATIVE(glIndexPointer)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glIndexPointer_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glIndexPointer(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glIndexPointer_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexd
-JNIEXPORT void JNICALL GL_NATIVE(glIndexd)
-	(JNIEnv *env, jclass that, jdouble arg0)
-{
-	GL_NATIVE_ENTER(env, that, glIndexd_FUNC);
-	glIndexd(arg0);
-	GL_NATIVE_EXIT(env, that, glIndexd_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexdv
-JNIEXPORT void JNICALL GL_NATIVE(glIndexdv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glIndexdv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glIndexdv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glIndexdv_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexf
-JNIEXPORT void JNICALL GL_NATIVE(glIndexf)
-	(JNIEnv *env, jclass that, jfloat arg0)
-{
-	GL_NATIVE_ENTER(env, that, glIndexf_FUNC);
-	glIndexf(arg0);
-	GL_NATIVE_EXIT(env, that, glIndexf_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexfv
-JNIEXPORT void JNICALL GL_NATIVE(glIndexfv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glIndexfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glIndexfv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glIndexfv_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexi
-JNIEXPORT void JNICALL GL_NATIVE(glIndexi)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glIndexi_FUNC);
-	glIndexi(arg0);
-	GL_NATIVE_EXIT(env, that, glIndexi_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexiv
-JNIEXPORT void JNICALL GL_NATIVE(glIndexiv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glIndexiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glIndexiv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glIndexiv_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexs
-JNIEXPORT void JNICALL GL_NATIVE(glIndexs)
-	(JNIEnv *env, jclass that, jshort arg0)
-{
-	GL_NATIVE_ENTER(env, that, glIndexs_FUNC);
-	glIndexs(arg0);
-	GL_NATIVE_EXIT(env, that, glIndexs_FUNC);
-}
-#endif
-
-#ifndef NO_glIndexsv
-JNIEXPORT void JNICALL GL_NATIVE(glIndexsv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glIndexsv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glIndexsv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glIndexsv_FUNC);
-}
-#endif
-
-#ifndef NO_glInitNames
-JNIEXPORT void JNICALL GL_NATIVE(glInitNames)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glInitNames_FUNC);
-	glInitNames();
-	GL_NATIVE_EXIT(env, that, glInitNames_FUNC);
-}
-#endif
-
-#ifndef NO_glInterleavedArrays
-JNIEXPORT void JNICALL GL_NATIVE(glInterleavedArrays)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glInterleavedArrays_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glInterleavedArrays(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glInterleavedArrays_FUNC);
-}
-#endif
-
-#ifndef NO_glIsEnabled
-JNIEXPORT jboolean JNICALL GL_NATIVE(glIsEnabled)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	jboolean rc;
-	GL_NATIVE_ENTER(env, that, glIsEnabled_FUNC);
-	rc = (jboolean)glIsEnabled(arg0);
-	GL_NATIVE_EXIT(env, that, glIsEnabled_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glIsList
-JNIEXPORT jboolean JNICALL GL_NATIVE(glIsList)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	jboolean rc;
-	GL_NATIVE_ENTER(env, that, glIsList_FUNC);
-	rc = (jboolean)glIsList(arg0);
-	GL_NATIVE_EXIT(env, that, glIsList_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glIsTexture
-JNIEXPORT jboolean JNICALL GL_NATIVE(glIsTexture)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	jboolean rc;
-	GL_NATIVE_ENTER(env, that, glIsTexture_FUNC);
-	rc = (jboolean)glIsTexture(arg0);
-	GL_NATIVE_EXIT(env, that, glIsTexture_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glLightModelf
-JNIEXPORT void JNICALL GL_NATIVE(glLightModelf)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glLightModelf_FUNC);
-	glLightModelf(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glLightModelf_FUNC);
-}
-#endif
-
-#ifndef NO_glLightModelfv
-JNIEXPORT void JNICALL GL_NATIVE(glLightModelfv)
-	(JNIEnv *env, jclass that, jint arg0, jfloatArray arg1)
-{
-	jfloat *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glLightModelfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL);
-	}
-	glLightModelfv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glLightModelfv_FUNC);
-}
-#endif
-
-#ifndef NO_glLightModeli
-JNIEXPORT void JNICALL GL_NATIVE(glLightModeli)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glLightModeli_FUNC);
-	glLightModeli(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glLightModeli_FUNC);
-}
-#endif
-
-#ifndef NO_glLightModeliv
-JNIEXPORT void JNICALL GL_NATIVE(glLightModeliv)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glLightModeliv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	}
-	glLightModeliv(arg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glLightModeliv_FUNC);
-}
-#endif
-
-#ifndef NO_glLightf
-JNIEXPORT void JNICALL GL_NATIVE(glLightf)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glLightf_FUNC);
-	glLightf(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glLightf_FUNC);
-}
-#endif
-
-#ifndef NO_glLightfv
-JNIEXPORT void JNICALL GL_NATIVE(glLightfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glLightfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glLightfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glLightfv_FUNC);
-}
-#endif
-
-#ifndef NO_glLighti
-JNIEXPORT void JNICALL GL_NATIVE(glLighti)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glLighti_FUNC);
-	glLighti(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glLighti_FUNC);
-}
-#endif
-
-#ifndef NO_glLightiv
-JNIEXPORT void JNICALL GL_NATIVE(glLightiv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glLightiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glLightiv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glLightiv_FUNC);
-}
-#endif
-
-#ifndef NO_glLineStipple
-JNIEXPORT void JNICALL GL_NATIVE(glLineStipple)
-	(JNIEnv *env, jclass that, jint arg0, jshort arg1)
-{
-	GL_NATIVE_ENTER(env, that, glLineStipple_FUNC);
-	glLineStipple(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glLineStipple_FUNC);
-}
-#endif
-
-#ifndef NO_glLineWidth
-JNIEXPORT void JNICALL GL_NATIVE(glLineWidth)
-	(JNIEnv *env, jclass that, jfloat arg0)
-{
-	GL_NATIVE_ENTER(env, that, glLineWidth_FUNC);
-	glLineWidth(arg0);
-	GL_NATIVE_EXIT(env, that, glLineWidth_FUNC);
-}
-#endif
-
-#ifndef NO_glListBase
-JNIEXPORT void JNICALL GL_NATIVE(glListBase)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glListBase_FUNC);
-	glListBase(arg0);
-	GL_NATIVE_EXIT(env, that, glListBase_FUNC);
-}
-#endif
-
-#ifndef NO_glLoadIdentity
-JNIEXPORT void JNICALL GL_NATIVE(glLoadIdentity)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glLoadIdentity_FUNC);
-	glLoadIdentity();
-	GL_NATIVE_EXIT(env, that, glLoadIdentity_FUNC);
-}
-#endif
-
-#ifndef NO_glLoadMatrixd
-JNIEXPORT void JNICALL GL_NATIVE(glLoadMatrixd)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glLoadMatrixd_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glLoadMatrixd(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glLoadMatrixd_FUNC);
-}
-#endif
-
-#ifndef NO_glLoadMatrixf
-JNIEXPORT void JNICALL GL_NATIVE(glLoadMatrixf)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glLoadMatrixf_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glLoadMatrixf(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glLoadMatrixf_FUNC);
-}
-#endif
-
-#ifndef NO_glLoadName
-JNIEXPORT void JNICALL GL_NATIVE(glLoadName)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glLoadName_FUNC);
-	glLoadName(arg0);
-	GL_NATIVE_EXIT(env, that, glLoadName_FUNC);
-}
-#endif
-
-#ifndef NO_glLogicOp
-JNIEXPORT void JNICALL GL_NATIVE(glLogicOp)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glLogicOp_FUNC);
-	glLogicOp(arg0);
-	GL_NATIVE_EXIT(env, that, glLogicOp_FUNC);
-}
-#endif
-
-#ifndef NO_glMap1d
-JNIEXPORT void JNICALL GL_NATIVE(glMap1d)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2, jint arg3, jint arg4, jdoubleArray arg5)
-{
-	jdouble *lparg5=NULL;
-	GL_NATIVE_ENTER(env, that, glMap1d_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg5) lparg5 = (*env)->GetPrimitiveArrayCritical(env, arg5, NULL);
-	} else
-#endif
-	{
-		if (arg5) lparg5 = (*env)->GetDoubleArrayElements(env, arg5, NULL);
-	}
-	glMap1d(arg0, arg1, arg2, arg3, arg4, lparg5);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg5) (*env)->ReleasePrimitiveArrayCritical(env, arg5, lparg5, 0);
-	} else
-#endif
-	{
-		if (arg5) (*env)->ReleaseDoubleArrayElements(env, arg5, lparg5, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMap1d_FUNC);
-}
-#endif
-
-#ifndef NO_glMap1f
-JNIEXPORT void JNICALL GL_NATIVE(glMap1f)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1, jfloat arg2, jint arg3, jint arg4, jfloatArray arg5)
-{
-	jfloat *lparg5=NULL;
-	GL_NATIVE_ENTER(env, that, glMap1f_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg5) lparg5 = (*env)->GetPrimitiveArrayCritical(env, arg5, NULL);
-	} else
-#endif
-	{
-		if (arg5) lparg5 = (*env)->GetFloatArrayElements(env, arg5, NULL);
-	}
-	glMap1f(arg0, arg1, arg2, arg3, arg4, lparg5);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg5) (*env)->ReleasePrimitiveArrayCritical(env, arg5, lparg5, 0);
-	} else
-#endif
-	{
-		if (arg5) (*env)->ReleaseFloatArrayElements(env, arg5, lparg5, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMap1f_FUNC);
-}
-#endif
-
-#ifndef NO_glMap2d
-JNIEXPORT void JNICALL GL_NATIVE(glMap2d)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2, jint arg3, jint arg4, jdouble arg5, jdouble arg6, jint arg7, jint arg8, jdoubleArray arg9)
-{
-	jdouble *lparg9=NULL;
-	GL_NATIVE_ENTER(env, that, glMap2d_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg9) lparg9 = (*env)->GetPrimitiveArrayCritical(env, arg9, NULL);
-	} else
-#endif
-	{
-		if (arg9) lparg9 = (*env)->GetDoubleArrayElements(env, arg9, NULL);
-	}
-	glMap2d(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, lparg9);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg9) (*env)->ReleasePrimitiveArrayCritical(env, arg9, lparg9, 0);
-	} else
-#endif
-	{
-		if (arg9) (*env)->ReleaseDoubleArrayElements(env, arg9, lparg9, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMap2d_FUNC);
-}
-#endif
-
-#ifndef NO_glMap2f
-JNIEXPORT void JNICALL GL_NATIVE(glMap2f)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1, jfloat arg2, jint arg3, jint arg4, jfloat arg5, jfloat arg6, jint arg7, jint arg8, jfloatArray arg9)
-{
-	jfloat *lparg9=NULL;
-	GL_NATIVE_ENTER(env, that, glMap2f_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg9) lparg9 = (*env)->GetPrimitiveArrayCritical(env, arg9, NULL);
-	} else
-#endif
-	{
-		if (arg9) lparg9 = (*env)->GetFloatArrayElements(env, arg9, NULL);
-	}
-	glMap2f(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, lparg9);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg9) (*env)->ReleasePrimitiveArrayCritical(env, arg9, lparg9, 0);
-	} else
-#endif
-	{
-		if (arg9) (*env)->ReleaseFloatArrayElements(env, arg9, lparg9, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMap2f_FUNC);
-}
-#endif
-
-#ifndef NO_glMapGrid1d
-JNIEXPORT void JNICALL GL_NATIVE(glMapGrid1d)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glMapGrid1d_FUNC);
-	glMapGrid1d(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glMapGrid1d_FUNC);
-}
-#endif
-
-#ifndef NO_glMapGrid1f
-JNIEXPORT void JNICALL GL_NATIVE(glMapGrid1f)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glMapGrid1f_FUNC);
-	glMapGrid1f(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glMapGrid1f_FUNC);
-}
-#endif
-
-#ifndef NO_glMapGrid2d
-JNIEXPORT void JNICALL GL_NATIVE(glMapGrid2d)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2, jint arg3, jdouble arg4, jdouble arg5)
-{
-	GL_NATIVE_ENTER(env, that, glMapGrid2d_FUNC);
-	glMapGrid2d(arg0, arg1, arg2, arg3, arg4, arg5);
-	GL_NATIVE_EXIT(env, that, glMapGrid2d_FUNC);
-}
-#endif
-
-#ifndef NO_glMapGrid2f
-JNIEXPORT void JNICALL GL_NATIVE(glMapGrid2f)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1, jfloat arg2, jint arg3, jfloat arg4, jfloat arg5)
-{
-	GL_NATIVE_ENTER(env, that, glMapGrid2f_FUNC);
-	glMapGrid2f(arg0, arg1, arg2, arg3, arg4, arg5);
-	GL_NATIVE_EXIT(env, that, glMapGrid2f_FUNC);
-}
-#endif
-
-#ifndef NO_glMaterialf
-JNIEXPORT void JNICALL GL_NATIVE(glMaterialf)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glMaterialf_FUNC);
-	glMaterialf(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glMaterialf_FUNC);
-}
-#endif
-
-#ifndef NO_glMaterialfv
-JNIEXPORT void JNICALL GL_NATIVE(glMaterialfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glMaterialfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glMaterialfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMaterialfv_FUNC);
-}
-#endif
-
-#ifndef NO_glMateriali
-JNIEXPORT void JNICALL GL_NATIVE(glMateriali)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glMateriali_FUNC);
-	glMateriali(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glMateriali_FUNC);
-}
-#endif
-
-#ifndef NO_glMaterialiv
-JNIEXPORT void JNICALL GL_NATIVE(glMaterialiv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glMaterialiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glMaterialiv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMaterialiv_FUNC);
-}
-#endif
-
-#ifndef NO_glMatrixMode
-JNIEXPORT void JNICALL GL_NATIVE(glMatrixMode)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glMatrixMode_FUNC);
-	glMatrixMode(arg0);
-	GL_NATIVE_EXIT(env, that, glMatrixMode_FUNC);
-}
-#endif
-
-#ifndef NO_glMultMatrixd
-JNIEXPORT void JNICALL GL_NATIVE(glMultMatrixd)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glMultMatrixd_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glMultMatrixd(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMultMatrixd_FUNC);
-}
-#endif
-
-#ifndef NO_glMultMatrixf
-JNIEXPORT void JNICALL GL_NATIVE(glMultMatrixf)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glMultMatrixf_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glMultMatrixf(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glMultMatrixf_FUNC);
-}
-#endif
-
-#ifndef NO_glNewList
-JNIEXPORT void JNICALL GL_NATIVE(glNewList)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glNewList_FUNC);
-	glNewList(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glNewList_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3b
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3b)
-	(JNIEnv *env, jclass that, jbyte arg0, jbyte arg1, jbyte arg2)
-{
-	GL_NATIVE_ENTER(env, that, glNormal3b_FUNC);
-	glNormal3b(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glNormal3b_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3bv
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3bv)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glNormal3bv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	}
-	glNormal3bv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glNormal3bv_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3d
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glNormal3d_FUNC);
-	glNormal3d(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glNormal3d_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3dv
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glNormal3dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glNormal3dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glNormal3dv_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3f
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glNormal3f_FUNC);
-	glNormal3f(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glNormal3f_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3fv
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glNormal3fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glNormal3fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glNormal3fv_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3i
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glNormal3i_FUNC);
-	glNormal3i(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glNormal3i_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3iv
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glNormal3iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glNormal3iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glNormal3iv_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3s
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2)
-{
-	GL_NATIVE_ENTER(env, that, glNormal3s_FUNC);
-	glNormal3s(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glNormal3s_FUNC);
-}
-#endif
-
-#ifndef NO_glNormal3sv
-JNIEXPORT void JNICALL GL_NATIVE(glNormal3sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glNormal3sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glNormal3sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glNormal3sv_FUNC);
-}
-#endif
-
-#ifndef NO_glNormalPointer
-JNIEXPORT void JNICALL GL_NATIVE(glNormalPointer)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glNormalPointer_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glNormalPointer(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glNormalPointer_FUNC);
-}
-#endif
-
-#ifndef NO_glOrtho
-JNIEXPORT void JNICALL GL_NATIVE(glOrtho)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3, jdouble arg4, jdouble arg5)
-{
-	GL_NATIVE_ENTER(env, that, glOrtho_FUNC);
-	glOrtho(arg0, arg1, arg2, arg3, arg4, arg5);
-	GL_NATIVE_EXIT(env, that, glOrtho_FUNC);
-}
-#endif
-
-#ifndef NO_glPassThrough
-JNIEXPORT void JNICALL GL_NATIVE(glPassThrough)
-	(JNIEnv *env, jclass that, jfloat arg0)
-{
-	GL_NATIVE_ENTER(env, that, glPassThrough_FUNC);
-	glPassThrough(arg0);
-	GL_NATIVE_EXIT(env, that, glPassThrough_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelMapfv
-JNIEXPORT void JNICALL GL_NATIVE(glPixelMapfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glPixelMapfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glPixelMapfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glPixelMapfv_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelMapuiv
-JNIEXPORT void JNICALL GL_NATIVE(glPixelMapuiv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glPixelMapuiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glPixelMapuiv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glPixelMapuiv_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelMapusv
-JNIEXPORT void JNICALL GL_NATIVE(glPixelMapusv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jshortArray arg2)
-{
-	jshort *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glPixelMapusv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetShortArrayElements(env, arg2, NULL);
-	}
-	glPixelMapusv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseShortArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glPixelMapusv_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelStoref
-JNIEXPORT void JNICALL GL_NATIVE(glPixelStoref)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glPixelStoref_FUNC);
-	glPixelStoref(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glPixelStoref_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelStorei
-JNIEXPORT void JNICALL GL_NATIVE(glPixelStorei)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glPixelStorei_FUNC);
-	glPixelStorei(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glPixelStorei_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelTransferf
-JNIEXPORT void JNICALL GL_NATIVE(glPixelTransferf)
-	(JNIEnv *env, jclass that, jint arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glPixelTransferf_FUNC);
-	glPixelTransferf(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glPixelTransferf_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelTransferi
-JNIEXPORT void JNICALL GL_NATIVE(glPixelTransferi)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glPixelTransferi_FUNC);
-	glPixelTransferi(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glPixelTransferi_FUNC);
-}
-#endif
-
-#ifndef NO_glPixelZoom
-JNIEXPORT void JNICALL GL_NATIVE(glPixelZoom)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glPixelZoom_FUNC);
-	glPixelZoom(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glPixelZoom_FUNC);
-}
-#endif
-
-#ifndef NO_glPointSize
-JNIEXPORT void JNICALL GL_NATIVE(glPointSize)
-	(JNIEnv *env, jclass that, jfloat arg0)
-{
-	GL_NATIVE_ENTER(env, that, glPointSize_FUNC);
-	glPointSize(arg0);
-	GL_NATIVE_EXIT(env, that, glPointSize_FUNC);
-}
-#endif
-
-#ifndef NO_glPolygonMode
-JNIEXPORT void JNICALL GL_NATIVE(glPolygonMode)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glPolygonMode_FUNC);
-	glPolygonMode(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glPolygonMode_FUNC);
-}
-#endif
-
-#ifndef NO_glPolygonOffset
-JNIEXPORT void JNICALL GL_NATIVE(glPolygonOffset)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glPolygonOffset_FUNC);
-	glPolygonOffset(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glPolygonOffset_FUNC);
-}
-#endif
-
-#ifndef NO_glPolygonStipple
-JNIEXPORT void JNICALL GL_NATIVE(glPolygonStipple)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glPolygonStipple_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	}
-	glPolygonStipple(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glPolygonStipple_FUNC);
-}
-#endif
-
-#ifndef NO_glPopAttrib
-JNIEXPORT void JNICALL GL_NATIVE(glPopAttrib)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glPopAttrib_FUNC);
-	glPopAttrib();
-	GL_NATIVE_EXIT(env, that, glPopAttrib_FUNC);
-}
-#endif
-
-#ifndef NO_glPopClientAttrib
-JNIEXPORT void JNICALL GL_NATIVE(glPopClientAttrib)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glPopClientAttrib_FUNC);
-	glPopClientAttrib();
-	GL_NATIVE_EXIT(env, that, glPopClientAttrib_FUNC);
-}
-#endif
-
-#ifndef NO_glPopMatrix
-JNIEXPORT void JNICALL GL_NATIVE(glPopMatrix)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glPopMatrix_FUNC);
-	glPopMatrix();
-	GL_NATIVE_EXIT(env, that, glPopMatrix_FUNC);
-}
-#endif
-
-#ifndef NO_glPopName
-JNIEXPORT void JNICALL GL_NATIVE(glPopName)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glPopName_FUNC);
-	glPopName();
-	GL_NATIVE_EXIT(env, that, glPopName_FUNC);
-}
-#endif
-
-#ifndef NO_glPrioritizeTextures
-JNIEXPORT void JNICALL GL_NATIVE(glPrioritizeTextures)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1, jfloatArray arg2)
-{
-	jint *lparg1=NULL;
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glPrioritizeTextures_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glPrioritizeTextures(arg0, lparg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glPrioritizeTextures_FUNC);
-}
-#endif
-
-#ifndef NO_glPushAttrib
-JNIEXPORT void JNICALL GL_NATIVE(glPushAttrib)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glPushAttrib_FUNC);
-	glPushAttrib(arg0);
-	GL_NATIVE_EXIT(env, that, glPushAttrib_FUNC);
-}
-#endif
-
-#ifndef NO_glPushClientAttrib
-JNIEXPORT void JNICALL GL_NATIVE(glPushClientAttrib)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glPushClientAttrib_FUNC);
-	glPushClientAttrib(arg0);
-	GL_NATIVE_EXIT(env, that, glPushClientAttrib_FUNC);
-}
-#endif
-
-#ifndef NO_glPushMatrix
-JNIEXPORT void JNICALL GL_NATIVE(glPushMatrix)
-	(JNIEnv *env, jclass that)
-{
-	GL_NATIVE_ENTER(env, that, glPushMatrix_FUNC);
-	glPushMatrix();
-	GL_NATIVE_EXIT(env, that, glPushMatrix_FUNC);
-}
-#endif
-
-#ifndef NO_glPushName
-JNIEXPORT void JNICALL GL_NATIVE(glPushName)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glPushName_FUNC);
-	glPushName(arg0);
-	GL_NATIVE_EXIT(env, that, glPushName_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2d
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos2d_FUNC);
-	glRasterPos2d(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glRasterPos2d_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2dv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos2dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glRasterPos2dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos2dv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2f
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos2f_FUNC);
-	glRasterPos2f(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glRasterPos2f_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2fv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos2fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glRasterPos2fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos2fv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2i
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos2i_FUNC);
-	glRasterPos2i(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glRasterPos2i_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2iv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos2iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glRasterPos2iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos2iv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2s
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos2s_FUNC);
-	glRasterPos2s(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glRasterPos2s_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos2sv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos2sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos2sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glRasterPos2sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos2sv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3d
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos3d_FUNC);
-	glRasterPos3d(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glRasterPos3d_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3dv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos3dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glRasterPos3dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos3dv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3f
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos3f_FUNC);
-	glRasterPos3f(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glRasterPos3f_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3fv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos3fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glRasterPos3fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos3fv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3i
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos3i_FUNC);
-	glRasterPos3i(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glRasterPos3i_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3iv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos3iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glRasterPos3iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos3iv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3s
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos3s_FUNC);
-	glRasterPos3s(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glRasterPos3s_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos3sv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos3sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos3sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glRasterPos3sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos3sv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4d
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos4d_FUNC);
-	glRasterPos4d(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRasterPos4d_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4dv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos4dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glRasterPos4dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos4dv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4f
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos4f_FUNC);
-	glRasterPos4f(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRasterPos4f_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4fv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos4fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glRasterPos4fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos4fv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4i
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos4i_FUNC);
-	glRasterPos4i(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRasterPos4i_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4iv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos4iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glRasterPos4iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos4iv_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4s
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2, jshort arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRasterPos4s_FUNC);
-	glRasterPos4s(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRasterPos4s_FUNC);
-}
-#endif
-
-#ifndef NO_glRasterPos4sv
-JNIEXPORT void JNICALL GL_NATIVE(glRasterPos4sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glRasterPos4sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glRasterPos4sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRasterPos4sv_FUNC);
-}
-#endif
-
-#ifndef NO_glReadBuffer
-JNIEXPORT void JNICALL GL_NATIVE(glReadBuffer)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glReadBuffer_FUNC);
-	glReadBuffer(arg0);
-	GL_NATIVE_EXIT(env, that, glReadBuffer_FUNC);
-}
-#endif
-
-#ifndef NO_glReadPixels
-JNIEXPORT void JNICALL GL_NATIVE(glReadPixels)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jintArray arg6)
-{
-	jint *lparg6=NULL;
-	GL_NATIVE_ENTER(env, that, glReadPixels_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg6) lparg6 = (*env)->GetPrimitiveArrayCritical(env, arg6, NULL);
-	} else
-#endif
-	{
-		if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL);
-	}
-	glReadPixels(arg0, arg1, arg2, arg3, arg4, arg5, lparg6);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg6) (*env)->ReleasePrimitiveArrayCritical(env, arg6, lparg6, 0);
-	} else
-#endif
-	{
-		if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glReadPixels_FUNC);
-}
-#endif
-
-#ifndef NO_glRectd
-JNIEXPORT void JNICALL GL_NATIVE(glRectd)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRectd_FUNC);
-	glRectd(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRectd_FUNC);
-}
-#endif
-
-#ifndef NO_glRectdv
-JNIEXPORT void JNICALL GL_NATIVE(glRectdv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0, jdoubleArray arg1)
-{
-	jdouble *lparg0=NULL;
-	jdouble *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glRectdv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetDoubleArrayElements(env, arg1, NULL);
-	}
-	glRectdv(lparg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseDoubleArrayElements(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRectdv_FUNC);
-}
-#endif
-
-#ifndef NO_glRectf
-JNIEXPORT void JNICALL GL_NATIVE(glRectf)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRectf_FUNC);
-	glRectf(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRectf_FUNC);
-}
-#endif
-
-#ifndef NO_glRectfv
-JNIEXPORT void JNICALL GL_NATIVE(glRectfv)
-	(JNIEnv *env, jclass that, jfloatArray arg0, jfloatArray arg1)
-{
-	jfloat *lparg0=NULL;
-	jfloat *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glRectfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL);
-	}
-	glRectfv(lparg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRectfv_FUNC);
-}
-#endif
-
-#ifndef NO_glRecti
-JNIEXPORT void JNICALL GL_NATIVE(glRecti)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRecti_FUNC);
-	glRecti(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRecti_FUNC);
-}
-#endif
-
-#ifndef NO_glRectiv
-JNIEXPORT void JNICALL GL_NATIVE(glRectiv)
-	(JNIEnv *env, jclass that, jintArray arg0, jintArray arg1)
-{
-	jint *lparg0=NULL;
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glRectiv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	}
-	glRectiv(lparg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRectiv_FUNC);
-}
-#endif
-
-#ifndef NO_glRects
-JNIEXPORT void JNICALL GL_NATIVE(glRects)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2, jshort arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRects_FUNC);
-	glRects(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRects_FUNC);
-}
-#endif
-
-#ifndef NO_glRectsv
-JNIEXPORT void JNICALL GL_NATIVE(glRectsv)
-	(JNIEnv *env, jclass that, jshortArray arg0, jshortArray arg1)
-{
-	jshort *lparg0=NULL;
-	jshort *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glRectsv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetPrimitiveArrayCritical(env, arg1, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-		if (arg1) lparg1 = (*env)->GetShortArrayElements(env, arg1, NULL);
-	}
-	glRectsv(lparg0, lparg1);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg1) (*env)->ReleasePrimitiveArrayCritical(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg1) (*env)->ReleaseShortArrayElements(env, arg1, lparg1, 0);
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glRectsv_FUNC);
-}
-#endif
-
-#ifndef NO_glRenderMode
-JNIEXPORT jint JNICALL GL_NATIVE(glRenderMode)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	jint rc;
-	GL_NATIVE_ENTER(env, that, glRenderMode_FUNC);
-	rc = (jint)glRenderMode(arg0);
-	GL_NATIVE_EXIT(env, that, glRenderMode_FUNC);
-	return rc;
-}
-#endif
-
-#ifndef NO_glRotated
-JNIEXPORT void JNICALL GL_NATIVE(glRotated)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRotated_FUNC);
-	glRotated(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRotated_FUNC);
-}
-#endif
-
-#ifndef NO_glRotatef
-JNIEXPORT void JNICALL GL_NATIVE(glRotatef)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glRotatef_FUNC);
-	glRotatef(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glRotatef_FUNC);
-}
-#endif
-
-#ifndef NO_glScaled
-JNIEXPORT void JNICALL GL_NATIVE(glScaled)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glScaled_FUNC);
-	glScaled(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glScaled_FUNC);
-}
-#endif
-
-#ifndef NO_glScalef
-JNIEXPORT void JNICALL GL_NATIVE(glScalef)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glScalef_FUNC);
-	glScalef(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glScalef_FUNC);
-}
-#endif
-
-#ifndef NO_glScissor
-JNIEXPORT void JNICALL GL_NATIVE(glScissor)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glScissor_FUNC);
-	glScissor(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glScissor_FUNC);
-}
-#endif
-
-#ifndef NO_glSelectBuffer
-JNIEXPORT void JNICALL GL_NATIVE(glSelectBuffer)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
-	jint *lparg1=NULL;
-	GL_NATIVE_ENTER(env, that, glSelectBuffer_FUNC);
-	if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	glSelectBuffer(arg0, lparg1);
-	if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	GL_NATIVE_EXIT(env, that, glSelectBuffer_FUNC);
-}
-#endif
-
-#ifndef NO_glShadeModel
-JNIEXPORT void JNICALL GL_NATIVE(glShadeModel)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glShadeModel_FUNC);
-	glShadeModel(arg0);
-	GL_NATIVE_EXIT(env, that, glShadeModel_FUNC);
-}
-#endif
-
-#ifndef NO_glStencilFunc
-JNIEXPORT void JNICALL GL_NATIVE(glStencilFunc)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glStencilFunc_FUNC);
-	glStencilFunc(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glStencilFunc_FUNC);
-}
-#endif
-
-#ifndef NO_glStencilMask
-JNIEXPORT void JNICALL GL_NATIVE(glStencilMask)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glStencilMask_FUNC);
-	glStencilMask(arg0);
-	GL_NATIVE_EXIT(env, that, glStencilMask_FUNC);
-}
-#endif
-
-#ifndef NO_glStencilOp
-JNIEXPORT void JNICALL GL_NATIVE(glStencilOp)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glStencilOp_FUNC);
-	glStencilOp(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glStencilOp_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1d
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1d)
-	(JNIEnv *env, jclass that, jdouble arg0)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord1d_FUNC);
-	glTexCoord1d(arg0);
-	GL_NATIVE_EXIT(env, that, glTexCoord1d_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1dv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord1dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glTexCoord1dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord1dv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1f
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1f)
-	(JNIEnv *env, jclass that, jfloat arg0)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord1f_FUNC);
-	glTexCoord1f(arg0);
-	GL_NATIVE_EXIT(env, that, glTexCoord1f_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1fv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord1fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glTexCoord1fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord1fv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1i
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1i)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord1i_FUNC);
-	glTexCoord1i(arg0);
-	GL_NATIVE_EXIT(env, that, glTexCoord1i_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1iv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord1iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glTexCoord1iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord1iv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1s
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1s)
-	(JNIEnv *env, jclass that, jshort arg0)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord1s_FUNC);
-	glTexCoord1s(arg0);
-	GL_NATIVE_EXIT(env, that, glTexCoord1s_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord1sv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord1sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord1sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glTexCoord1sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord1sv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2d
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord2d_FUNC);
-	glTexCoord2d(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glTexCoord2d_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2dv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord2dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glTexCoord2dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord2dv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2f
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord2f_FUNC);
-	glTexCoord2f(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glTexCoord2f_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2fv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord2fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glTexCoord2fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord2fv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2i
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord2i_FUNC);
-	glTexCoord2i(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glTexCoord2i_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2iv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord2iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glTexCoord2iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord2iv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2s
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord2s_FUNC);
-	glTexCoord2s(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glTexCoord2s_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord2sv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord2sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord2sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glTexCoord2sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord2sv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3d
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord3d_FUNC);
-	glTexCoord3d(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexCoord3d_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3dv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord3dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glTexCoord3dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord3dv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3f
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord3f_FUNC);
-	glTexCoord3f(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexCoord3f_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3fv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord3fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glTexCoord3fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord3fv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3i
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord3i_FUNC);
-	glTexCoord3i(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexCoord3i_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3iv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord3iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glTexCoord3iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord3iv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3s
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord3s_FUNC);
-	glTexCoord3s(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexCoord3s_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord3sv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord3sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord3sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glTexCoord3sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord3sv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4d
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord4d_FUNC);
-	glTexCoord4d(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glTexCoord4d_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4dv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord4dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glTexCoord4dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord4dv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4f
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord4f_FUNC);
-	glTexCoord4f(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glTexCoord4f_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4fv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord4fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glTexCoord4fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord4fv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4i
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord4i_FUNC);
-	glTexCoord4i(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glTexCoord4i_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4iv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord4iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glTexCoord4iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord4iv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4s
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2, jshort arg3)
-{
-	GL_NATIVE_ENTER(env, that, glTexCoord4s_FUNC);
-	glTexCoord4s(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glTexCoord4s_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoord4sv
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoord4sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoord4sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glTexCoord4sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoord4sv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexCoordPointer
-JNIEXPORT void JNICALL GL_NATIVE(glTexCoordPointer)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
-	jint *lparg3=NULL;
-	GL_NATIVE_ENTER(env, that, glTexCoordPointer_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) lparg3 = (*env)->GetPrimitiveArrayCritical(env, arg3, NULL);
-	} else
-#endif
-	{
-		if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-	}
-	glTexCoordPointer(arg0, arg1, arg2, lparg3);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) (*env)->ReleasePrimitiveArrayCritical(env, arg3, lparg3, 0);
-	} else
-#endif
-	{
-		if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexCoordPointer_FUNC);
-}
-#endif
-
-#ifndef NO_glTexEnvf
-JNIEXPORT void JNICALL GL_NATIVE(glTexEnvf)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexEnvf_FUNC);
-	glTexEnvf(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexEnvf_FUNC);
-}
-#endif
-
-#ifndef NO_glTexEnvfv
-JNIEXPORT void JNICALL GL_NATIVE(glTexEnvfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glTexEnvfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glTexEnvfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexEnvfv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexEnvi
-JNIEXPORT void JNICALL GL_NATIVE(glTexEnvi)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexEnvi_FUNC);
-	glTexEnvi(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexEnvi_FUNC);
-}
-#endif
-
-#ifndef NO_glTexEnviv
-JNIEXPORT void JNICALL GL_NATIVE(glTexEnviv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glTexEnviv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glTexEnviv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexEnviv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexGend
-JNIEXPORT void JNICALL GL_NATIVE(glTexGend)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexGend_FUNC);
-	glTexGend(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexGend_FUNC);
-}
-#endif
-
-#ifndef NO_glTexGendv
-JNIEXPORT void JNICALL GL_NATIVE(glTexGendv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jdoubleArray arg2)
-{
-	jdouble *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glTexGendv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetDoubleArrayElements(env, arg2, NULL);
-	}
-	glTexGendv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseDoubleArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexGendv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexGenf
-JNIEXPORT void JNICALL GL_NATIVE(glTexGenf)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexGenf_FUNC);
-	glTexGenf(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexGenf_FUNC);
-}
-#endif
-
-#ifndef NO_glTexGenfv
-JNIEXPORT void JNICALL GL_NATIVE(glTexGenfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glTexGenfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glTexGenfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexGenfv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexGeni
-JNIEXPORT void JNICALL GL_NATIVE(glTexGeni)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexGeni_FUNC);
-	glTexGeni(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexGeni_FUNC);
-}
-#endif
-
-#ifndef NO_glTexGeniv
-JNIEXPORT void JNICALL GL_NATIVE(glTexGeniv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glTexGeniv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glTexGeniv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexGeniv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexImage1D
-JNIEXPORT void JNICALL GL_NATIVE(glTexImage1D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jintArray arg7)
-{
-	jint *lparg7=NULL;
-	GL_NATIVE_ENTER(env, that, glTexImage1D_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg7) lparg7 = (*env)->GetPrimitiveArrayCritical(env, arg7, NULL);
-	} else
-#endif
-	{
-		if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL);
-	}
-	glTexImage1D(arg0, arg1, arg2, arg3, arg4, arg5, arg6, lparg7);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg7) (*env)->ReleasePrimitiveArrayCritical(env, arg7, lparg7, 0);
-	} else
-#endif
-	{
-		if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexImage1D_FUNC);
-}
-#endif
-
-#ifndef NO_glTexImage2D
-JNIEXPORT void JNICALL GL_NATIVE(glTexImage2D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jbyteArray arg8)
-{
-	jbyte *lparg8=NULL;
-	GL_NATIVE_ENTER(env, that, glTexImage2D_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg8) lparg8 = (*env)->GetPrimitiveArrayCritical(env, arg8, NULL);
-	} else
-#endif
-	{
-		if (arg8) lparg8 = (*env)->GetByteArrayElements(env, arg8, NULL);
-	}
-	glTexImage2D(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, lparg8);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg8) (*env)->ReleasePrimitiveArrayCritical(env, arg8, lparg8, 0);
-	} else
-#endif
-	{
-		if (arg8) (*env)->ReleaseByteArrayElements(env, arg8, lparg8, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexImage2D_FUNC);
-}
-#endif
-
-#ifndef NO_glTexParameterf
-JNIEXPORT void JNICALL GL_NATIVE(glTexParameterf)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexParameterf_FUNC);
-	glTexParameterf(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexParameterf_FUNC);
-}
-#endif
-
-#ifndef NO_glTexParameterfv
-JNIEXPORT void JNICALL GL_NATIVE(glTexParameterfv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glTexParameterfv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	}
-	glTexParameterfv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexParameterfv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexParameteri
-JNIEXPORT void JNICALL GL_NATIVE(glTexParameteri)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTexParameteri_FUNC);
-	glTexParameteri(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTexParameteri_FUNC);
-}
-#endif
-
-#ifndef NO_glTexParameteriv
-JNIEXPORT void JNICALL GL_NATIVE(glTexParameteriv)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	GL_NATIVE_ENTER(env, that, glTexParameteriv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) lparg2 = (*env)->GetPrimitiveArrayCritical(env, arg2, NULL);
-	} else
-#endif
-	{
-		if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	}
-	glTexParameteriv(arg0, arg1, lparg2);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg2) (*env)->ReleasePrimitiveArrayCritical(env, arg2, lparg2, 0);
-	} else
-#endif
-	{
-		if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexParameteriv_FUNC);
-}
-#endif
-
-#ifndef NO_glTexSubImage1D
-JNIEXPORT void JNICALL GL_NATIVE(glTexSubImage1D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jintArray arg6)
-{
-	jint *lparg6=NULL;
-	GL_NATIVE_ENTER(env, that, glTexSubImage1D_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg6) lparg6 = (*env)->GetPrimitiveArrayCritical(env, arg6, NULL);
-	} else
-#endif
-	{
-		if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL);
-	}
-	glTexSubImage1D(arg0, arg1, arg2, arg3, arg4, arg5, lparg6);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg6) (*env)->ReleasePrimitiveArrayCritical(env, arg6, lparg6, 0);
-	} else
-#endif
-	{
-		if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexSubImage1D_FUNC);
-}
-#endif
-
-#ifndef NO_glTexSubImage2D
-JNIEXPORT void JNICALL GL_NATIVE(glTexSubImage2D)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jintArray arg8)
-{
-	jint *lparg8=NULL;
-	GL_NATIVE_ENTER(env, that, glTexSubImage2D_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg8) lparg8 = (*env)->GetPrimitiveArrayCritical(env, arg8, NULL);
-	} else
-#endif
-	{
-		if (arg8) lparg8 = (*env)->GetIntArrayElements(env, arg8, NULL);
-	}
-	glTexSubImage2D(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, lparg8);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg8) (*env)->ReleasePrimitiveArrayCritical(env, arg8, lparg8, 0);
-	} else
-#endif
-	{
-		if (arg8) (*env)->ReleaseIntArrayElements(env, arg8, lparg8, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glTexSubImage2D_FUNC);
-}
-#endif
-
-#ifndef NO_glTranslated
-JNIEXPORT void JNICALL GL_NATIVE(glTranslated)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTranslated_FUNC);
-	glTranslated(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTranslated_FUNC);
-}
-#endif
-
-#ifndef NO_glTranslatef
-JNIEXPORT void JNICALL GL_NATIVE(glTranslatef)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glTranslatef_FUNC);
-	glTranslatef(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glTranslatef_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2d
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1)
-{
-	GL_NATIVE_ENTER(env, that, glVertex2d_FUNC);
-	glVertex2d(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glVertex2d_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2dv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex2dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glVertex2dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex2dv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2f
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1)
-{
-	GL_NATIVE_ENTER(env, that, glVertex2f_FUNC);
-	glVertex2f(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glVertex2f_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2fv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex2fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glVertex2fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex2fv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2i
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	GL_NATIVE_ENTER(env, that, glVertex2i_FUNC);
-	glVertex2i(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glVertex2i_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2iv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex2iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glVertex2iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex2iv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2s
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1)
-{
-	GL_NATIVE_ENTER(env, that, glVertex2s_FUNC);
-	glVertex2s(arg0, arg1);
-	GL_NATIVE_EXIT(env, that, glVertex2s_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex2sv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex2sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex2sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glVertex2sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex2sv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3d
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2)
-{
-	GL_NATIVE_ENTER(env, that, glVertex3d_FUNC);
-	glVertex3d(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glVertex3d_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3dv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex3dv_FUNC);
-	if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	glVertex3dv(lparg0);
-	if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	GL_NATIVE_EXIT(env, that, glVertex3dv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3f
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2)
-{
-	GL_NATIVE_ENTER(env, that, glVertex3f_FUNC);
-	glVertex3f(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glVertex3f_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3fv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex3fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glVertex3fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex3fv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3i
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	GL_NATIVE_ENTER(env, that, glVertex3i_FUNC);
-	glVertex3i(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glVertex3i_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3iv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex3iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glVertex3iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex3iv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3s
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2)
-{
-	GL_NATIVE_ENTER(env, that, glVertex3s_FUNC);
-	glVertex3s(arg0, arg1, arg2);
-	GL_NATIVE_EXIT(env, that, glVertex3s_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex3sv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex3sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex3sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glVertex3sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex3sv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4d
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4d)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	GL_NATIVE_ENTER(env, that, glVertex4d_FUNC);
-	glVertex4d(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glVertex4d_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4dv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4dv)
-	(JNIEnv *env, jclass that, jdoubleArray arg0)
-{
-	jdouble *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex4dv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
-	}
-	glVertex4dv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex4dv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4f
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4f)
-	(JNIEnv *env, jclass that, jfloat arg0, jfloat arg1, jfloat arg2, jfloat arg3)
-{
-	GL_NATIVE_ENTER(env, that, glVertex4f_FUNC);
-	glVertex4f(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glVertex4f_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4fv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4fv)
-	(JNIEnv *env, jclass that, jfloatArray arg0)
-{
-	jfloat *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex4fv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
-	}
-	glVertex4fv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex4fv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4i
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4i)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glVertex4i_FUNC);
-	glVertex4i(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glVertex4i_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4iv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4iv)
-	(JNIEnv *env, jclass that, jintArray arg0)
-{
-	jint *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex4iv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
-	}
-	glVertex4iv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex4iv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4s
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4s)
-	(JNIEnv *env, jclass that, jshort arg0, jshort arg1, jshort arg2, jshort arg3)
-{
-	GL_NATIVE_ENTER(env, that, glVertex4s_FUNC);
-	glVertex4s(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glVertex4s_FUNC);
-}
-#endif
-
-#ifndef NO_glVertex4sv
-JNIEXPORT void JNICALL GL_NATIVE(glVertex4sv)
-	(JNIEnv *env, jclass that, jshortArray arg0)
-{
-	jshort *lparg0=NULL;
-	GL_NATIVE_ENTER(env, that, glVertex4sv_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) lparg0 = (*env)->GetPrimitiveArrayCritical(env, arg0, NULL);
-	} else
-#endif
-	{
-		if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
-	}
-	glVertex4sv(lparg0);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg0) (*env)->ReleasePrimitiveArrayCritical(env, arg0, lparg0, 0);
-	} else
-#endif
-	{
-		if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertex4sv_FUNC);
-}
-#endif
-
-#ifndef NO_glVertexPointer
-JNIEXPORT void JNICALL GL_NATIVE(glVertexPointer)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
-	jint *lparg3=NULL;
-	GL_NATIVE_ENTER(env, that, glVertexPointer_FUNC);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) lparg3 = (*env)->GetPrimitiveArrayCritical(env, arg3, NULL);
-	} else
-#endif
-	{
-		if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-	}
-	glVertexPointer(arg0, arg1, arg2, lparg3);
-#ifdef JNI_VERSION_1_2
-	if (IS_JNI_1_2) {
-		if (arg3) (*env)->ReleasePrimitiveArrayCritical(env, arg3, lparg3, 0);
-	} else
-#endif
-	{
-		if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
-	}
-	GL_NATIVE_EXIT(env, that, glVertexPointer_FUNC);
-}
-#endif
-
-#ifndef NO_glViewport
-JNIEXPORT void JNICALL GL_NATIVE(glViewport)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	GL_NATIVE_ENTER(env, that, glViewport_FUNC);
-	glViewport(arg0, arg1, arg2, arg3);
-	GL_NATIVE_EXIT(env, that, glViewport_FUNC);
-}
-#endif
-
diff --git a/bundles/org.eclipse.swt.opengl/common/library/glu.c b/bundles/org.eclipse.swt.opengl/common/library/glu.c
deleted file mode 100644
index 5f49ee9..0000000
--- a/bundles/org.eclipse.swt.opengl/common/library/glu.c
+++ /dev/null
@@ -1,546 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-#ifdef WIN32
-#include <windows.h>
-#endif
-#include <GL/glu.h>
-#include "swt.h"
-
-#define GLU_NATIVE(func) Java_org_eclipse_swt_opengl_GLU_##func
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluBeginCurve)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluBeginCurve\n")
-	gluBeginCurve((GLUnurbsObj *)arg0);
-	NATIVE_EXIT(env, that, "gluBeginCurve\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluBeginPolygon)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluBeginPolygon\n")
-	gluBeginPolygon((GLUtesselator *)arg0);
-	NATIVE_EXIT(env, that, "gluBeginPolygon\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluBeginSurface)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluBeginSurface\n")
-	gluBeginSurface((GLUnurbs *)arg0);
-	NATIVE_EXIT(env, that, "gluBeginSurface\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluBeginTrim)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluBeginTrim\n")
-	gluBeginTrim((GLUnurbs *)arg0);
-	NATIVE_EXIT(env, that, "gluBeginTrim\n")
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluBuild1DMipmaps)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluBuild1DMipmaps\n")
-	rc = (jint)gluBuild1DMipmaps(arg0, arg1, arg2, arg3, arg4, (const void *)arg5);
-	NATIVE_EXIT(env, that, "gluBuild1DMipmaps\n")
-	return rc;
-}
-
-/*
-JNIEXPORT jint JNICALL GLU_NATIVE(gluBuild2DMipmaps)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluBuild2DMipmaps\n")
-	rc = (jint)gluBuild2DMipmaps(arg0, arg1, arg2, arg3, arg4, arg5, (const void *)arg6);
-	NATIVE_EXIT(env, that, "gluBuild2DMipmaps\n")
-	return rc;
-}
-*/
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluBuild2DMipmaps)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jbyteArray arg6)
-{
-	jbyte *lparg6=NULL;
-	jint rc;
-	
-	NATIVE_ENTER(env, that, "gluBuild2DMipmaps\n")
-	if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL);
-	rc = (jint)gluBuild2DMipmaps(arg0, arg1, arg2, arg3, arg4, arg5, (const void *)lparg6);
-	if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0);	
-	NATIVE_EXIT(env, that, "gluBuild2DMipmaps\n")
-	return rc;
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluCylinder)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2, jdouble arg3, jint arg4, jint arg5)
-{
-	NATIVE_ENTER(env, that, "gluCylinder\n")
-	gluCylinder((GLUquadric *)arg0, arg1, arg2, arg3, arg4, arg5);
-	NATIVE_EXIT(env, that, "gluCylinder\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluDeleteNurbsRenderer)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluDeleteNurbsRenderer\n")
-	gluDeleteNurbsRenderer((GLUnurbs *)arg0);
-	NATIVE_EXIT(env, that, "gluDeleteNurbsRenderer\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluDeleteQuadric)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluDeleteQuadric\n")
-	gluDeleteQuadric((GLUquadric *)arg0);
-	NATIVE_EXIT(env, that, "gluDeleteQuadric\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluDeleteTess)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluDeleteTess\n")
-	gluDeleteTess((GLUtesselator *)arg0);
-	NATIVE_EXIT(env, that, "gluDeleteTess\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluDisk)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2, jint arg3, jint arg4)
-{
-	NATIVE_ENTER(env, that, "gluDisk\n")
-	gluDisk((GLUquadric *)arg0, arg1, arg2, arg3, arg4);
-	NATIVE_EXIT(env, that, "gluDisk\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluEndCurve)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluEndCurve\n")
-	gluEndCurve((GLUnurbsObj *)arg0);
-	NATIVE_EXIT(env, that, "gluEndCurve\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluEndPolygon)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluEndPolygon\n")
-	gluEndPolygon((GLUtesselator *)arg0);
-	NATIVE_EXIT(env, that, "gluEndPolygon\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluEndSurface)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluEndSurface\n")
-	gluEndSurface((GLUnurbs *)arg0);
-	NATIVE_EXIT(env, that, "gluEndSurface\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluEndTrim)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluEndTrim\n")
-	gluEndTrim((GLUnurbs *)arg0);
-	NATIVE_EXIT(env, that, "gluEndTrim\n")
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluErrorString)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluErrorString\n")
-	rc = (jint)gluErrorString(arg0);
-	NATIVE_EXIT(env, that, "gluErrorString\n")
-	return rc;
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluGetNurbsProperty)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2)
-{
-	jfloat *lparg2=NULL;
-
-	NATIVE_ENTER(env, that, "gluGetNurbsProperty\n")
-	if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	gluGetNurbsProperty((GLUnurbs *)arg0, arg1, lparg2);
-	if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	NATIVE_EXIT(env, that, "gluGetNurbsProperty\n")
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluGetString)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluGetString\n")
-	rc = (jint)gluGetString(arg0);
-	NATIVE_EXIT(env, that, "gluGetString\n")
-	return rc;
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluGetTessProperty)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jdoubleArray arg2)
-{
-	jdouble *lparg2=NULL;
-
-	NATIVE_ENTER(env, that, "gluGetTessProperty\n")
-	if (arg2) lparg2 = (*env)->GetDoubleArrayElements(env, arg2, NULL);
-	gluGetTessProperty((GLUtesselator *)arg0, arg1, lparg2);
-	if (arg2) (*env)->ReleaseDoubleArrayElements(env, arg2, lparg2, 0);
-	NATIVE_EXIT(env, that, "gluGetTessProperty\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluLoadSamplingMatrices)
-	(JNIEnv *env, jclass that, jint arg0, jfloatArray arg1, jfloatArray arg2, jintArray arg3)
-{
-	jfloat *lparg1=NULL;
-	jfloat *lparg2=NULL;
-	jint *lparg3=NULL;
-
-	NATIVE_ENTER(env, that, "gluLoadSamplingMatrices\n")
-	if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL);
-	if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-	gluLoadSamplingMatrices((GLUnurbs *)arg0, lparg1, lparg2, (GLint *)lparg3);
-	if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, 0);
-	if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
-	NATIVE_EXIT(env, that, "gluLoadSamplingMatrices\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluLookAt)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3, jdouble arg4, jdouble arg5, jdouble arg6, jdouble arg7, jdouble arg8)
-{
-	NATIVE_ENTER(env, that, "gluLookAt\n")
-	gluLookAt(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
-	NATIVE_EXIT(env, that, "gluLookAt\n")
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluNewNurbsRenderer)
-	(JNIEnv *env, jclass that)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluNewNurbsRenderer\n")
-	rc = (jint)gluNewNurbsRenderer();
-	NATIVE_EXIT(env, that, "gluNewNurbsRenderer\n")
-	return rc;
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluNewQuadric)
-	(JNIEnv *env, jclass that)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluNewQuadric\n")
-	rc = (jint)gluNewQuadric();
-	NATIVE_EXIT(env, that, "gluNewQuadric\n")
-	return rc;
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluNewTess)
-	(JNIEnv *env, jclass that)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluNewTess\n")
-	rc = (jint)gluNewTess();
-	NATIVE_EXIT(env, that, "gluNewTess\n")
-	return rc;
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluNextContour)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	NATIVE_ENTER(env, that, "gluNextContour\n")
-	gluNextContour((GLUtesselator *)arg0, arg1);
-	NATIVE_EXIT(env, that, "gluNextContour\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluNurbsCallback)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	NATIVE_ENTER(env, that, "gluNurbsCallback\n")
-	gluNurbsCallback((GLUnurbs *)arg0, arg1, (GLvoid(*))arg2);
-	NATIVE_EXIT(env, that, "gluNurbsCallback\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluNurbsCurve)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2, jint arg3, jfloatArray arg4, jint arg5, jint arg6)
-{
-	jfloat *lparg2=NULL;
-	jfloat *lparg4=NULL;
-
-	NATIVE_ENTER(env, that, "gluNurbsCurve\n")
-	if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	if (arg4) lparg4 = (*env)->GetFloatArrayElements(env, arg4, NULL);
-	gluNurbsCurve((GLUnurbs *)arg0, arg1, lparg2, arg3, lparg4, arg5, arg6);
-	if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	if (arg4) (*env)->ReleaseFloatArrayElements(env, arg4, lparg4, 0);
-	NATIVE_EXIT(env, that, "gluNurbsCurve\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluNurbsProperty)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2)
-{
-	NATIVE_ENTER(env, that, "gluNurbsProperty\n")
-	gluNurbsProperty((GLUnurbs *)arg0, arg1, arg2);
-	NATIVE_EXIT(env, that, "gluNurbsProperty\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluNurbsSurface)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2, jint arg3, jfloatArray arg4, jint arg5, jint arg6, jfloatArray arg7, jint arg8, jint arg9, jint arg10)
-{
-	jfloat *lparg2=NULL;
-	jfloat *lparg4=NULL;
-	jfloat *lparg7=NULL;
-
-	NATIVE_ENTER(env, that, "gluNurbsSurface\n")
-	if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	if (arg4) lparg4 = (*env)->GetFloatArrayElements(env, arg4, NULL);
-	if (arg7) lparg7 = (*env)->GetFloatArrayElements(env, arg7, NULL);
-	gluNurbsSurface((GLUnurbs *)arg0, arg1, lparg2, arg3, lparg4, arg5, arg6, lparg7, arg8, arg9, arg10);
-	if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	if (arg4) (*env)->ReleaseFloatArrayElements(env, arg4, lparg4, 0);
-	if (arg7) (*env)->ReleaseFloatArrayElements(env, arg7, lparg7, 0);
-	NATIVE_EXIT(env, that, "gluNurbsSurface\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluOrtho2D)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	NATIVE_ENTER(env, that, "gluOrtho2D\n")
-	gluOrtho2D(arg0, arg1, arg2, arg3);
-	NATIVE_EXIT(env, that, "gluOrtho2D\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluPartialDisk)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2, jint arg3, jint arg4, jdouble arg5, jdouble arg6)
-{
-	NATIVE_ENTER(env, that, "gluPartialDisk\n")
-	gluPartialDisk((GLUquadric *)arg0, arg1, arg2, arg3, arg4, arg5, arg6);
-	NATIVE_EXIT(env, that, "gluPartialDisk\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluPerspective)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	NATIVE_ENTER(env, that, "gluPerspective\n")
-	gluPerspective(arg0, arg1, arg2, arg3);
-	NATIVE_EXIT(env, that, "gluPerspective\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluPickMatrix)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdouble arg3, jintArray arg4)
-{
-	jint *lparg4=NULL;
-
-	NATIVE_ENTER(env, that, "gluPickMatrix\n")
-	if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
-	gluPickMatrix(arg0, arg1, arg2, arg3, (GLint *)lparg4);
-	if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
-	NATIVE_EXIT(env, that, "gluPickMatrix\n")
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluProject)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdoubleArray arg3, jdoubleArray arg4, jintArray arg5, jdoubleArray arg6, jdoubleArray arg7, jdoubleArray arg8)
-{
-	jdouble *lparg3=NULL;
-	jdouble *lparg4=NULL;
-	jint *lparg5=NULL;
-	jdouble *lparg6=NULL;
-	jdouble *lparg7=NULL;
-	jdouble *lparg8=NULL;
-	jint rc;
-
-	NATIVE_ENTER(env, that, "gluProject\n")
-	if (arg3) lparg3 = (*env)->GetDoubleArrayElements(env, arg3, NULL);
-	if (arg4) lparg4 = (*env)->GetDoubleArrayElements(env, arg4, NULL);
-	if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL);
-	if (arg6) lparg6 = (*env)->GetDoubleArrayElements(env, arg6, NULL);
-	if (arg7) lparg7 = (*env)->GetDoubleArrayElements(env, arg7, NULL);
-	if (arg8) lparg8 = (*env)->GetDoubleArrayElements(env, arg8, NULL);
-	rc = (jint)gluProject(arg0, arg1, arg2, lparg3, lparg4, (GLint *)lparg5, lparg6, lparg7, lparg8);
-	if (arg3) (*env)->ReleaseDoubleArrayElements(env, arg3, lparg3, 0);
-	if (arg4) (*env)->ReleaseDoubleArrayElements(env, arg4, lparg4, 0);
-	if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0);
-	if (arg6) (*env)->ReleaseDoubleArrayElements(env, arg6, lparg6, 0);
-	if (arg7) (*env)->ReleaseDoubleArrayElements(env, arg7, lparg7, 0);
-	if (arg8) (*env)->ReleaseDoubleArrayElements(env, arg8, lparg8, 0);
-	NATIVE_EXIT(env, that, "gluProject\n")
-	return rc;
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluPwlCurve)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloatArray arg2, jint arg3, jint arg4)
-{
-	jfloat *lparg2=NULL;
-
-	NATIVE_ENTER(env, that, "gluPwlCurve\n")
-	if (arg2) lparg2 = (*env)->GetFloatArrayElements(env, arg2, NULL);
-	gluPwlCurve((GLUnurbs *)arg0, arg1, lparg2, arg3, arg4);
-	if (arg2) (*env)->ReleaseFloatArrayElements(env, arg2, lparg2, 0);
-	NATIVE_EXIT(env, that, "gluPwlCurve\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluQuadricCallback)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	NATIVE_ENTER(env, that, "gluQuadricCallback\n")
-	gluQuadricCallback((GLUquadric *)arg0, arg1, (GLvoid(*))arg2);
-	NATIVE_EXIT(env, that, "gluQuadricCallback\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluQuadricDrawStyle)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	NATIVE_ENTER(env, that, "gluQuadricDrawStyle\n")
-	gluQuadricDrawStyle((GLUquadric *)arg0, arg1);
-	NATIVE_EXIT(env, that, "gluQuadricDrawStyle\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluQuadricNormals)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	NATIVE_ENTER(env, that, "gluQuadricNormals\n")
-	gluQuadricNormals((GLUquadric *)arg0, arg1);
-	NATIVE_EXIT(env, that, "gluQuadricNormals\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluQuadricOrientation)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	NATIVE_ENTER(env, that, "gluQuadricOrientation\n")
-	gluQuadricOrientation((GLUquadric *)arg0, arg1);
-	NATIVE_EXIT(env, that, "gluQuadricOrientation\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluQuadricTexture)
-	(JNIEnv *env, jclass that, jint arg0, jboolean arg1)
-{
-	NATIVE_ENTER(env, that, "gluQuadricTexture\n")
-	gluQuadricTexture((GLUquadric *)arg0, arg1);
-	NATIVE_EXIT(env, that, "gluQuadricTexture\n")
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluScaleImage)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8)
-{
-    jint rc;
-	NATIVE_ENTER(env, that, "gluScaleImage\n")
-	rc = (jint)gluScaleImage(arg0, arg1, arg2, arg3, (const void *)arg4, arg5, arg6, arg7, (void *)arg8);
-	NATIVE_EXIT(env, that, "gluScaleImage\n")
-	return rc;
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluSphere)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jint arg2, jint arg3)
-{
-	NATIVE_ENTER(env, that, "gluSphere\n")
-	gluSphere((GLUquadric *)arg0, arg1, arg2, arg3);
-	NATIVE_EXIT(env, that, "gluSphere\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessBeginContour)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluTessBeginContour\n")
-	gluTessBeginContour((GLUtesselator *)arg0);
-	NATIVE_EXIT(env, that, "gluTessBeginContour\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessBeginPolygon)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	NATIVE_ENTER(env, that, "gluTessBeginPolygon\n")
-	gluTessBeginPolygon((GLUtesselator *)arg0, (void *)arg1);
-	NATIVE_EXIT(env, that, "gluTessBeginPolygon\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessCallback)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	NATIVE_ENTER(env, that, "gluTessCallback\n")
-	gluTessCallback((GLUtesselator *)arg0, arg1, (GLvoid(*))arg2);
-	NATIVE_EXIT(env, that, "gluTessCallback\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessEndContour)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluTessEndContour\n")
-	gluTessEndContour((GLUtesselator *)arg0);
-	NATIVE_EXIT(env, that, "gluTessEndContour\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessEndPolygon)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	NATIVE_ENTER(env, that, "gluTessEndPolygon\n")
-	gluTessEndPolygon((GLUtesselator *)arg0);
-	NATIVE_EXIT(env, that, "gluTessEndPolygon\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessNormal)
-	(JNIEnv *env, jclass that, jint arg0, jdouble arg1, jdouble arg2, jdouble arg3)
-{
-	NATIVE_ENTER(env, that, "gluTessNormal\n")
-	gluTessNormal((GLUtesselator *)arg0, arg1, arg2, arg3);
-	NATIVE_EXIT(env, that, "gluTessNormal\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessProperty)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jfloat arg2)
-{
-	NATIVE_ENTER(env, that, "gluTessProperty\n")
-	gluTessProperty((GLUtesselator *)arg0, arg1, arg2);
-	NATIVE_EXIT(env, that, "gluTessProperty\n")
-}
-
-JNIEXPORT void JNICALL GLU_NATIVE(gluTessVertex)
-	(JNIEnv *env, jclass that, jint arg0, jdoubleArray arg1, jint arg2)
-{
-	jdouble *lparg1=NULL;
-
-	NATIVE_ENTER(env, that, "gluTessVertex\n")
-	if (arg1) lparg1 = (*env)->GetDoubleArrayElements(env, arg1, NULL);
-	gluTessVertex((GLUtesselator *)arg0, lparg1, (void *)arg2);
-	if (arg1) (*env)->ReleaseDoubleArrayElements(env, arg1, lparg1, 0);
-	NATIVE_EXIT(env, that, "gluTessVertex\n")
-}
-
-JNIEXPORT jint JNICALL GLU_NATIVE(gluUnProject)
-	(JNIEnv *env, jclass that, jdouble arg0, jdouble arg1, jdouble arg2, jdoubleArray arg3, jdoubleArray arg4, jintArray arg5, jdoubleArray arg6, jdoubleArray arg7, jdoubleArray arg8)
-{
-	jdouble *lparg3=NULL;
-	jdouble *lparg4=NULL;
-	jint *lparg5=NULL;
-	jdouble *lparg6=NULL;
-	jdouble *lparg7=NULL;
-	jdouble *lparg8=NULL;
-	jint rc;
-
-	NATIVE_ENTER(env, that, "gluUnProject\n")
-	if (arg3) lparg3 = (*env)->GetDoubleArrayElements(env, arg3, NULL);
-	if (arg4) lparg4 = (*env)->GetDoubleArrayElements(env, arg4, NULL);
-	if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL);
-	if (arg6) lparg6 = (*env)->GetDoubleArrayElements(env, arg6, NULL);
-	if (arg7) lparg7 = (*env)->GetDoubleArrayElements(env, arg7, NULL);
-	if (arg8) lparg8 = (*env)->GetDoubleArrayElements(env, arg8, NULL);
-	rc = (jint)gluUnProject(arg0, arg1, arg2, lparg3, lparg4, (GLint *)lparg5, lparg6, lparg7, lparg8);
-	if (arg3) (*env)->ReleaseDoubleArrayElements(env, arg3, lparg3, 0);
-	if (arg4) (*env)->ReleaseDoubleArrayElements(env, arg4, lparg4, 0);
-	if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0);
-	if (arg6) (*env)->ReleaseDoubleArrayElements(env, arg6, lparg6, 0);
-	if (arg7) (*env)->ReleaseDoubleArrayElements(env, arg7, lparg7, 0);
-	if (arg8) (*env)->ReleaseDoubleArrayElements(env, arg8, lparg8, 0);
-	NATIVE_EXIT(env, that, "gluUnProject\n")
-	return rc;
-}
diff --git a/bundles/org.eclipse.swt.opengl/common/library/swt.h b/bundles/org.eclipse.swt.opengl/common/library/swt.h
deleted file mode 100644
index 0095fe6..0000000
--- a/bundles/org.eclipse.swt.opengl/common/library/swt.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-#ifndef INC_swt_H
-#define INC_swt_H
-
-#include "jni.h"
-
-/* For debugging */
-#define DEBUG_PRINTF(x)
-/*#define DEBUG_PRINTF(x) printf x; */
-
-/* define this to print out debug statements */
-/* #define DEBUG_CALL_PRINTS */
-/* #define DEBUG_CHECK_NULL_EXCEPTIONS */
-
-#ifdef DEBUG_CALL_PRINTS
-#define DEBUG_CALL(func) fprintf(stderr, func);
-#else
-#define DEBUG_CALL(func)
-#endif
-
-#ifdef DEBUG_CHECK_NULL_EXCEPTIONS
-#define DEBUG_CHECK_NULL(env, address) \
-	if (address == 0) { \
-		jclass clazz = (*env)->FindClass(env, "org/eclipse/swt/SWTError"); \
-		if (clazz != NULL) { \
-			(*env)->ThrowNew(env, clazz, "Argument cannot be NULL"); \
-		} \
-		return; \
-	}
-#else
-#define DEBUG_CHECK_NULL(env, address)
-#endif
-
-#define DECL_GLOB(pSym)
-#define PGLOB(x) x
-
-#define NATIVE_ENTER(env,clazz,func)
-#define NATIVE_EXIT(env,clazz,func)
-
-#endif /* ifndef INC_swt_H */
diff --git a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GL.java b/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GL.java
deleted file mode 100644
index ba4b372..0000000
--- a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GL.java
+++ /dev/null
@@ -1,1449 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-public class GL {
-
-	public static final int GL_VERSION_1_1 = 1;
-
-	/* AccumOp */
-	public static final int GL_ACCUM = 0x0100;
-	public static final int GL_LOAD = 0x0101;
-	public static final int GL_RETURN = 0x0102;
-	public static final int GL_MULT = 0x0103;
-	public static final int GL_ADD = 0x0104;
-
-	/* AlphaFunction */
-	public static final int GL_NEVER = 0x0200;
-	public static final int GL_LESS = 0x0201;
-	public static final int GL_EQUAL = 0x0202;
-	public static final int GL_LEQUAL = 0x0203;
-	public static final int GL_GREATER = 0x0204;
-	public static final int GL_NOTEQUAL = 0x0205;
-	public static final int GL_GEQUAL = 0x0206;
-	public static final int GL_ALWAYS = 0x0207;
-
-	/* AttribMask */
-	public static final int GL_CURRENT_BIT = 0x00000001;
-	public static final int GL_POINT_BIT = 0x00000002;
-	public static final int GL_LINE_BIT = 0x00000004;
-	public static final int GL_POLYGON_BIT = 0x00000008;
-	public static final int GL_POLYGON_STIPPLE_BIT = 0x00000010;
-	public static final int GL_PIXEL_MODE_BIT = 0x00000020;
-	public static final int GL_LIGHTING_BIT = 0x00000040;
-	public static final int GL_FOG_BIT = 0x00000080;
-	public static final int GL_DEPTH_BUFFER_BIT = 0x00000100;
-	public static final int GL_ACCUM_BUFFER_BIT = 0x00000200;
-	public static final int GL_STENCIL_BUFFER_BIT = 0x00000400;
-	public static final int GL_VIEWPORT_BIT = 0x00000800;
-	public static final int GL_TRANSFORM_BIT = 0x00001000;
-	public static final int GL_ENABLE_BIT = 0x00002000;
-	public static final int GL_COLOR_BUFFER_BIT = 0x00004000;
-	public static final int GL_HINT_BIT = 0x00008000;
-	public static final int GL_EVAL_BIT = 0x00010000;
-	public static final int GL_LIST_BIT = 0x00020000;
-	public static final int GL_TEXTURE_BIT = 0x00040000;
-	public static final int GL_SCISSOR_BIT = 0x00080000;
-	public static final int GL_ALL_ATTRIB_BITS = 0x000fffff;
-
-	/* BeginMode */
-	public static final int GL_POINTS = 0x0000;
-	public static final int GL_LINES = 0x0001;
-	public static final int GL_LINE_LOOP = 0x0002;
-	public static final int GL_LINE_STRIP = 0x0003;
-	public static final int GL_TRIANGLES = 0x0004;
-	public static final int GL_TRIANGLE_STRIP = 0x0005;
-	public static final int GL_TRIANGLE_FAN = 0x0006;
-	public static final int GL_QUADS = 0x0007;
-	public static final int GL_QUAD_STRIP = 0x0008;
-	public static final int GL_POLYGON = 0x0009;
-
-	/* BlendingFactorDest */
-	public static final int GL_ZERO = 0;
-	public static final int GL_ONE = 1;
-	public static final int GL_SRC_COLOR = 0x0300;
-	public static final int GL_ONE_MINUS_SRC_COLOR = 0x0301;
-	public static final int GL_SRC_ALPHA = 0x0302;
-	public static final int GL_ONE_MINUS_SRC_ALPHA = 0x0303;
-	public static final int GL_DST_ALPHA = 0x0304;
-	public static final int GL_ONE_MINUS_DST_ALPHA = 0x0305;
-
-	/* BlendingFactorSrc */
-	/*      GL_ZERO */
-	/*      GL_ONE */
-	public static final int GL_DST_COLOR = 0x0306;
-	public static final int GL_ONE_MINUS_DST_COLOR = 0x0307;
-	public static final int GL_SRC_ALPHA_SATURATE = 0x0308;
-	/*      GL_SRC_ALPHA */
-	/*      GL_ONE_MINUS_SRC_ALPHA */
-	/*      GL_DST_ALPHA */
-	/*      GL_ONE_MINUS_DST_ALPHA */
-
-	/* Boolean */
-	public static final int GL_TRUE = 1;
-	public static final int GL_FALSE = 0;
-
-	/* ClearBufferMask */
-	/*      GL_COLOR_BUFFER_BIT */
-	/*      GL_ACCUM_BUFFER_BIT */
-	/*      GL_STENCIL_BUFFER_BIT */
-	/*      GL_DEPTH_BUFFER_BIT */
-
-	/* ClientArrayType */
-	/*      GL_VERTEX_ARRAY */
-	/*      GL_NORMAL_ARRAY */
-	/*      GL_COLOR_ARRAY */
-	/*      GL_INDEX_ARRAY */
-	/*      GL_TEXTURE_COORD_ARRAY */
-	/*      GL_EDGE_FLAG_ARRAY */
-
-	/* ClipPlaneName */
-	public static final int GL_CLIP_PLANE0 = 0x3000;
-	public static final int GL_CLIP_PLANE1 = 0x3001;
-	public static final int GL_CLIP_PLANE2 = 0x3002;
-	public static final int GL_CLIP_PLANE3 = 0x3003;
-	public static final int GL_CLIP_PLANE4 = 0x3004;
-	public static final int GL_CLIP_PLANE5 = 0x3005;
-
-	/* ColorMaterialFace */
-	/*      GL_FRONT */
-	/*      GL_BACK */
-	/*      GL_FRONT_AND_BACK */
-
-	/* ColorMaterialParameter */
-	/*      GL_AMBIENT */
-	/*      GL_DIFFUSE */
-	/*      GL_SPECULAR */
-	/*      GL_EMISSION */
-	/*      GL_AMBIENT_AND_DIFFUSE */
-
-	/* ColorPointerType */
-	/*      GL_BYTE */
-	/*      GL_UNSIGNED_BYTE */
-	/*      GL_SHORT */
-	/*      GL_UNSIGNED_SHORT */
-	/*      GL_INT */
-	/*      GL_UNSIGNED_INT */
-	/*      GL_FLOAT */
-	/*      GL_DOUBLE */
-
-	/* CullFaceMode */
-	/*      GL_FRONT */
-	/*      GL_BACK */
-	/*      GL_FRONT_AND_BACK */
-
-	/* DataType */
-	public static final int GL_BYTE = 0x1400;
-	public static final int GL_UNSIGNED_BYTE = 0x1401;
-	public static final int GL_SHORT = 0x1402;
-	public static final int GL_UNSIGNED_SHORT = 0x1403;
-	public static final int GL_INT = 0x1404;
-	public static final int GL_UNSIGNED_INT = 0x1405;
-	public static final int GL_FLOAT = 0x1406;
-	public static final int GL_2_BYTES = 0x1407;
-	public static final int GL_3_BYTES = 0x1408;
-	public static final int GL_4_BYTES = 0x1409;
-	public static final int GL_DOUBLE = 0x140A;
-
-	/* DepthFunction */
-	/*      GL_NEVER */
-	/*      GL_LESS */
-	/*      GL_EQUAL */
-	/*      GL_LEQUAL */
-	/*      GL_GREATER */
-	/*      GL_NOTEQUAL */
-	/*      GL_GEQUAL */
-	/*      GL_ALWAYS */
-
-	/* DrawBufferMode */
-	public static final int GL_NONE = 0;
-	public static final int GL_FRONT_LEFT = 0x0400;
-	public static final int GL_FRONT_RIGHT = 0x0401;
-	public static final int GL_BACK_LEFT = 0x0402;
-	public static final int GL_BACK_RIGHT = 0x0403;
-	public static final int GL_FRONT = 0x0404;
-	public static final int GL_BACK = 0x0405;
-	public static final int GL_LEFT = 0x0406;
-	public static final int GL_RIGHT = 0x0407;
-	public static final int GL_FRONT_AND_BACK = 0x0408;
-	public static final int GL_AUX0 = 0x0409;
-	public static final int GL_AUX1 = 0x040A;
-	public static final int GL_AUX2 = 0x040B;
-	public static final int GL_AUX3 = 0x040C;
-
-	/* Enable */
-	/*      GL_FOG */
-	/*      GL_LIGHTING */
-	/*      GL_TEXTURE_1D */
-	/*      GL_TEXTURE_2D */
-	/*      GL_LINE_STIPPLE */
-	/*      GL_POLYGON_STIPPLE */
-	/*      GL_CULL_FACE */
-	/*      GL_ALPHA_TEST */
-	/*      GL_BLEND */
-	/*      GL_INDEX_LOGIC_OP */
-	/*      GL_COLOR_LOGIC_OP */
-	/*      GL_DITHER */
-	/*      GL_STENCIL_TEST */
-	/*      GL_DEPTH_TEST */
-	/*      GL_CLIP_PLANE0 */
-	/*      GL_CLIP_PLANE1 */
-	/*      GL_CLIP_PLANE2 */
-	/*      GL_CLIP_PLANE3 */
-	/*      GL_CLIP_PLANE4 */
-	/*      GL_CLIP_PLANE5 */
-	/*      GL_LIGHT0 */
-	/*      GL_LIGHT1 */
-	/*      GL_LIGHT2 */
-	/*      GL_LIGHT3 */
-	/*      GL_LIGHT4 */
-	/*      GL_LIGHT5 */
-	/*      GL_LIGHT6 */
-	/*      GL_LIGHT7 */
-	/*      GL_TEXTURE_GEN_S */
-	/*      GL_TEXTURE_GEN_T */
-	/*      GL_TEXTURE_GEN_R */
-	/*      GL_TEXTURE_GEN_Q */
-	/*      GL_MAP1_VERTEX_3 */
-	/*      GL_MAP1_VERTEX_4 */
-	/*      GL_MAP1_COLOR_4 */
-	/*      GL_MAP1_INDEX */
-	/*      GL_MAP1_NORMAL */
-	/*      GL_MAP1_TEXTURE_COORD_1 */
-	/*      GL_MAP1_TEXTURE_COORD_2 */
-	/*      GL_MAP1_TEXTURE_COORD_3 */
-	/*      GL_MAP1_TEXTURE_COORD_4 */
-	/*      GL_MAP2_VERTEX_3 */
-	/*      GL_MAP2_VERTEX_4 */
-	/*      GL_MAP2_COLOR_4 */
-	/*      GL_MAP2_INDEX */
-	/*      GL_MAP2_NORMAL */
-	/*      GL_MAP2_TEXTURE_COORD_1 */
-	/*      GL_MAP2_TEXTURE_COORD_2 */
-	/*      GL_MAP2_TEXTURE_COORD_3 */
-	/*      GL_MAP2_TEXTURE_COORD_4 */
-	/*      GL_POINT_SMOOTH */
-	/*      GL_LINE_SMOOTH */
-	/*      GL_POLYGON_SMOOTH */
-	/*      GL_SCISSOR_TEST */
-	/*      GL_COLOR_MATERIAL */
-	/*      GL_NORMALIZE */
-	/*      GL_AUTO_NORMAL */
-	/*      GL_VERTEX_ARRAY */
-	/*      GL_NORMAL_ARRAY */
-	/*      GL_COLOR_ARRAY */
-	/*      GL_INDEX_ARRAY */
-	/*      GL_TEXTURE_COORD_ARRAY */
-	/*      GL_EDGE_FLAG_ARRAY */
-	/*      GL_POLYGON_OFFSET_POINT */
-	/*      GL_POLYGON_OFFSET_LINE */
-	/*      GL_POLYGON_OFFSET_FILL */
-
-	/* ErrorCode */
-	public static final int GL_NO_ERROR = 0;
-	public static final int GL_INVALID_ENUM = 0x0500;
-	public static final int GL_INVALID_VALUE = 0x0501;
-	public static final int GL_INVALID_OPERATION = 0x0502;
-	public static final int GL_STACK_OVERFLOW = 0x0503;
-	public static final int GL_STACK_UNDERFLOW = 0x0504;
-	public static final int GL_OUT_OF_MEMORY = 0x0505;
-
-	/* FeedBackMode */
-	public static final int GL_2D = 0x0600;
-	public static final int GL_3D = 0x0601;
-	public static final int GL_3D_COLOR = 0x0602;
-	public static final int GL_3D_COLOR_TEXTURE = 0x0603;
-	public static final int GL_4D_COLOR_TEXTURE = 0x0604;
-
-	/* FeedBackToken */
-	public static final int GL_PASS_THROUGH_TOKEN = 0x0700;
-	public static final int GL_POINT_TOKEN = 0x0701;
-	public static final int GL_LINE_TOKEN = 0x0702;
-	public static final int GL_POLYGON_TOKEN = 0x0703;
-	public static final int GL_BITMAP_TOKEN = 0x0704;
-	public static final int GL_DRAW_PIXEL_TOKEN = 0x0705;
-	public static final int GL_COPY_PIXEL_TOKEN = 0x0706;
-	public static final int GL_LINE_RESET_TOKEN = 0x0707;
-
-	/* FogMode */
-	/*      GL_LINEAR */
-	public static final int GL_EXP = 0x0800;
-	public static final int GL_EXP2 = 0x0801;
-
-	/* FogParameter */
-	/*      GL_FOG_COLOR */
-	/*      GL_FOG_DENSITY */
-	/*      GL_FOG_END */
-	/*      GL_FOG_INDEX */
-	/*      GL_FOG_MODE */
-	/*      GL_FOG_START */
-
-	/* FrontFaceDirection */
-	public static final int GL_CW = 0x0900;
-	public static final int GL_CCW = 0x0901;
-
-	/* GetMapTarget */
-	public static final int GL_COEFF = 0x0A00;
-	public static final int GL_ORDER = 0x0A01;
-	public static final int GL_DOMAIN = 0x0A02;
-
-	/* GetPixelMap */
-	/*      GL_PIXEL_MAP_I_TO_I */
-	/*      GL_PIXEL_MAP_S_TO_S */
-	/*      GL_PIXEL_MAP_I_TO_R */
-	/*      GL_PIXEL_MAP_I_TO_G */
-	/*      GL_PIXEL_MAP_I_TO_B */
-	/*      GL_PIXEL_MAP_I_TO_A */
-	/*      GL_PIXEL_MAP_R_TO_R */
-	/*      GL_PIXEL_MAP_G_TO_G */
-	/*      GL_PIXEL_MAP_B_TO_B */
-	/*      GL_PIXEL_MAP_A_TO_A */
-
-	/* GetPointerTarget */
-	/*      GL_VERTEX_ARRAY_POINTER */
-	/*      GL_NORMAL_ARRAY_POINTER */
-	/*      GL_COLOR_ARRAY_POINTER */
-	/*      GL_INDEX_ARRAY_POINTER */
-	/*      GL_TEXTURE_COORD_ARRAY_POINTER */
-	/*      GL_EDGE_FLAG_ARRAY_POINTER */
-
-	/* GetTarget */
-	public static final int GL_CURRENT_COLOR = 0x0B00;
-	public static final int GL_CURRENT_INDEX = 0x0B01;
-	public static final int GL_CURRENT_NORMAL = 0x0B02;
-	public static final int GL_CURRENT_TEXTURE_COORDS = 0x0B03;
-	public static final int GL_CURRENT_RASTER_COLOR = 0x0B04;
-	public static final int GL_CURRENT_RASTER_INDEX = 0x0B05;
-	public static final int GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06;
-	public static final int GL_CURRENT_RASTER_POSITION = 0x0B07;
-	public static final int GL_CURRENT_RASTER_POSITION_VALID = 0x0B08;
-	public static final int GL_CURRENT_RASTER_DISTANCE = 0x0B09;
-	public static final int GL_POINT_SMOOTH = 0x0B10;
-	public static final int GL_POINT_SIZE = 0x0B11;
-	public static final int GL_POINT_SIZE_RANGE = 0x0B12;
-	public static final int GL_POINT_SIZE_GRANULARITY = 0x0B13;
-	public static final int GL_LINE_SMOOTH = 0x0B20;
-	public static final int GL_LINE_WIDTH = 0x0B21;
-	public static final int GL_LINE_WIDTH_RANGE = 0x0B22;
-	public static final int GL_LINE_WIDTH_GRANULARITY = 0x0B23;
-	public static final int GL_LINE_STIPPLE = 0x0B24;
-	public static final int GL_LINE_STIPPLE_PATTERN = 0x0B25;
-	public static final int GL_LINE_STIPPLE_REPEAT = 0x0B26;
-	public static final int GL_LIST_MODE = 0x0B30;
-	public static final int GL_MAX_LIST_NESTING = 0x0B31;
-	public static final int GL_LIST_BASE = 0x0B32;
-	public static final int GL_LIST_INDEX = 0x0B33;
-	public static final int GL_POLYGON_MODE = 0x0B40;
-	public static final int GL_POLYGON_SMOOTH = 0x0B41;
-	public static final int GL_POLYGON_STIPPLE = 0x0B42;
-	public static final int GL_EDGE_FLAG = 0x0B43;
-	public static final int GL_CULL_FACE = 0x0B44;
-	public static final int GL_CULL_FACE_MODE = 0x0B45;
-	public static final int GL_FRONT_FACE = 0x0B46;
-	public static final int GL_LIGHTING = 0x0B50;
-	public static final int GL_LIGHT_MODEL_LOCAL_VIEWER = 0x0B51;
-	public static final int GL_LIGHT_MODEL_TWO_SIDE = 0x0B52;
-	public static final int GL_LIGHT_MODEL_AMBIENT = 0x0B53;
-	public static final int GL_SHADE_MODEL = 0x0B54;
-	public static final int GL_COLOR_MATERIAL_FACE = 0x0B55;
-	public static final int GL_COLOR_MATERIAL_PARAMETER = 0x0B56;
-	public static final int GL_COLOR_MATERIAL = 0x0B57;
-	public static final int GL_FOG = 0x0B60;
-	public static final int GL_FOG_INDEX = 0x0B61;
-	public static final int GL_FOG_DENSITY = 0x0B62;
-	public static final int GL_FOG_START = 0x0B63;
-	public static final int GL_FOG_END = 0x0B64;
-	public static final int GL_FOG_MODE = 0x0B65;
-	public static final int GL_FOG_COLOR = 0x0B66;
-	public static final int GL_DEPTH_RANGE = 0x0B70;
-	public static final int GL_DEPTH_TEST = 0x0B71;
-	public static final int GL_DEPTH_WRITEMASK = 0x0B72;
-	public static final int GL_DEPTH_CLEAR_VALUE = 0x0B73;
-	public static final int GL_DEPTH_FUNC = 0x0B74;
-	public static final int GL_ACCUM_CLEAR_VALUE = 0x0B80;
-	public static final int GL_STENCIL_TEST = 0x0B90;
-	public static final int GL_STENCIL_CLEAR_VALUE = 0x0B91;
-	public static final int GL_STENCIL_FUNC = 0x0B92;
-	public static final int GL_STENCIL_VALUE_MASK = 0x0B93;
-	public static final int GL_STENCIL_FAIL = 0x0B94;
-	public static final int GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95;
-	public static final int GL_STENCIL_PASS_DEPTH_PASS = 0x0B96;
-	public static final int GL_STENCIL_REF = 0x0B97;
-	public static final int GL_STENCIL_WRITEMASK = 0x0B98;
-	public static final int GL_MATRIX_MODE = 0x0BA0;
-	public static final int GL_NORMALIZE = 0x0BA1;
-	public static final int GL_VIEWPORT = 0x0BA2;
-	public static final int GL_MODELVIEW_STACK_DEPTH = 0x0BA3;
-	public static final int GL_PROJECTION_STACK_DEPTH = 0x0BA4;
-	public static final int GL_TEXTURE_STACK_DEPTH = 0x0BA5;
-	public static final int GL_MODELVIEW_MATRIX = 0x0BA6;
-	public static final int GL_PROJECTION_MATRIX = 0x0BA7;
-	public static final int GL_TEXTURE_MATRIX = 0x0BA8;
-	public static final int GL_ATTRIB_STACK_DEPTH = 0x0BB0;
-	public static final int GL_CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1;
-	public static final int GL_ALPHA_TEST = 0x0BC0;
-	public static final int GL_ALPHA_TEST_FUNC = 0x0BC1;
-	public static final int GL_ALPHA_TEST_REF = 0x0BC2;
-	public static final int GL_DITHER = 0x0BD0;
-	public static final int GL_BLEND_DST = 0x0BE0;
-	public static final int GL_BLEND_SRC = 0x0BE1;
-	public static final int GL_BLEND = 0x0BE2;
-	public static final int GL_LOGIC_OP_MODE = 0x0BF0;
-	public static final int GL_INDEX_LOGIC_OP = 0x0BF1;
-	public static final int GL_COLOR_LOGIC_OP = 0x0BF2;
-	public static final int GL_AUX_BUFFERS = 0x0C00;
-	public static final int GL_DRAW_BUFFER = 0x0C01;
-	public static final int GL_READ_BUFFER = 0x0C02;
-	public static final int GL_SCISSOR_BOX = 0x0C10;
-	public static final int GL_SCISSOR_TEST = 0x0C11;
-	public static final int GL_INDEX_CLEAR_VALUE = 0x0C20;
-	public static final int GL_INDEX_WRITEMASK = 0x0C21;
-	public static final int GL_COLOR_CLEAR_VALUE = 0x0C22;
-	public static final int GL_COLOR_WRITEMASK = 0x0C23;
-	public static final int GL_INDEX_MODE = 0x0C30;
-	public static final int GL_RGBA_MODE = 0x0C31;
-	public static final int GL_DOUBLEBUFFER = 0x0C32;
-	public static final int GL_STEREO = 0x0C33;
-	public static final int GL_RENDER_MODE = 0x0C40;
-	public static final int GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50;
-	public static final int GL_POINT_SMOOTH_HINT = 0x0C51;
-	public static final int GL_LINE_SMOOTH_HINT = 0x0C52;
-	public static final int GL_POLYGON_SMOOTH_HINT = 0x0C53;
-	public static final int GL_FOG_HINT = 0x0C54;
-	public static final int GL_TEXTURE_GEN_S = 0x0C60;
-	public static final int GL_TEXTURE_GEN_T = 0x0C61;
-	public static final int GL_TEXTURE_GEN_R = 0x0C62;
-	public static final int GL_TEXTURE_GEN_Q = 0x0C63;
-	public static final int GL_PIXEL_MAP_I_TO_I = 0x0C70;
-	public static final int GL_PIXEL_MAP_S_TO_S = 0x0C71;
-	public static final int GL_PIXEL_MAP_I_TO_R = 0x0C72;
-	public static final int GL_PIXEL_MAP_I_TO_G = 0x0C73;
-	public static final int GL_PIXEL_MAP_I_TO_B = 0x0C74;
-	public static final int GL_PIXEL_MAP_I_TO_A = 0x0C75;
-	public static final int GL_PIXEL_MAP_R_TO_R = 0x0C76;
-	public static final int GL_PIXEL_MAP_G_TO_G = 0x0C77;
-	public static final int GL_PIXEL_MAP_B_TO_B = 0x0C78;
-	public static final int GL_PIXEL_MAP_A_TO_A = 0x0C79;
-	public static final int GL_PIXEL_MAP_I_TO_I_SIZE = 0x0CB0;
-	public static final int GL_PIXEL_MAP_S_TO_S_SIZE = 0x0CB1;
-	public static final int GL_PIXEL_MAP_I_TO_R_SIZE = 0x0CB2;
-	public static final int GL_PIXEL_MAP_I_TO_G_SIZE = 0x0CB3;
-	public static final int GL_PIXEL_MAP_I_TO_B_SIZE = 0x0CB4;
-	public static final int GL_PIXEL_MAP_I_TO_A_SIZE = 0x0CB5;
-	public static final int GL_PIXEL_MAP_R_TO_R_SIZE = 0x0CB6;
-	public static final int GL_PIXEL_MAP_G_TO_G_SIZE = 0x0CB7;
-	public static final int GL_PIXEL_MAP_B_TO_B_SIZE = 0x0CB8;
-	public static final int GL_PIXEL_MAP_A_TO_A_SIZE = 0x0CB9;
-	public static final int GL_UNPACK_SWAP_BYTES = 0x0CF0;
-	public static final int GL_UNPACK_LSB_FIRST = 0x0CF1;
-	public static final int GL_UNPACK_ROW_LENGTH = 0x0CF2;
-	public static final int GL_UNPACK_SKIP_ROWS = 0x0CF3;
-	public static final int GL_UNPACK_SKIP_PIXELS = 0x0CF4;
-	public static final int GL_UNPACK_ALIGNMENT = 0x0CF5;
-	public static final int GL_PACK_SWAP_BYTES = 0x0D00;
-	public static final int GL_PACK_LSB_FIRST = 0x0D01;
-	public static final int GL_PACK_ROW_LENGTH = 0x0D02;
-	public static final int GL_PACK_SKIP_ROWS = 0x0D03;
-	public static final int GL_PACK_SKIP_PIXELS = 0x0D04;
-	public static final int GL_PACK_ALIGNMENT = 0x0D05;
-	public static final int GL_MAP_COLOR = 0x0D10;
-	public static final int GL_MAP_STENCIL = 0x0D11;
-	public static final int GL_INDEX_SHIFT = 0x0D12;
-	public static final int GL_INDEX_OFFSET = 0x0D13;
-	public static final int GL_RED_SCALE = 0x0D14;
-	public static final int GL_RED_BIAS = 0x0D15;
-	public static final int GL_ZOOM_X = 0x0D16;
-	public static final int GL_ZOOM_Y = 0x0D17;
-	public static final int GL_GREEN_SCALE = 0x0D18;
-	public static final int GL_GREEN_BIAS = 0x0D19;
-	public static final int GL_BLUE_SCALE = 0x0D1A;
-	public static final int GL_BLUE_BIAS = 0x0D1B;
-	public static final int GL_ALPHA_SCALE = 0x0D1C;
-	public static final int GL_ALPHA_BIAS = 0x0D1D;
-	public static final int GL_DEPTH_SCALE = 0x0D1E;
-	public static final int GL_DEPTH_BIAS = 0x0D1F;
-	public static final int GL_MAX_EVAL_ORDER = 0x0D30;
-	public static final int GL_MAX_LIGHTS = 0x0D31;
-	public static final int GL_MAX_CLIP_PLANES = 0x0D32;
-	public static final int GL_MAX_TEXTURE_SIZE = 0x0D33;
-	public static final int GL_MAX_PIXEL_MAP_TABLE = 0x0D34;
-	public static final int GL_MAX_ATTRIB_STACK_DEPTH = 0x0D35;
-	public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 0x0D36;
-	public static final int GL_MAX_NAME_STACK_DEPTH = 0x0D37;
-	public static final int GL_MAX_PROJECTION_STACK_DEPTH = 0x0D38;
-	public static final int GL_MAX_TEXTURE_STACK_DEPTH = 0x0D39;
-	public static final int GL_MAX_VIEWPORT_DIMS = 0x0D3A;
-	public static final int GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0x0D3B;
-	public static final int GL_SUBPIXEL_BITS = 0x0D50;
-	public static final int GL_INDEX_BITS = 0x0D51;
-	public static final int GL_RED_BITS = 0x0D52;
-	public static final int GL_GREEN_BITS = 0x0D53;
-	public static final int GL_BLUE_BITS = 0x0D54;
-	public static final int GL_ALPHA_BITS = 0x0D55;
-	public static final int GL_DEPTH_BITS = 0x0D56;
-	public static final int GL_STENCIL_BITS = 0x0D57;
-	public static final int GL_ACCUM_RED_BITS = 0x0D58;
-	public static final int GL_ACCUM_GREEN_BITS = 0x0D59;
-	public static final int GL_ACCUM_BLUE_BITS = 0x0D5A;
-	public static final int GL_ACCUM_ALPHA_BITS = 0x0D5B;
-	public static final int GL_NAME_STACK_DEPTH = 0x0D70;
-	public static final int GL_AUTO_NORMAL = 0x0D80;
-	public static final int GL_MAP1_COLOR_4 = 0x0D90;
-	public static final int GL_MAP1_INDEX = 0x0D91;
-	public static final int GL_MAP1_NORMAL = 0x0D92;
-	public static final int GL_MAP1_TEXTURE_COORD_1 = 0x0D93;
-	public static final int GL_MAP1_TEXTURE_COORD_2 = 0x0D94;
-	public static final int GL_MAP1_TEXTURE_COORD_3 = 0x0D95;
-	public static final int GL_MAP1_TEXTURE_COORD_4 = 0x0D96;
-	public static final int GL_MAP1_VERTEX_3 = 0x0D97;
-	public static final int GL_MAP1_VERTEX_4 = 0x0D98;
-	public static final int GL_MAP2_COLOR_4 = 0x0DB0;
-	public static final int GL_MAP2_INDEX = 0x0DB1;
-	public static final int GL_MAP2_NORMAL = 0x0DB2;
-	public static final int GL_MAP2_TEXTURE_COORD_1 = 0x0DB3;
-	public static final int GL_MAP2_TEXTURE_COORD_2 = 0x0DB4;
-	public static final int GL_MAP2_TEXTURE_COORD_3 = 0x0DB5;
-	public static final int GL_MAP2_TEXTURE_COORD_4 = 0x0DB6;
-	public static final int GL_MAP2_VERTEX_3 = 0x0DB7;
-	public static final int GL_MAP2_VERTEX_4 = 0x0DB8;
-	public static final int GL_MAP1_GRID_DOMAIN = 0x0DD0;
-	public static final int GL_MAP1_GRID_SEGMENTS = 0x0DD1;
-	public static final int GL_MAP2_GRID_DOMAIN = 0x0DD2;
-	public static final int GL_MAP2_GRID_SEGMENTS = 0x0DD3;
-	public static final int GL_TEXTURE_1D = 0x0DE0;
-	public static final int GL_TEXTURE_2D = 0x0DE1;
-	public static final int GL_FEEDBACK_BUFFER_POINTER = 0x0DF0;
-	public static final int GL_FEEDBACK_BUFFER_SIZE = 0x0DF1;
-	public static final int GL_FEEDBACK_BUFFER_TYPE = 0x0DF2;
-	public static final int GL_SELECTION_BUFFER_POINTER = 0x0DF3;
-	public static final int GL_SELECTION_BUFFER_SIZE = 0x0DF4;
-	/*      GL_TEXTURE_BINDING_1D */
-	/*      GL_TEXTURE_BINDING_2D */
-	/*      GL_VERTEX_ARRAY */
-	/*      GL_NORMAL_ARRAY */
-	/*      GL_COLOR_ARRAY */
-	/*      GL_INDEX_ARRAY */
-	/*      GL_TEXTURE_COORD_ARRAY */
-	/*      GL_EDGE_FLAG_ARRAY */
-	/*      GL_VERTEX_ARRAY_SIZE */
-	/*      GL_VERTEX_ARRAY_TYPE */
-	/*      GL_VERTEX_ARRAY_STRIDE */
-	/*      GL_NORMAL_ARRAY_TYPE */
-	/*      GL_NORMAL_ARRAY_STRIDE */
-	/*      GL_COLOR_ARRAY_SIZE */
-	/*      GL_COLOR_ARRAY_TYPE */
-	/*      GL_COLOR_ARRAY_STRIDE */
-	/*      GL_INDEX_ARRAY_TYPE */
-	/*      GL_INDEX_ARRAY_STRIDE */
-	/*      GL_TEXTURE_COORD_ARRAY_SIZE */
-	/*      GL_TEXTURE_COORD_ARRAY_TYPE */
-	/*      GL_TEXTURE_COORD_ARRAY_STRIDE */
-	/*      GL_EDGE_FLAG_ARRAY_STRIDE */
-	/*      GL_POLYGON_OFFSET_FACTOR */
-	/*      GL_POLYGON_OFFSET_UNITS */
-
-	/* GetTextureParameter */
-	/*      GL_TEXTURE_MAG_FILTER */
-	/*      GL_TEXTURE_MIN_FILTER */
-	/*      GL_TEXTURE_WRAP_S */
-	/*      GL_TEXTURE_WRAP_T */
-	public static final int GL_TEXTURE_WIDTH = 0x1000;
-	public static final int GL_TEXTURE_HEIGHT = 0x1001;
-	public static final int GL_TEXTURE_INTERNAL_FORMAT = 0x1003;
-	public static final int GL_TEXTURE_BORDER_COLOR = 0x1004;
-	public static final int GL_TEXTURE_BORDER = 0x1005;
-	/*      GL_TEXTURE_RED_SIZE */
-	/*      GL_TEXTURE_GREEN_SIZE */
-	/*      GL_TEXTURE_BLUE_SIZE */
-	/*      GL_TEXTURE_ALPHA_SIZE */
-	/*      GL_TEXTURE_LUMINANCE_SIZE */
-	/*      GL_TEXTURE_INTENSITY_SIZE */
-	/*      GL_TEXTURE_PRIORITY */
-	/*      GL_TEXTURE_RESIDENT */
-
-	/* HintMode */
-	public static final int GL_DONT_CARE = 0x1100;
-	public static final int GL_FASTEST = 0x1101;
-	public static final int GL_NICEST = 0x1102;
-
-	/* HintTarget */
-	/*      GL_PERSPECTIVE_CORRECTION_HINT */
-	/*      GL_POINT_SMOOTH_HINT */
-	/*      GL_LINE_SMOOTH_HINT */
-	/*      GL_POLYGON_SMOOTH_HINT */
-	/*      GL_FOG_HINT */
-	/*      GL_PHONG_HINT */
-
-	/* IndexPointerType */
-	/*      GL_SHORT */
-	/*      GL_INT */
-	/*      GL_FLOAT */
-	/*      GL_DOUBLE */
-
-	/* LightModelParameter */
-	/*      GL_LIGHT_MODEL_AMBIENT */
-	/*      GL_LIGHT_MODEL_LOCAL_VIEWER */
-	/*      GL_LIGHT_MODEL_TWO_SIDE */
-
-	/* LightName */
-	public static final int GL_LIGHT0 = 0x4000;
-	public static final int GL_LIGHT1 = 0x4001;
-	public static final int GL_LIGHT2 = 0x4002;
-	public static final int GL_LIGHT3 = 0x4003;
-	public static final int GL_LIGHT4 = 0x4004;
-	public static final int GL_LIGHT5 = 0x4005;
-	public static final int GL_LIGHT6 = 0x4006;
-	public static final int GL_LIGHT7 = 0x4007;
-
-	/* LightParameter */
-	public static final int GL_AMBIENT = 0x1200;
-	public static final int GL_DIFFUSE = 0x1201;
-	public static final int GL_SPECULAR = 0x1202;
-	public static final int GL_POSITION = 0x1203;
-	public static final int GL_SPOT_DIRECTION = 0x1204;
-	public static final int GL_SPOT_EXPONENT = 0x1205;
-	public static final int GL_SPOT_CUTOFF = 0x1206;
-	public static final int GL_CONSTANT_ATTENUATION = 0x1207;
-	public static final int GL_LINEAR_ATTENUATION = 0x1208;
-	public static final int GL_QUADRATIC_ATTENUATION = 0x1209;
-
-	/* InterleavedArrays */
-	/*      GL_V2F */
-	/*      GL_V3F */
-	/*      GL_C4UB_V2F */
-	/*      GL_C4UB_V3F */
-	/*      GL_C3F_V3F */
-	/*      GL_N3F_V3F */
-	/*      GL_C4F_N3F_V3F */
-	/*      GL_T2F_V3F */
-	/*      GL_T4F_V4F */
-	/*      GL_T2F_C4UB_V3F */
-	/*      GL_T2F_C3F_V3F */
-	/*      GL_T2F_N3F_V3F */
-	/*      GL_T2F_C4F_N3F_V3F */
-	/*      GL_T4F_C4F_N3F_V4F */
-
-	/* ListMode */
-	public static final int GL_COMPILE = 0x1300;
-	public static final int GL_COMPILE_AND_EXECUTE = 0x1301;
-
-	/* ListNameType */
-	/*      GL_BYTE */
-	/*      GL_UNSIGNED_BYTE */
-	/*      GL_SHORT */
-	/*      GL_UNSIGNED_SHORT */
-	/*      GL_INT */
-	/*      GL_UNSIGNED_INT */
-	/*      GL_FLOAT */
-	/*      GL_2_BYTES */
-	/*      GL_3_BYTES */
-	/*      GL_4_BYTES */
-
-	/* LogicOp */
-	public static final int GL_CLEAR = 0x1500;
-	public static final int GL_AND = 0x1501;
-	public static final int GL_AND_REVERSE = 0x1502;
-	public static final int GL_COPY = 0x1503;
-	public static final int GL_AND_INVERTED = 0x1504;
-	public static final int GL_NOOP = 0x1505;
-	public static final int GL_XOR = 0x1506;
-	public static final int GL_OR = 0x1507;
-	public static final int GL_NOR = 0x1508;
-	public static final int GL_EQUIV = 0x1509;
-	public static final int GL_INVERT = 0x150A;
-	public static final int GL_OR_REVERSE = 0x150B;
-	public static final int GL_COPY_INVERTED = 0x150C;
-	public static final int GL_OR_INVERTED = 0x150D;
-	public static final int GL_NAND = 0x150E;
-	public static final int GL_SET = 0x150F;
-
-	/* MapTarget */
-	/*      GL_MAP1_COLOR_4 */
-	/*      GL_MAP1_INDEX */
-	/*      GL_MAP1_NORMAL */
-	/*      GL_MAP1_TEXTURE_COORD_1 */
-	/*      GL_MAP1_TEXTURE_COORD_2 */
-	/*      GL_MAP1_TEXTURE_COORD_3 */
-	/*      GL_MAP1_TEXTURE_COORD_4 */
-	/*      GL_MAP1_VERTEX_3 */
-	/*      GL_MAP1_VERTEX_4 */
-	/*      GL_MAP2_COLOR_4 */
-	/*      GL_MAP2_INDEX */
-	/*      GL_MAP2_NORMAL */
-	/*      GL_MAP2_TEXTURE_COORD_1 */
-	/*      GL_MAP2_TEXTURE_COORD_2 */
-	/*      GL_MAP2_TEXTURE_COORD_3 */
-	/*      GL_MAP2_TEXTURE_COORD_4 */
-	/*      GL_MAP2_VERTEX_3 */
-	/*      GL_MAP2_VERTEX_4 */
-
-	/* MaterialFace */
-	/*      GL_FRONT */
-	/*      GL_BACK */
-	/*      GL_FRONT_AND_BACK */
-
-	/* MaterialParameter */
-	public static final int GL_EMISSION = 0x1600;
-	public static final int GL_SHININESS = 0x1601;
-	public static final int GL_AMBIENT_AND_DIFFUSE = 0x1602;
-	public static final int GL_COLOR_INDEXES = 0x1603;
-	/*      GL_AMBIENT */
-	/*      GL_DIFFUSE */
-	/*      GL_SPECULAR */
-
-	/* MatrixMode */
-	public static final int GL_MODELVIEW = 0x1700;
-	public static final int GL_PROJECTION = 0x1701;
-	public static final int GL_TEXTURE = 0x1702;
-
-	/* MeshMode1 */
-	/*      GL_POINT */
-	/*      GL_LINE */
-
-	/* MeshMode2 */
-	/*      GL_POINT */
-	/*      GL_LINE */
-	/*      GL_FILL */
-
-	/* NormalPointerType */
-	/*      GL_BYTE */
-	/*      GL_SHORT */
-	/*      GL_INT */
-	/*      GL_FLOAT */
-	/*      GL_DOUBLE */
-
-	/* PixelCopyType */
-	public static final int GL_COLOR = 0x1800;
-	public static final int GL_DEPTH = 0x1801;
-	public static final int GL_STENCIL = 0x1802;
-
-	/* PixelFormat */
-	public static final int GL_COLOR_INDEX = 0x1900;
-	public static final int GL_STENCIL_INDEX = 0x1901;
-	public static final int GL_DEPTH_COMPONENT = 0x1902;
-	public static final int GL_RED = 0x1903;
-	public static final int GL_GREEN = 0x1904;
-	public static final int GL_BLUE = 0x1905;
-	public static final int GL_ALPHA = 0x1906;
-	public static final int GL_RGB = 0x1907;
-	public static final int GL_RGBA = 0x1908;
-	public static final int GL_LUMINANCE = 0x1909;
-	public static final int GL_LUMINANCE_ALPHA = 0x190A;
-
-	/* PixelMap */
-	/*      GL_PIXEL_MAP_I_TO_I */
-	/*      GL_PIXEL_MAP_S_TO_S */
-	/*      GL_PIXEL_MAP_I_TO_R */
-	/*      GL_PIXEL_MAP_I_TO_G */
-	/*      GL_PIXEL_MAP_I_TO_B */
-	/*      GL_PIXEL_MAP_I_TO_A */
-	/*      GL_PIXEL_MAP_R_TO_R */
-	/*      GL_PIXEL_MAP_G_TO_G */
-	/*      GL_PIXEL_MAP_B_TO_B */
-	/*      GL_PIXEL_MAP_A_TO_A */
-
-	/* PixelStore */
-	/*      GL_UNPACK_SWAP_BYTES */
-	/*      GL_UNPACK_LSB_FIRST */
-	/*      GL_UNPACK_ROW_LENGTH */
-	/*      GL_UNPACK_SKIP_ROWS */
-	/*      GL_UNPACK_SKIP_PIXELS */
-	/*      GL_UNPACK_ALIGNMENT */
-	/*      GL_PACK_SWAP_BYTES */
-	/*      GL_PACK_LSB_FIRST */
-	/*      GL_PACK_ROW_LENGTH */
-	/*      GL_PACK_SKIP_ROWS */
-	/*      GL_PACK_SKIP_PIXELS */
-	/*      GL_PACK_ALIGNMENT */
-
-	/* PixelTransfer */
-	/*      GL_MAP_COLOR */
-	/*      GL_MAP_STENCIL */
-	/*      GL_INDEX_SHIFT */
-	/*      GL_INDEX_OFFSET */
-	/*      GL_RED_SCALE */
-	/*      GL_RED_BIAS */
-	/*      GL_GREEN_SCALE */
-	/*      GL_GREEN_BIAS */
-	/*      GL_BLUE_SCALE */
-	/*      GL_BLUE_BIAS */
-	/*      GL_ALPHA_SCALE */
-	/*      GL_ALPHA_BIAS */
-	/*      GL_DEPTH_SCALE */
-	/*      GL_DEPTH_BIAS */
-
-	/* PixelType */
-	public static final int GL_BITMAP = 0x1A00;
-	/*      GL_BYTE */
-	/*      GL_UNSIGNED_BYTE */
-	/*      GL_SHORT */
-	/*      GL_UNSIGNED_SHORT */
-	/*      GL_INT */
-	/*      GL_UNSIGNED_INT */
-	/*      GL_FLOAT */
-
-	/* PolygonMode */
-	public static final int GL_POINT = 0x1B00;
-	public static final int GL_LINE = 0x1B01;
-	public static final int GL_FILL = 0x1B02;
-
-	/* ReadBufferMode */
-	/*      GL_FRONT_LEFT */
-	/*      GL_FRONT_RIGHT */
-	/*      GL_BACK_LEFT */
-	/*      GL_BACK_RIGHT */
-	/*      GL_FRONT */
-	/*      GL_BACK */
-	/*      GL_LEFT */
-	/*      GL_RIGHT */
-	/*      GL_AUX0 */
-	/*      GL_AUX1 */
-	/*      GL_AUX2 */
-	/*      GL_AUX3 */
-
-	/* RenderingMode */
-	public static final int GL_RENDER = 0x1C00;
-	public static final int GL_FEEDBACK = 0x1C01;
-	public static final int GL_SELECT = 0x1C02;
-
-	/* ShadingModel */
-	public static final int GL_FLAT = 0x1D00;
-	public static final int GL_SMOOTH = 0x1D01;
-
-	/* StencilFunction */
-	/*      GL_NEVER */
-	/*      GL_LESS */
-	/*      GL_EQUAL */
-	/*      GL_LEQUAL */
-	/*      GL_GREATER */
-	/*      GL_NOTEQUAL */
-	/*      GL_GEQUAL */
-	/*      GL_ALWAYS */
-
-	/* StencilOp */
-	/*      GL_ZERO */
-	public static final int GL_KEEP = 0x1E00;
-	public static final int GL_REPLACE = 0x1E01;
-	public static final int GL_INCR = 0x1E02;
-	public static final int GL_DECR = 0x1E03;
-	/*      GL_INVERT */
-
-	/* StringName */
-	public static final int GL_VENDOR = 0x1F00;
-	public static final int GL_RENDERER = 0x1F01;
-	public static final int GL_VERSION = 0x1F02;
-	public static final int GL_EXTENSIONS = 0x1F03;
-
-	/* TextureCoordName */
-	public static final int GL_S = 0x2000;
-	public static final int GL_T = 0x2001;
-	public static final int GL_R = 0x2002;
-	public static final int GL_Q = 0x2003;
-
-	/* TexCoordPointerType */
-	/*      GL_SHORT */
-	/*      GL_INT */
-	/*      GL_FLOAT */
-	/*      GL_DOUBLE */
-
-	/* TextureEnvMode */
-	public static final int GL_MODULATE = 0x2100;
-	public static final int GL_DECAL = 0x2101;
-	/*      GL_BLEND */
-	/*      GL_REPLACE */
-
-	/* TextureEnvParameter */
-	public static final int GL_TEXTURE_ENV_MODE = 0x2200;
-	public static final int GL_TEXTURE_ENV_COLOR = 0x2201;
-
-	/* TextureEnvTarget */
-	public static final int GL_TEXTURE_ENV = 0x2300;
-
-	/* TextureGenMode */
-	public static final int GL_EYE_LINEAR = 0x2400;
-	public static final int GL_OBJECT_LINEAR = 0x2401;
-	public static final int GL_SPHERE_MAP = 0x2402;
-
-	/* TextureGenParameter */
-	public static final int GL_TEXTURE_GEN_MODE = 0x2500;
-	public static final int GL_OBJECT_PLANE = 0x2501;
-	public static final int GL_EYE_PLANE = 0x2502;
-
-	/* TextureMagFilter */
-	public static final int GL_NEAREST = 0x2600;
-	public static final int GL_LINEAR = 0x2601;
-
-	/* TextureMinFilter */
-	/*      GL_NEAREST */
-	/*      GL_LINEAR */
-	public static final int GL_NEAREST_MIPMAP_NEAREST = 0x2700;
-	public static final int GL_LINEAR_MIPMAP_NEAREST = 0x2701;
-	public static final int GL_NEAREST_MIPMAP_LINEAR = 0x2702;
-	public static final int GL_LINEAR_MIPMAP_LINEAR = 0x2703;
-
-	/* TextureParameterName */
-	public static final int GL_TEXTURE_MAG_FILTER = 0x2800;
-	public static final int GL_TEXTURE_MIN_FILTER = 0x2801;
-	public static final int GL_TEXTURE_WRAP_S = 0x2802;
-	public static final int GL_TEXTURE_WRAP_T = 0x2803;
-	/*      GL_TEXTURE_BORDER_COLOR */
-	/*      GL_TEXTURE_PRIORITY */
-
-	/* TextureTarget */
-	/*      GL_TEXTURE_1D */
-	/*      GL_TEXTURE_2D */
-	/*      GL_PROXY_TEXTURE_1D */
-	/*      GL_PROXY_TEXTURE_2D */
-
-	/* TextureWrapMode */
-	public static final int GL_CLAMP = 0x2900;
-	public static final int GL_REPEAT = 0x2901;
-
-	/* VertexPointerType */
-	/*      GL_SHORT */
-	/*      GL_INT */
-	/*      GL_FLOAT */
-	/*      GL_DOUBLE */
-
-	/* ClientAttribMask */
-	public static final int GL_CLIENT_PIXEL_STORE_BIT = 0x00000001;
-	public static final int GL_CLIENT_VERTEX_ARRAY_BIT = 0x00000002;
-	public static final int GL_CLIENT_ALL_ATTRIB_BITS = 0xffffffff;
-
-	/* polygon_offset */
-	public static final int GL_POLYGON_OFFSET_FACTOR = 0x8038;
-	public static final int GL_POLYGON_OFFSET_UNITS = 0x2A00;
-	public static final int GL_POLYGON_OFFSET_POINT = 0x2A01;
-	public static final int GL_POLYGON_OFFSET_LINE = 0x2A02;
-	public static final int GL_POLYGON_OFFSET_FILL = 0x8037;
-
-	/* texture */
-	public static final int GL_ALPHA4 = 0x803B;
-	public static final int GL_ALPHA8 = 0x803C;
-	public static final int GL_ALPHA12 = 0x803D;
-	public static final int GL_ALPHA16 = 0x803E;
-	public static final int GL_LUMINANCE4 = 0x803F;
-	public static final int GL_LUMINANCE8 = 0x8040;
-	public static final int GL_LUMINANCE12 = 0x8041;
-	public static final int GL_LUMINANCE16 = 0x8042;
-	public static final int GL_LUMINANCE4_ALPHA4 = 0x8043;
-	public static final int GL_LUMINANCE6_ALPHA2 = 0x8044;
-	public static final int GL_LUMINANCE8_ALPHA8 = 0x8045;
-	public static final int GL_LUMINANCE12_ALPHA4 = 0x8046;
-	public static final int GL_LUMINANCE12_ALPHA12 = 0x8047;
-	public static final int GL_LUMINANCE16_ALPHA16 = 0x8048;
-	public static final int GL_INTENSITY = 0x8049;
-	public static final int GL_INTENSITY4 = 0x804A;
-	public static final int GL_INTENSITY8 = 0x804B;
-	public static final int GL_INTENSITY12 = 0x804C;
-	public static final int GL_INTENSITY16 = 0x804D;
-	public static final int GL_R3_G3_B2 = 0x2A10;
-	public static final int GL_RGB4 = 0x804F;
-	public static final int GL_RGB5 = 0x8050;
-	public static final int GL_RGB8 = 0x8051;
-	public static final int GL_RGB10 = 0x8052;
-	public static final int GL_RGB12 = 0x8053;
-	public static final int GL_RGB16 = 0x8054;
-	public static final int GL_RGBA2 = 0x8055;
-	public static final int GL_RGBA4 = 0x8056;
-	public static final int GL_RGB5_A1 = 0x8057;
-	public static final int GL_RGBA8 = 0x8058;
-	public static final int GL_RGB10_A2 = 0x8059;
-	public static final int GL_RGBA12 = 0x805A;
-	public static final int GL_RGBA16 = 0x805B;
-	public static final int GL_TEXTURE_RED_SIZE = 0x805C;
-	public static final int GL_TEXTURE_GREEN_SIZE = 0x805D;
-	public static final int GL_TEXTURE_BLUE_SIZE = 0x805E;
-	public static final int GL_TEXTURE_ALPHA_SIZE = 0x805F;
-	public static final int GL_TEXTURE_LUMINANCE_SIZE = 0x8060;
-	public static final int GL_TEXTURE_INTENSITY_SIZE = 0x8061;
-	public static final int GL_PROXY_TEXTURE_1D = 0x8063;
-	public static final int GL_PROXY_TEXTURE_2D = 0x8064;
-
-	/* texture_object */
-	public static final int GL_TEXTURE_PRIORITY = 0x8066;
-	public static final int GL_TEXTURE_RESIDENT = 0x8067;
-	public static final int GL_TEXTURE_BINDING_1D = 0x8068;
-	public static final int GL_TEXTURE_BINDING_2D = 0x8069;
-
-	/* vertex_array */
-	public static final int GL_VERTEX_ARRAY = 0x8074;
-	public static final int GL_NORMAL_ARRAY = 0x8075;
-	public static final int GL_COLOR_ARRAY = 0x8076;
-	public static final int GL_INDEX_ARRAY = 0x8077;
-	public static final int GL_TEXTURE_COORD_ARRAY = 0x8078;
-	public static final int GL_EDGE_FLAG_ARRAY = 0x8079;
-	public static final int GL_VERTEX_ARRAY_SIZE = 0x807A;
-	public static final int GL_VERTEX_ARRAY_TYPE = 0x807B;
-	public static final int GL_VERTEX_ARRAY_STRIDE = 0x807C;
-	public static final int GL_NORMAL_ARRAY_TYPE = 0x807E;
-	public static final int GL_NORMAL_ARRAY_STRIDE = 0x807F;
-	public static final int GL_COLOR_ARRAY_SIZE = 0x8081;
-	public static final int GL_COLOR_ARRAY_TYPE = 0x8082;
-	public static final int GL_COLOR_ARRAY_STRIDE = 0x8083;
-	public static final int GL_INDEX_ARRAY_TYPE = 0x8085;
-	public static final int GL_INDEX_ARRAY_STRIDE = 0x8086;
-	public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088;
-	public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089;
-	public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A;
-	public static final int GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C;
-	public static final int GL_VERTEX_ARRAY_POINTER = 0x808E;
-	public static final int GL_NORMAL_ARRAY_POINTER = 0x808F;
-	public static final int GL_COLOR_ARRAY_POINTER = 0x8090;
-	public static final int GL_INDEX_ARRAY_POINTER = 0x8091;
-	public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092;
-	public static final int GL_EDGE_FLAG_ARRAY_POINTER = 0x8093;
-	public static final int GL_V2F = 0x2A20;
-	public static final int GL_V3F = 0x2A21;
-	public static final int GL_C4UB_V2F = 0x2A22;
-	public static final int GL_C4UB_V3F = 0x2A23;
-	public static final int GL_C3F_V3F = 0x2A24;
-	public static final int GL_N3F_V3F = 0x2A25;
-	public static final int GL_C4F_N3F_V3F = 0x2A26;
-	public static final int GL_T2F_V3F = 0x2A27;
-	public static final int GL_T4F_V4F = 0x2A28;
-	public static final int GL_T2F_C4UB_V3F = 0x2A29;
-	public static final int GL_T2F_C3F_V3F = 0x2A2A;
-	public static final int GL_T2F_N3F_V3F = 0x2A2B;
-	public static final int GL_T2F_C4F_N3F_V3F = 0x2A2C;
-	public static final int GL_T4F_C4F_N3F_V4F = 0x2A2D;
-
-	/* Extensions */
-	public static final int GL_EXT_vertex_array = 1;
-	public static final int GL_EXT_bgra = 1;
-	public static final int GL_EXT_paletted_texture = 1;
-	public static final int GL_WIN_swap_hint = 1;
-	public static final int GL_WIN_draw_range_elements = 1;
-	// public static final int GL_WIN_phong_shading              = 1;
-	// public static final int GL_WIN_specular_fog               = 1;
-
-	/* EXT_vertex_array */
-	public static final int GL_VERTEX_ARRAY_EXT = 0x8074;
-	public static final int GL_NORMAL_ARRAY_EXT = 0x8075;
-	public static final int GL_COLOR_ARRAY_EXT = 0x8076;
-	public static final int GL_INDEX_ARRAY_EXT = 0x8077;
-	public static final int GL_TEXTURE_COORD_ARRAY_EXT = 0x8078;
-	public static final int GL_EDGE_FLAG_ARRAY_EXT = 0x8079;
-	public static final int GL_VERTEX_ARRAY_SIZE_EXT = 0x807A;
-	public static final int GL_VERTEX_ARRAY_TYPE_EXT = 0x807B;
-	public static final int GL_VERTEX_ARRAY_STRIDE_EXT = 0x807C;
-	public static final int GL_VERTEX_ARRAY_COUNT_EXT = 0x807D;
-	public static final int GL_NORMAL_ARRAY_TYPE_EXT = 0x807E;
-	public static final int GL_NORMAL_ARRAY_STRIDE_EXT = 0x807F;
-	public static final int GL_NORMAL_ARRAY_COUNT_EXT = 0x8080;
-	public static final int GL_COLOR_ARRAY_SIZE_EXT = 0x8081;
-	public static final int GL_COLOR_ARRAY_TYPE_EXT = 0x8082;
-	public static final int GL_COLOR_ARRAY_STRIDE_EXT = 0x8083;
-	public static final int GL_COLOR_ARRAY_COUNT_EXT = 0x8084;
-	public static final int GL_INDEX_ARRAY_TYPE_EXT = 0x8085;
-	public static final int GL_INDEX_ARRAY_STRIDE_EXT = 0x8086;
-	public static final int GL_INDEX_ARRAY_COUNT_EXT = 0x8087;
-	public static final int GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088;
-	public static final int GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089;
-	public static final int GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A;
-	public static final int GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B;
-	public static final int GL_EDGE_FLAG_ARRAY_STRIDE_EXT = 0x808C;
-	public static final int GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D;
-	public static final int GL_VERTEX_ARRAY_POINTER_EXT = 0x808E;
-	public static final int GL_NORMAL_ARRAY_POINTER_EXT = 0x808F;
-	public static final int GL_COLOR_ARRAY_POINTER_EXT = 0x8090;
-	public static final int GL_INDEX_ARRAY_POINTER_EXT = 0x8091;
-	public static final int GL_TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092;
-	public static final int GL_EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093;
-	public static final int GL_DOUBLE_EXT = GL_DOUBLE;
-
-	/* EXT_bgra */
-	public static final int GL_BGR_EXT = 0x80E0;
-	public static final int GL_BGRA_EXT = 0x80E1;
-
-	/* EXT_paletted_texture */
-
-	/* These must match the GL_COLOR_TABLE_*_SGI enumerants */
-	public static final int GL_COLOR_TABLE_FORMAT_EXT = 0x80D8;
-	public static final int GL_COLOR_TABLE_WIDTH_EXT = 0x80D9;
-	public static final int GL_COLOR_TABLE_RED_SIZE_EXT = 0x80DA;
-	public static final int GL_COLOR_TABLE_GREEN_SIZE_EXT = 0x80DB;
-	public static final int GL_COLOR_TABLE_BLUE_SIZE_EXT = 0x80DC;
-	public static final int GL_COLOR_TABLE_ALPHA_SIZE_EXT = 0x80DD;
-	public static final int GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = 0x80DE;
-	public static final int GL_COLOR_TABLE_INTENSITY_SIZE_EXT = 0x80DF;
-
-	public static final int GL_COLOR_INDEX1_EXT = 0x80E2;
-	public static final int GL_COLOR_INDEX2_EXT = 0x80E3;
-	public static final int GL_COLOR_INDEX4_EXT = 0x80E4;
-	public static final int GL_COLOR_INDEX8_EXT = 0x80E5;
-	public static final int GL_COLOR_INDEX12_EXT = 0x80E6;
-	public static final int GL_COLOR_INDEX16_EXT = 0x80E7;
-
-	/* WIN_draw_range_elements */
-	public static final int GL_MAX_ELEMENTS_VERTICES_WIN = 0x80E8;
-	public static final int GL_MAX_ELEMENTS_INDICES_WIN = 0x80E9;
-
-	/* WIN_phong_shading */
-	public static final int GL_PHONG_WIN = 0x80EA;
-	public static final int GL_PHONG_HINT_WIN = 0x80EB;
-
-	/* WIN_specular_fog */
-	public static final int GL_FOG_SPECULAR_TEXTURE_WIN = 0x80EC;
-
-	/* For compatibility with OpenGL v1.0 */
-	public static final int GL_LOGIC_OP = GL_INDEX_LOGIC_OP;
-	public static final int GL_TEXTURE_COMPONENTS = GL_TEXTURE_INTERNAL_FORMAT;
-
-	public static final native void glAccum (int op, float value);
-	public static final native void glAlphaFunc (int func, float ref);
-	public static final native boolean glAreTexturesResident (int n, int[] textures, boolean[] residences);
-	public static final native void glArrayElement (int index);
-	public static final native int glBegin (int mode);
-	public static final native int glEnd ();
-	public static final native void glBindTexture (int target, int texture);
-	public static final native void glBitmap (int width, int height, float xorig, float yorig, float xmove, float ymove, byte[] bitmap);
-	public static final native void glBlendFunc (int sfactor, int dfactor);
-	public static final native void glCallList (int list);
-	public static final native void glCallLists (int n, int type, byte[] lists);
-	public static final native void glCallLists (int n, int type, char[] lists);
-	public static final native void glCallLists (int n, int type, int[] lists);
-	public static final native void glClear (int mask);
-	public static final native void glClearAccum (float red, float green, float blue, float alpha);
-	public static final native void glClearColor (float red, float green, float blue, float alpha);
-	public static final native void glClearDepth (double depth);
-	public static final native void glClearIndex (float c);
-	public static final native void glClearStencil (int s);
-	public static final native void glClipPlane (int plane, double[] equation);
-	public static final native void glColor3b (byte red, byte green, byte blue);
-	public static final native void glColor3d (double red, double green, double blue);
-	public static final native void glColor3f (float red, float green, float blue);
-	public static final native void glColor3i (int red, int green, int blue);
-	public static final native void glColor3s (short red, short green, short blue);
-	public static final native void glColor3ub (byte red, byte green, byte blue);
-	public static final native void glColor3ui (int red, int green, int blue);
-	public static final native void glColor3us (short red, short green, short blue);
-	public static final native void glColor4b (byte red, byte green, byte blue, byte alpha);
-	public static final native void glColor4d (double red, double green, double blue, double alpha);
-	public static final native void glColor4f (float red, float green, float blue, float alpha);
-	public static final native void glColor4i (int red, int green, int blue, int alpha);
-	public static final native void glColor4s (short red, short green, short blue, short alpha);
-	public static final native void glColor4ub (byte red, byte green, byte blue, byte alpha);
-	public static final native void glColor4ui (int red, int green, int blue, int alpha);
-	public static final native void glColor4us (short red, short green, short blue, short alpha);
-	public static final native void glColor3bv (byte[] v);
-	public static final native void glColor3dv (double[] v);
-	public static final native void glColor3fv (float[] v);
-	public static final native void glColor3iv (int[] v);
-	public static final native void glColor3sv (short[] v);
-	public static final native void glColor3ubv (byte[] v);
-	public static final native void glColor3uiv (int[] v);
-	public static final native void glColor3usv (short[] v);
-	public static final native void glColor4bv (byte[] v);
-	public static final native void glColor4dv (double[] v);
-	public static final native void glColor4fv (float[] v);
-	public static final native void glColor4iv (int[] v);
-	public static final native void glColor4ubv (byte[] v);
-	public static final native void glColor4uiv (int[] v);
-	public static final native void glColor4usv (short[] v);
-	public static final native void glColor4ubv (short[] v);
-	public static final native void glColorMask (boolean red, boolean green, boolean blue, boolean alpha);
-	public static final native void glColorMaterial (int face, int mode);
-	public static final native void glColorPointer (int size, int type, int stride, int[] pointer);
-	//public static final native void glColorTableEXT (int target, int internalFormat, int width, int format, int type, int[] data);
-	//public static final native void glColorSubTableEXT (int target, int start, int count, int format, int type, int[] data);
-	public static final native void glCopyPixels (int x, int y, int width, int height, int type);
-	public static final native void glCopyTexImage1D (int target, int level, int internalFormat, int x, int y, int width, int border);
-	public static final native void glCopyTexImage2D (int target, int level, int internalFormat, int x, int y, int width, int height, int border);
-	public static final native void glCopyTexSubImage1D (int target, int level, int xoffset, int x, int y, int width); 
-	public static final native void glCopyTexSubImage2D (int target, int level, int xoffset, int yoffset, int x, int y, int width, int height);
-	public static final native void glCullFace (int mode);
-	public static final native void glDeleteLists (int list, int range);
-	public static final native void glDeleteTextures (int n, int[] textures);
-	public static final native void glDepthFunc (int func);
-	public static final native void glDepthMask (boolean flag);
-	public static final native void glDepthRange (double znear, double zfar);
-	public static final native void glDrawArrays (int mode, int first, int count);
-	public static final native void glDrawBuffer (int mode);
-	public static final native void glDrawElements (int mode, int count, int type, int[] indices); /* MULTIPLES TYPES */
-	public static final native void glDrawPixels (int width, int height, int format, int type, int[] pixels); /* MULTIPLES TYPES */
-	public static final native void glEdgeFlag (boolean flag);
-	public static final native void glEdgeFlagv (boolean[] flag);
-	public static final native void glEdgeFlagPointer (int stride, boolean[] pointer);
-	public static final native void glEnable (int cap);
-	public static final native void glDisable (int cap);
-	public static final native void glEnableClientState (int array);
-	public static final native void glDisableClientState (int array);
-	public static final native void glEvalCoord1d (double u);
-	public static final native void glEvalCoord1f (float u);
-	public static final native void glEvalCoord2d (double u, double v);
-	public static final native void glEvalCoord2f (float u, float v);
-	public static final native void glEvalCoord1dv (double[] u);
-	public static final native void glEvalCoord1fv (float[] u);
-	public static final native void glEvalCoord2dv (double[] u);
-	public static final native void glEvalCoord2fv (float[] u);
-	public static final native void glEvalMesh1 (int mode, int i1, int i2);
-	public static final native void glEvalMesh2 (int mode, int i1, int i2, int j1, int j2);
-	public static final native void glEvalPoint1 (int i);
-	public static final native void glEvalPoint2 (int i, int j);
-	public static final native void glFeedbackBuffer (int size, int type, float[] buffer);
-	public static final native void glFinish ();
-	public static final native void glFlush ();
-	public static final native void glFogf (int pname, float param);
-	public static final native void glFogi (int pname, int param);
-	public static final native void glFogfv (int pname, float[] params);
-	public static final native void glFogiv (int pname, int[] params);
-	public static final native void glFrontFace (int mode);
-	public static final native void glFrustum (double left, double right, double bottom, double top, double znear, double zfar);
-	public static final native int glGenLists (int range);
-	public static final native void glGenTextures (int n, int[] textures);
-	public static final native void glGetBooleanv (int pname, boolean[] params);
-	public static final native void glGetDoublev (int pname, double[] params);
-	public static final native void glGetFloatv (int pname, float[] params);
-	public static final native void glGetIntegerv (int pname, int[] params);
-	public static final native void glGetClipPlane (int plane, double[] equation);
-	//public static final native void glGetColorTableEXT (int target, int format, int type, int[] data);
-	//public static final native void glGetColorTableParameterfvEXT (int target, int pname, float[] params);
-	//public static final native void glGetColorTableParameterivEXT (int target, int pname, int[] params);
-	public static final native int glGetError ();
-	public static final native void glGetLightfv (int light, int pname, float[] params);
-	public static final native void glGetLightiv (int light, int pname, int[] params);
-	public static final native void glGetMapdv (int tagert, int query, double[] v);
-	public static final native void glGetMapfv (int tagert, int query, float[] v);
-	public static final native void glGetMapiv (int tagert, int query, int[] v);
-	public static final native void glGetMaterialfv (int face, int pname, float[] params);
-	public static final native void glGetMaterialiv (int face, int pname, int[] params);
-	public static final native void glGetPixelMapfv (int map, float[] values);
-	public static final native void glGetPixelMapuiv (int map, int[] values);
-	public static final native void glGetPixelMapusv (int map, short[] values);
-	public static final native void glGetPointerv (int pname, int[] params);
-	/* TEST */
-	public static final native void glGetPolygonStipple (byte[] mask);
-	public static final native int glGetString (int name);
-	/* SHOULD RETURN A STRING */
-	public static final native void glGetTexEnvfv (int target, int pname, float[] params);
-	public static final native void glGetTexEnviv (int target, int pname, int[] params);
-	public static final native void glGetTexGendv (int coord, int pname, double[] params);
-	public static final native void glGetTexGenfv (int coord, int pname, float[] params);
-	public static final native void glGetTexGeniv (int coord, int pname, int[] params);
-	public static final native void glGetTexImage (int target, int level, int format, int type, int[] pixels); /* MULTIPLES TYPES ARRAY */
-	public static final native void glGetTexLevelParameterfv (int target, int level, int pname, float[] params);
-	public static final native void glGetTexLevelParameteriv (int target, int level, int pname, int[] params);
-	public static final native void glGetTexParameterfv (int target, int pname, float[] params);
-	public static final native void glGetTexParameteriv (int target, int pname, int[] params);
-	public static final native void glHint (int target, int mode);
-	public static final native void glIndexd (double c);
-	public static final native void glIndexf (float c);
-	public static final native void glIndexi (int c);
-	public static final native void glIndexs (short c);
-	public static final native void glIndexdv (double[] c);
-	public static final native void glIndexfv (float[] c);
-	public static final native void glIndexiv (int[] c);
-	public static final native void glIndexsv (short[] c);
-	public static final native void glIndexMask (int mask);
-	public static final native void glIndexPointer (int type, int stride, int[] pointer);
-	/* MULTIPLES TYPES */
-	public static final native void glInitNames ();
-	public static final native void glInterleavedArrays (int format, int stride, int[] pointer);
-	/* CHECK */
-	public static final native boolean glIsEnabled (int cap);
-	public static final native boolean glIsList (int list);
-	public static final native boolean glIsTexture (int texture);
-	public static final native void glLightf (int light, int pname, float param);
-	public static final native void glLighti (int light, int pname, int param);
-	public static final native void glLightfv (int light, int pname, float[] param);
-	//public static final native void glLightfv (int light, int pname, int param);
-	public static final native void glLightiv (int light, int pname, int[] param);
-	public static final native void glLightModelf (int pname, float param);
-	public static final native void glLightModeli (int pname, int param);
-	public static final native void glLightModelfv (int pname, float[] param);
-	public static final native void glLightModeliv (int pname, int[] param);
-	public static final native void glLineStipple (int factor, short pattern);
-	public static final native void glLineWidth (float width);
-	public static final native void glListBase (int base);
-	public static final native void glLoadIdentity ();
-	public static final native void glLoadMatrixd (double[] m);
-	public static final native void glLoadMatrixf (float[] m);
-	public static final native void glLoadName (int name);
-	public static final native void glLogicOp (int opcode);
-	public static final native void glMap1d (int target, double u1, double u2, int stride, int order, double[] points);
-	public static final native void glMap1f (int target, float u1, float u2, int stride, int order, float[] points);
-	public static final native void glMap2d (int target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double[] points);
-	public static final native void glMap2f (int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float[] points);
-	public static final native void glMapGrid1d (int un, double u1, double u2);
-	public static final native void glMapGrid1f (int un, float u1, float u2);
-	public static final native void glMapGrid2d (int un, double u1, double u2, int vm, double v1, double v2);
-	public static final native void glMapGrid2f (int un, float u1, float u2, int vm, float v1, float v2);
-	public static final native void glMaterialf (int face, int pname, float param);
-	public static final native void glMateriali (int face, int pname, int param);
-	public static final native void glMaterialfv (int face, int pname, float[] param);
-	public static final native void glMaterialiv (int face, int pname, int[] param);
-	public static final native void glMatrixMode (int mode);
-	public static final native void glMultMatrixd (double[] m);
-	public static final native void glMultMatrixf (float[] m);
-	public static final native void glNewList (int list, int mode);
-	public static final native void glEndList ();
-	public static final native void glNormal3b (byte nx, byte ny, byte nz);
-	public static final native void glNormal3d (double nx, double ny, double nz);
-	public static final native void glNormal3f (float nx, float ny, float nz);
-	public static final native void glNormal3i (int nx, int ny, int nz);
-	public static final native void glNormal3s (short nx, short ny, short nz);
-	public static final native void glNormal3bv (byte[] v);
-	public static final native void glNormal3dv (double[] v);
-	public static final native void glNormal3fv (float[] v);
-	public static final native void glNormal3iv (int[] v);
-	public static final native void glNormal3sv (short[] v);
-	public static final native void glNormalPointer (int type, int stride, int[] pointer); /* MULTIPLES TYPES ARRAY */
-	public static final native void glOrtho (double left, double right, double bottom, double top, double znear, double zfar);
-	public static final native void glPassThrough (float token);
-	public static final native void glPixelMapfv (int map, int mapsize, float[] values);
-	public static final native void glPixelMapuiv (int map, int mapsize, int[] values);
-	public static final native void glPixelMapusv (int map, int mapsize, short[] values);
-	public static final native void glPixelStoref (int pname, float param);
-	public static final native void glPixelStorei (int pname, int param);
-	public static final native void glPixelTransferf (int pname, float param);
-	public static final native void glPixelTransferi (int pname, int param);
-	public static final native void glPixelZoom (float xfactor, float yfactor);
-	public static final native void glPointSize (float size);
-	public static final native void glPolygonMode (int face, int mode);
-	public static final native void glPolygonOffset (float factor, float units);
-	public static final native void glPolygonStipple (byte[] mask);
-	public static final native void glPrioritizeTextures (int n, int[] textures, float[] priorities);
-	public static final native void glPushAttrib (int mask);
-	public static final native void glPopAttrib ();
-	public static final native void glPushClientAttrib (int mask);
-	public static final native void glPopClientAttrib ();
-	public static final native void glPushMatrix ();
-	public static final native void glPopMatrix ();
-	public static final native void glPushName (int name);
-	public static final native void glPopName ();
-	public static final native void glRasterPos2d (double x, double y);
-	public static final native void glRasterPos2f (float x, float y);
-	public static final native void glRasterPos2i (int x, int y);
-	public static final native void glRasterPos2s (short x, short y);
-	public static final native void glRasterPos3d (double x, double y, double z);
-	public static final native void glRasterPos3f (float x, float y, float z);
-	public static final native void glRasterPos3i (int x, int y, int z);
-	public static final native void glRasterPos3s (short x, short y, short z);
-	public static final native void glRasterPos4d (double x, double y, double z, double w);
-	public static final native void glRasterPos4f (float x, float y, float z, float w);
-	public static final native void glRasterPos4i (int x, int y, int z, int w);
-	public static final native void glRasterPos4s (short x, short y, short z, short w);
-	public static final native void glRasterPos2dv (double[] v);
-	public static final native void glRasterPos2fv (float[] v);
-	public static final native void glRasterPos2iv (int[] v);
-	public static final native void glRasterPos2sv (short[] v);
-	public static final native void glRasterPos3dv (double[] v);
-	public static final native void glRasterPos3fv (float[] v);
-	public static final native void glRasterPos3iv (int[] v);
-	public static final native void glRasterPos3sv (short[] v);
-	public static final native void glRasterPos4dv (double[] v);
-	public static final native void glRasterPos4fv (float[] v);
-	public static final native void glRasterPos4iv (int[] v);
-	public static final native void glRasterPos4sv (short[] v);
-	public static final native void glReadBuffer (int mode);
-	public static final native void glReadPixels (int x, int y, int width, int height, int format, int type, int[] pixels); /* MULTIPLES TYPES ARRAY */
-	public static final native void glRectd (double x1, double y1, double x2, double y2);
-	public static final native void glRectf (float x1, float y1, float x2, float y2);
-	public static final native void glRecti (int x1, int y1, int x2, int y2);
-	public static final native void glRects (short x1, short y1, short x2, short y2);
-	public static final native void glRectdv (double[] v1, double[] v2);
-	public static final native void glRectfv (float[] v1, float[] v2);
-	public static final native void glRectiv (int[] v1, int[] v2);
-	public static final native void glRectsv (short[] v, short[] v2);
-	public static final native int glRenderMode (int mode);
-	public static final native void glRotated (double angle, double x, double y, double z);
-	public static final native void glRotatef (float angle, float x, float y, float z);
-	public static final native void glScaled (double x, double y, double z);
-	public static final native void glScalef (float x, float y, float z);
-	public static final native void glScissor (int x, int y, int width, int height);
-	//public static final native void glSelectBuffer (int size, int[] buffer);
-	public static final native void glSelectBuffer (int size, int buffer);
-	public static final native void glShadeModel (int mode);
-	public static final native void glStencilFunc (int func, int ref, int mask);
-	public static final native void glStencilMask (int mask);
-	public static final native void glStencilOp (int fail, int zfail, int zpass);
-	public static final native void glTexCoord1d (double s);
-	public static final native void glTexCoord1f (float s);
-	public static final native void glTexCoord1i (int s);
-	public static final native void glTexCoord1s (short s);
-	public static final native void glTexCoord2d (double s, double t);
-	public static final native void glTexCoord2f (float s, float t);
-	public static final native void glTexCoord2i (int s, int t);
-	public static final native void glTexCoord2s (short s, short t);
-	public static final native void glTexCoord3d (double s, double t, double r);
-	public static final native void glTexCoord3f (float s, float t, float r);
-	public static final native void glTexCoord3i (int s, int t, int r);
-	public static final native void glTexCoord3s (short s, short t, short r);
-	public static final native void glTexCoord4d (double s, double t, double r, double q);
-	public static final native void glTexCoord4f (float s, float t, float r, float q);
-	public static final native void glTexCoord4i (int s, int t, int r, int q);
-	public static final native void glTexCoord4s (short s, short t, short r, short q);
-	public static final native void glTexCoord1dv (double[] v);
-	public static final native void glTexCoord1fv (float[] v);
-	public static final native void glTexCoord1iv (int[] v);
-	public static final native void glTexCoord1sv (short[] v);
-	public static final native void glTexCoord2dv (double[] v);
-	public static final native void glTexCoord2fv (float[] v);
-	public static final native void glTexCoord2iv (int[] v);
-	public static final native void glTexCoord2sv (short[] v);
-	public static final native void glTexCoord3dv (double[] v);
-	public static final native void glTexCoord3fv (float[] v);
-	public static final native void glTexCoord3iv (int[] v);
-	public static final native void glTexCoord3sv (short[] v);
-	public static final native void glTexCoord4dv (double[] v);
-	public static final native void glTexCoord4fv (float[] v);
-	public static final native void glTexCoord4iv (int[] v);
-	public static final native void glTexCoord4sv (short[] v);
-	public static final native void glTexCoordPointer (int size, int type, int stride, int[] pointer); /*MULTIPLES ARRAYS - CHECK MSDK, COUNT PARAM MISSING */
-	public static final native void glTexEnvf (int target, int pname, float param);
-	public static final native void glTexEnvi (int target, int pname, int param);
-	public static final native void glTexEnvfv (int target, int pname, float[] params);
-	public static final native void glTexEnviv (int target, int pname, int[] params);
-	public static final native void glTexGend (int coord, int pname, double param);
-	public static final native void glTexGenf (int coord, int pname, float param);
-	public static final native void glTexGeni (int coord, int pname, int param);
-	public static final native void glTexGendv (int coord, int pname, double[] params);
-	public static final native void glTexGenfv (int coord, int pname, float[] params);
-	public static final native void glTexGeniv (int coord, int pname, int[] params);
-	public static final native void glTexImage1D (int target, int level, int internalFormat, int width, int border, int format, int type, int[] pixels); /* MULTIPLES ARRAYS */
-	public static final native void glTexImage2D (int target, int level, int internalFormat, int width, int height, int border, int format, int type, byte[] pixels); /* MULTIPLES ARRAYS */
-	public static final native void glTexParameterf (int target, int pname, float param);
-	public static final native void glTexParameteri (int target, int pname, int param);
-	public static final native void glTexParameterfv (int target, int pname, float[] params);
-	public static final native void glTexParameteriv (int target, int pname, int[] params);
-	public static final native void glTexSubImage1D (int target, int level, int xoffset, int width, int format, int type, int[] pixels); /* MULTIPLES ARRAYS */
-	public static final native void glTexSubImage2D (int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, int[] pixels); /* MULTIPLES ARRAYS */
-	public static final native void glTranslated (double x, double y, double z);
-	public static final native void glTranslatef (float x, float y, float z);
-	public static final native void glVertex2d (double x, double y);
-	public static final native void glVertex2f (float x, float y);
-	public static final native void glVertex2i (int x, int y);
-	public static final native void glVertex2s (short x, short y);
-	public static final native void glVertex3d (double x, double y, double z);
-	public static final native void glVertex3f (float x, float y, float z);
-	public static final native void glVertex3i (int x, int y, int z);
-	public static final native void glVertex3s (short x, short y, short z);
-	public static final native void glVertex4d (double x, double y, double z, double w);
-	public static final native void glVertex4f (float x, float y, float z, float w);
-	public static final native void glVertex4i (int x, int y, int z, int w);
-	public static final native void glVertex4s (short x, short y, short z, short w);
-	public static final native void glVertex2dv (double[] v);
-	public static final native void glVertex2fv (float[] v);
-	public static final native void glVertex2iv (int[] v);
-	public static final native void glVertex2sv (short[] v);
-	public static final native int glVertex3dv (double[] v);
-	public static final native int glVertex3dv (int v);
-	public static final native void glVertex3fv (float[] v);
-	public static final native void glVertex3iv (int[] v);
-	public static final native void glVertex3sv (short[] v);
-	public static final native int glVertex4dv (double[] v);
-	public static final native void glVertex4fv (float[] v);
-	public static final native void glVertex4iv (int[] v);
-	public static final native void glVertex4sv (short[] v);
-	public static final native void glVertexPointer (int size, int type, int stride, int[] pointer); /* MULTIPLES ARRAYS */
-	public static final native void glViewport (int x, int y, int width, int height);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLU.java b/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLU.java
deleted file mode 100644
index 2f83700..0000000
--- a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLU.java
+++ /dev/null
@@ -1,245 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-
-public class GLU {
-
-	/* Version */
-	public static final int GLU_VERSION_1_1 = 1;
-	public static final int GLU_VERSION_1_2 = 1;
-	
-	/* Errors: (return value 0 = no error) */
-	public static final int GLU_INVALID_ENUM = 100900;
-	public static final int GLU_INVALID_VALUE = 100901;
-	public static final int GLU_OUT_OF_MEMORY = 100902;
-	public static final int GLU_INCOMPATIBLE_GL_VERSION = 100903;
-	
-	/* StringName */
-	public static final int GLU_VERSION = 100800;
-	public static final int GLU_EXTENSIONS = 100801;
-	
-	
-	/****           Quadric constants               ****/
-	
-	/* QuadricNormal */
-	public static final int GLU_SMOOTH = 100000;
-	public static final int GLU_FLAT = 100001;
-	public static final int GLU_NONE = 100002;
-	
-	/* QuadricDrawStyle */
-	public static final int GLU_POINT = 100010;
-	public static final int GLU_LINE = 100011;
-	public static final int GLU_FILL = 100012;
-	public static final int GLU_SILHOUETTE = 100013;
-	
-	/* QuadricOrientation */
-	public static final int GLU_OUTSIDE = 100020;
-	public static final int GLU_INSIDE = 100021;
-	
-	/* Callback types: */
-	/*      GLU_ERROR               100103 */
-	
-	
-	/****           Tesselation constants           ****/
-	
-	public static final double GLU_TESS_MAX_COORD = 1.0e150;
-	
-	/* TessProperty */
-	public static final int GLU_TESS_WINDING_RULE = 100140;
-	public static final int GLU_TESS_BOUNDARY_ONLY = 100141;
-	public static final int GLU_TESS_TOLERANCE = 100142;
-	
-	/* TessWinding */
-	public static final int GLU_TESS_WINDING_ODD = 100130;
-	public static final int GLU_TESS_WINDING_NONZERO = 100131;
-	public static final int GLU_TESS_WINDING_POSITIVE = 100132;
-	public static final int GLU_TESS_WINDING_NEGATIVE = 100133;
-	public static final int GLU_TESS_WINDING_ABS_GEQ_TWO = 100134;
-	
-	/* TessCallback */
-	public static final int GLU_TESS_BEGIN = 100100;  /* void (CALLBACK*)(GLenum    type)  */
-	public static final int GLU_TESS_VERTEX = 100101;  /* void (CALLBACK*)(void      *data) */
-	public static final int GLU_TESS_END = 100102;  /* void (CALLBACK*)(void)            */
-	public static final int GLU_TESS_ERROR = 100103;  /* void (CALLBACK*)(GLenum    errno) */
-	public static final int GLU_TESS_EDGE_FLAG = 100104;  /* void (CALLBACK*)(GLboolean boundaryEdge)  */
-	public static final int GLU_TESS_COMBINE = 100105;  /* void (CALLBACK*)(GLdouble  coords[3],
-	                                                            void      *data[4],
-	                                                            GLfloat   weight[4],
-	                                                            void      **dataOut)     */
-	public static final int GLU_TESS_BEGIN_DATA = 100106;  /* void (CALLBACK*)(GLenum    type,  
-	                                                            void      *polygon_data) */
-	public static final int GLU_TESS_VERTEX_DATA = 100107;  /* void (CALLBACK*)(void      *data, 
-	                                                            void      *polygon_data) */
-	public static final int GLU_TESS_END_DATA = 100108;  /* void (CALLBACK*)(void      *polygon_data) */
-	public static final int GLU_TESS_ERROR_DATA = 100109;  /* void (CALLBACK*)(GLenum    errno, 
-	                                                            void      *polygon_data) */
-	public static final int GLU_TESS_EDGE_FLAG_DATA = 100110;  /* void (CALLBACK*)(GLboolean boundaryEdge,
-	                                                            void      *polygon_data) */
-	public static final int GLU_TESS_COMBINE_DATA = 100111;  /* void (CALLBACK*)(GLdouble  coords[3],
-	                                                            void      *data[4],
-	                                                            GLfloat   weight[4],
-	                                                            void      **dataOut,
-	                                                            void      *polygon_data) */
-	
-	/* TessError */
-	public static final int GLU_TESS_ERROR1 = 100151;
-	public static final int GLU_TESS_ERROR2 = 100152;
-	public static final int GLU_TESS_ERROR3 = 100153;
-	public static final int GLU_TESS_ERROR4 = 100154;
-	public static final int GLU_TESS_ERROR5 = 100155;
-	public static final int GLU_TESS_ERROR6 = 100156;
-	public static final int GLU_TESS_ERROR7 = 100157;
-	public static final int GLU_TESS_ERROR8 = 100158;
-	
-	public static final int GLU_TESS_MISSING_BEGIN_POLYGON = GLU_TESS_ERROR1;
-	public static final int GLU_TESS_MISSING_BEGIN_CONTOUR = GLU_TESS_ERROR2;
-	public static final int GLU_TESS_MISSING_END_POLYGON = GLU_TESS_ERROR3;
-	public static final int GLU_TESS_MISSING_END_CONTOUR = GLU_TESS_ERROR4;
-	public static final int GLU_TESS_COORD_TOO_LARGE = GLU_TESS_ERROR5;
-	public static final int GLU_TESS_NEED_COMBINE_CALLBACK = GLU_TESS_ERROR6;
-	
-	/****           NURBS constants                 ****/
-	
-	/* NurbsProperty */
-	public static final int GLU_AUTO_LOAD_MATRIX = 100200;
-	public static final int GLU_CULLING = 100201;
-	public static final int GLU_SAMPLING_TOLERANCE = 100203;
-	public static final int GLU_DISPLAY_MODE = 100204;
-	public static final int GLU_PARAMETRIC_TOLERANCE = 100202;
-	public static final int GLU_SAMPLING_METHOD = 100205;
-	public static final int GLU_U_STEP = 100206;
-	public static final int GLU_V_STEP = 100207;
-	
-	/* NurbsSampling */
-	public static final int GLU_PATH_LENGTH = 100215;
-	public static final int GLU_PARAMETRIC_ERROR = 100216;
-	public static final int GLU_DOMAIN_DISTANCE = 100217;
-	
-	
-	/* NurbsTrim */
-	public static final int GLU_MAP1_TRIM_2 = 100210;
-	public static final int GLU_MAP1_TRIM_3 = 100211;
-	
-	/* NurbsDisplay */
-	/*      GLU_FILL                100012 */
-	public static final int GLU_OUTLINE_POLYGON = 100240;
-	public static final int GLU_OUTLINE_PATCH = 100241;
-	
-	/* NurbsCallback */
-	/*      GLU_ERROR               100103 */
-	
-	/* NurbsErrors */
-	public static final int GLU_NURBS_ERROR1 = 100251;
-	public static final int GLU_NURBS_ERROR2 = 100252;
-	public static final int GLU_NURBS_ERROR3 = 100253;
-	public static final int GLU_NURBS_ERROR4 = 100254;
-	public static final int GLU_NURBS_ERROR5 = 100255;
-	public static final int GLU_NURBS_ERROR6 = 100256;
-	public static final int GLU_NURBS_ERROR7 = 100257;
-	public static final int GLU_NURBS_ERROR8 = 100258;
-	public static final int GLU_NURBS_ERROR9 = 100259;
-	public static final int GLU_NURBS_ERROR10 = 100260;
-	public static final int GLU_NURBS_ERROR11 = 100261;
-	public static final int GLU_NURBS_ERROR12 = 100262;
-	public static final int GLU_NURBS_ERROR13 = 100263;
-	public static final int GLU_NURBS_ERROR14 = 100264;
-	public static final int GLU_NURBS_ERROR15 = 100265;
-	public static final int GLU_NURBS_ERROR16 = 100266;
-	public static final int GLU_NURBS_ERROR17 = 100267;
-	public static final int GLU_NURBS_ERROR18 = 100268;
-	public static final int GLU_NURBS_ERROR19 = 100269;
-	public static final int GLU_NURBS_ERROR20 = 100270;
-	public static final int GLU_NURBS_ERROR21 = 100271;
-	public static final int GLU_NURBS_ERROR22 = 100272;
-	public static final int GLU_NURBS_ERROR23 = 100273;
-	public static final int GLU_NURBS_ERROR24 = 100274;
-	public static final int GLU_NURBS_ERROR25 = 100275;
-	public static final int GLU_NURBS_ERROR26 = 100276;
-	public static final int GLU_NURBS_ERROR27 = 100277;
-	public static final int GLU_NURBS_ERROR28 = 100278;
-	public static final int GLU_NURBS_ERROR29 = 100279;
-	public static final int GLU_NURBS_ERROR30 = 100280;
-	public static final int GLU_NURBS_ERROR31 = 100281;
-	public static final int GLU_NURBS_ERROR32 = 100282;
-	public static final int GLU_NURBS_ERROR33 = 100283;
-	public static final int GLU_NURBS_ERROR34 = 100284;
-	public static final int GLU_NURBS_ERROR35 = 100285;
-	public static final int GLU_NURBS_ERROR36 = 100286;
-	public static final int GLU_NURBS_ERROR37 = 100287;
-	
-	/* Contours types -- obsolete! */
-	public static final int GLU_CW = 100120;
-	public static final int GLU_CCW = 100121;
-	public static final int GLU_INTERIOR = 100122;
-	public static final int GLU_EXTERIOR = 100123;
-	public static final int GLU_UNKNOWN = 100124;
-	
-	/* Names without "TESS_" prefix */
-	public static final int GLU_BEGIN = GLU_TESS_BEGIN;
-	public static final int GLU_VERTEX = GLU_TESS_VERTEX;
-	public static final int GLU_END = GLU_TESS_END;
-	public static final int GLU_ERROR = GLU_TESS_ERROR;
-	public static final int GLU_EDGE_FLAG = GLU_TESS_EDGE_FLAG;
-	
-	
-	public static final native void gluBeginCurve (int nobj);
-	public static final native void gluEndCurve (int nobj);
-	public static final native void gluBeginPolygon (int tess);
-	public static final native void gluEndPolygon (int tess);
-	public static final native void gluBeginSurface (int nobj);
-	public static final native void gluEndSurface (int nobj);
-	public static final native void gluBeginTrim (int nobj);
-	public static final native void gluEndTrim (int nobj);
-	public static final native int gluBuild1DMipmaps (int target, int componenets, int width, int format, int type, int data); /* MULTIPLES TYPES ARRAY */
-	public static final native int gluBuild2DMipmaps (int target, int componenets, int width, int height, int format, int type, byte[] data); /* MULTIPLES TYPES ARRAY */
-	public static final native void gluCylinder (int qobj, double baseRadius, double topRadius, double height, int slices, int stacks);
-	public static final native void gluDeleteNurbsRenderer (int nobj);
-	public static final native void gluDeleteQuadric (int qobj);
-	public static final native void gluDeleteTess (int tess);
-	public static final native void gluDisk (int qobj, double innerRadius, double outerRadius, int slices, int loops);
-	public static final native int gluErrorString (int errCode);  /* SHOULD RETURN A STRING */
-	public static final native void gluGetNurbsProperty (int nobj, int property, float[] value);
-	public static final native int gluGetString (int name); /* SHOULD RETURN A STRING */
-	public static final native void gluGetTessProperty (int tess, int which, double[] value);
-	public static final native void gluLoadSamplingMatrices (int nobj, float[] modelMatrix, float[] projMatrix, int[] viewport);
-	public static final native void gluLookAt (double eyex, double eyey, double eyez, double centerx, double centery, double centerz, double upx, double upy, double upz);
-	public static final native int gluNewNurbsRenderer ();
-	public static final native int gluNewQuadric ();
-	public static final native int gluNewTess ();
-	public static final native void gluNextContour (int tess, int type);
-	public static final native void gluNurbsCallback (int nobj, int which, int fn);
-	public static final native void gluNurbsCurve (int nobj, int nknots, float[] knot, int stride, float[] ctlarray, int order, int type);
-	public static final native void gluNurbsProperty (int nobj, int property, float value);
-	public static final native void gluNurbsSurface (int nobj, int sknot_count, float[] sknot, int tknot_count, float[] tknot, int s_stride, int t_stride, float[] ctlarray, int sorder, int torder, int type);
-	public static final native void gluOrtho2D (double left, double right, double bottom, double top);
-	public static final native void gluPartialDisk (int qobj, double innerRadius, double outerRadius, int slices, int loops, double startAngle, double sweepAngle);
-	public static final native void gluPerspective (double fovy, double aspect, double zNear, double zFar);
-	public static final native void gluPickMatrix (double x, double y, double width, double height, int[] viewport);
-	public static final native int gluProject (double objx, double objy, double objz,double[] modelMatrix, double[] projMatrix, int[] viewport, double[] winx, double[] winy, double[] winz);
-	public static final native void gluPwlCurve (int nobj, int count, float[] array, int stride, int type);
-	public static final native void gluQuadricCallback (int qobj, int which, int fn);
-	public static final native void gluQuadricDrawStyle (int qobj, int drawStyle);
-	public static final native void gluQuadricNormals (int qobj, int normals);
-	public static final native void gluQuadricOrientation (int qobj, int orientation);
-	public static final native void gluQuadricTexture (int qobj, boolean textureCoords);
-	public static final native int gluScaleImage (int format, int widthin, int heightin, int typein, int datain, int widthout, int heightout, int typeout, int dataout); /*MULTIPLES TYPES ARRAYS*/
-	public static final native void gluSphere (int qobj, double radius, int slices, int stacks);
-	public static final native void gluTessBeginContour (int tess);
-	public static final native void gluTessEndContour (int tess);
-	public static final native void gluTessBeginPolygon (int tess, int polygon_data);
-	public static final native void gluTessEndPolygon (int tess);
-	public static final native void gluTessCallback (int tess, int which, int fn);
-	public static final native void gluTessNormal (int tess, double x, double y, double z);
-	public static final native void gluTessProperty (int tess, int property, double value); /* CHECK MSDN, VALUE'S TYPE IS DOUBLE */
-	public static final native void gluTessVertex (int tess, double[] coords, int data);
-	public static final native int gluUnProject (double winx, double winy, double winz, double[] modelMatrix, double[] projMatrix, int[] viewport, double[] objx, double[] objy, double[] objz);
-}
diff --git a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLYPHMETRICSFLOAT.java b/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLYPHMETRICSFLOAT.java
deleted file mode 100644
index 4da0a94..0000000
--- a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/GLYPHMETRICSFLOAT.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-
-public class GLYPHMETRICSFLOAT {
-    public float gmfBlackBoxX;
-    public float gmfBlackBoxY;
-    public float gmfptGlyphOrigin_x;
-    public float gmfptGlyphOrigin_y;
-    public float gmfCellIncX;
-    public float gmfCellIncY;
-	public static final int sizeof = 24;
-}
diff --git a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/ImageDataUtil.java b/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/ImageDataUtil.java
deleted file mode 100644
index d900285..0000000
--- a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/ImageDataUtil.java
+++ /dev/null
@@ -1,524 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-
-public class ImageDataUtil {
-	/**
-	 * Alpha mode, values 0 - 255 specify global alpha level
-	 */
-	static final int
-		ALPHA_OPAQUE = 255,           // Fully opaque (ignores any alpha data)
-		ALPHA_TRANSPARENT = 0,        // Fully transparent (ignores any alpha data)
-		ALPHA_CHANNEL_SEPARATE = -1,  // Use alpha channel from separate alphaData
-		ALPHA_CHANNEL_SOURCE = -2,    // Use alpha channel embedded in sourceData
-		ALPHA_MASK_UNPACKED = -3,     // Use transparency mask formed by bytes in alphaData (non-zero is opaque)
-		ALPHA_MASK_PACKED = -4,       // Use transparency mask formed by packed bits in alphaData
-		ALPHA_MASK_INDEX = -5,        // Consider source palette indices transparent if in alphaData array
-		ALPHA_MASK_RGB = -6;          // Consider source RGBs transparent if in RGB888 format alphaData array
-		
-	/**
-	 * Data types (internal)
-	 */
-	private static final int
-		// direct / true color formats with arbitrary masks & shifts
-		TYPE_GENERIC_8 = 0,
-		TYPE_GENERIC_16_MSB = 1,
-		TYPE_GENERIC_16_LSB = 2,
-		TYPE_GENERIC_24 = 3,
-		TYPE_GENERIC_32_MSB = 4,
-		TYPE_GENERIC_32_LSB = 5,
-		// palette indexed color formats
-		TYPE_INDEX_8 = 6,
-		TYPE_INDEX_4 = 7,
-		TYPE_INDEX_2 = 8,
-		TYPE_INDEX_1_MSB = 9,
-		TYPE_INDEX_1_LSB = 10;
-		
-	/**
-	 * Byte and bit order constants.
-	 */
-	static final int LSB_FIRST = 0;
-	static final int MSB_FIRST = 1;
-	
-	/**
-	 * Blit operation bits to be OR'ed together to specify the desired operation.
-	 */
-	static final int
-		BLIT_SRC = 1,     // copy source directly, else applies logic operations
-		BLIT_ALPHA = 2,   // enable alpha blending
-		BLIT_DITHER = 4;  // enable dithering in low color modes
-		
-	/**
-	 * Arbitrary channel width data to 8-bit conversion table.
-	 */
-	static final byte[][] ANY_TO_EIGHT = new byte[9][];
-	static {
-		for (int b = 0; b < 9; ++b) {
-			byte[] data = ANY_TO_EIGHT[b] = new byte[1 << b];
-			if (b == 0) continue;
-			int inc = 0;
-			for (int bit = 0x10000; (bit >>= b) != 0;) inc |= bit;
-			for (int v = 0, p = 0; v < 0x10000; v+= inc) data[p++] = (byte)(v >> 8);
-		}
-	}
-
-	/**
-	 * Blits a direct palette image into a direct palette image.
-	 * <p>
-	 * Note: When the source and destination depth, order and masks
-	 * are pairwise equal and the blitter operation is BLIT_SRC,
-	 * the masks are ignored.  Hence when not changing the image
-	 * data format, 0 may be specified for the masks.
-	 * </p>
-	 * 
-	 * @param op the blitter operation: a combination of BLIT_xxx flags
-	 *        (see BLIT_xxx constants)
-	 * @param srcData the source byte array containing image data
-	 * @param srcDepth the source depth: one of 8, 16, 24, 32
-	 * @param srcStride the source number of bytes per line
-	 * @param srcOrder the source byte ordering: one of MSB_FIRST or LSB_FIRST;
-	 *        ignored if srcDepth is not 16 or 32
-	 * @param srcX the top-left x-coord of the source blit region
-	 * @param srcY the top-left y-coord of the source blit region
-	 * @param srcWidth the width of the source blit region
-	 * @param srcHeight the height of the source blit region
-	 * @param srcRedMask the source red channel mask
-	 * @param srcGreenMask the source green channel mask
-	 * @param srcBlueMask the source blue channel mask
-	 * @param alphaMode the alpha blending or mask mode, may be
-	 *        an integer 0-255 for global alpha; ignored if BLIT_ALPHA
-	 *        not specified in the blitter operations
-	 *        (see ALPHA_MODE_xxx constants)
-	 * @param alphaData the alpha blending or mask data, varies depending
-	 *        on the value of alphaMode and sometimes ignored
-	 * @param alphaStride the alpha data number of bytes per line
-	 * @param alphaX the top-left x-coord of the alpha blit region
-	 * @param alphaY the top-left y-coord of the alpha blit region
-	 * @param destData the destination byte array containing image data
-	 * @param destDepth the destination depth: one of 8, 16, 24, 32
-	 * @param destStride the destination number of bytes per line
-	 * @param destOrder the destination byte ordering: one of MSB_FIRST or LSB_FIRST;
-	 *        ignored if destDepth is not 16 or 32
-	 * @param destX the top-left x-coord of the destination blit region
-	 * @param destY the top-left y-coord of the destination blit region
-	 * @param destWidth the width of the destination blit region
-	 * @param destHeight the height of the destination blit region
-	 * @param destRedMask the destination red channel mask
-	 * @param destGreenMask the destination green channel mask
-	 * @param destBlueMask the destination blue channel mask
-	 * @param flipX if true the resulting image is flipped along the vertical axis
-	 * @param flipY if true the resulting image is flipped along the horizontal axis
-	 */
-	static void blit(int op,
-		byte[] srcData, int srcDepth, int srcStride, int srcOrder,
-		int srcX, int srcY, int srcWidth, int srcHeight,
-		int srcRedMask, int srcGreenMask, int srcBlueMask,
-		int alphaMode, byte[] alphaData, int alphaStride, int alphaX, int alphaY,
-		byte[] destData, int destDepth, int destStride, int destOrder,
-		int destX, int destY, int destWidth, int destHeight,
-		int destRedMask, int destGreenMask, int destBlueMask,
-		boolean flipX, boolean flipY) {
-		if ((destWidth <= 0) || (destHeight <= 0) || (alphaMode == ALPHA_TRANSPARENT)) return;
-
-		// these should be supplied as params later
-		final int srcAlphaMask = 0, destAlphaMask = 0;
-
-		/*** Prepare scaling data ***/
-		final int dwm1 = destWidth - 1;
-		final int sfxi = (dwm1 != 0) ? (int)((((long)srcWidth << 16) - 1) / dwm1) : 0;
-		final int dhm1 = destHeight - 1;
-		final int sfyi = (dhm1 != 0) ? (int)((((long)srcHeight << 16) - 1) / dhm1) : 0;
-
-		/*** Prepare source-related data ***/
-		final int sbpp, stype;
-		switch (srcDepth) {
-			case 8:
-				sbpp = 1;
-				stype = TYPE_GENERIC_8;
-				break;
-			case 16:
-				sbpp = 2;
-				stype = (srcOrder == MSB_FIRST) ? TYPE_GENERIC_16_MSB : TYPE_GENERIC_16_LSB;
-				break;
-			case 24:
-				sbpp = 3;
-				stype = TYPE_GENERIC_24;
-				break;
-			case 32:
-				sbpp = 4;
-				stype = (srcOrder == MSB_FIRST) ? TYPE_GENERIC_32_MSB : TYPE_GENERIC_32_LSB;
-				break;
-			default:
-				//throw new IllegalArgumentException("Invalid source type");
-				return;
-		}			
-		int spr = srcY * srcStride + srcX * sbpp;
-
-		/*** Prepare destination-related data ***/
-		final int dbpp, dtype;
-		switch (destDepth) {
-			case 8:
-				dbpp = 1;
-				dtype = TYPE_GENERIC_8;
-				break;
-			case 16:
-				dbpp = 2;
-				dtype = (destOrder == MSB_FIRST) ? TYPE_GENERIC_16_MSB : TYPE_GENERIC_16_LSB;
-				break;
-			case 24:
-				dbpp = 3;
-				dtype = TYPE_GENERIC_24;
-				break;
-			case 32:
-				dbpp = 4;
-				dtype = (destOrder == MSB_FIRST) ? TYPE_GENERIC_32_MSB : TYPE_GENERIC_32_LSB;
-				break;
-			default:
-				//throw new IllegalArgumentException("Invalid destination type");
-				return;
-		}			
-		int dpr = ((flipY) ? destY + dhm1 : destY) * destStride + ((flipX) ? destX + dwm1 : destX) * dbpp;
-		final int dprxi = (flipX) ? -dbpp : dbpp;
-		final int dpryi = (flipY) ? -destStride : destStride;
-
-		/*** Prepare special processing data ***/
-		int apr;
-		if ((op & BLIT_ALPHA) != 0) {
-			switch (alphaMode) {
-				case ALPHA_MASK_UNPACKED:
-				case ALPHA_CHANNEL_SEPARATE:
-					if (alphaData == null) alphaMode = 0x10000;
-					apr = alphaY * alphaStride + alphaX;
-					break;
-				case ALPHA_MASK_PACKED:
-					if (alphaData == null) alphaMode = 0x10000;
-					alphaStride <<= 3;
-					apr = alphaY * alphaStride + alphaX;
-					break;
-				case ALPHA_MASK_INDEX:
-					//throw new IllegalArgumentException("Invalid alpha type");
-					return;
-				case ALPHA_MASK_RGB:
-					if (alphaData == null) alphaMode = 0x10000;
-					apr = 0;
-					break;
-				default:
-					alphaMode = (alphaMode << 16) / 255; // prescale
-				case ALPHA_CHANNEL_SOURCE:
-					apr = 0;
-					break;
-			}
-		} else {
-			alphaMode = 0x10000;
-			apr = 0;
-		}
-
-		/*** Blit ***/
-		int dp = dpr;
-		int sp = spr;
-		if ((alphaMode == 0x10000) && (stype == dtype) &&
-			(srcRedMask == destRedMask) && (srcGreenMask == destGreenMask) &&
-			(srcBlueMask == destBlueMask) && (srcAlphaMask == destAlphaMask)) {
-			/*** Fast blit (straight copy) ***/
-			switch (sbpp) {
-				case 1:
-					for (int dy = destHeight, sfy = sfyi; dy > 0; --dy, sp = spr += (sfy >>> 16) * srcStride, sfy = (sfy & 0xffff) + sfyi, dp = dpr += dpryi) {
-						for (int dx = destWidth, sfx = sfxi; dx > 0; --dx, dp += dprxi, sfx = (sfx & 0xffff) + sfxi) {
-							destData[dp] = srcData[sp];
-							sp += (sfx >>> 16);
-						}
-					}
-					break;					
-				case 2:
-					for (int dy = destHeight, sfy = sfyi; dy > 0; --dy, sp = spr += (sfy >>> 16) * srcStride, sfy = (sfy & 0xffff) + sfyi, dp = dpr += dpryi) {
-						for (int dx = destWidth, sfx = sfxi; dx > 0; --dx, dp += dprxi, sfx = (sfx & 0xffff) + sfxi) {
-							destData[dp] = srcData[sp];
-							destData[dp + 1] = srcData[sp + 1];
-							sp += (sfx >>> 16) * 2;
-						}
-					}
-					break;
-				case 3:
-					for (int dy = destHeight, sfy = sfyi; dy > 0; --dy, sp = spr += (sfy >>> 16) * srcStride, sfy = (sfy & 0xffff) + sfyi, dp = dpr += dpryi) {
-						for (int dx = destWidth, sfx = sfxi; dx > 0; --dx, dp += dprxi, sfx = (sfx & 0xffff) + sfxi) {
-							destData[dp] = srcData[sp];
-							destData[dp + 1] = srcData[sp + 1];
-							destData[dp + 2] = srcData[sp + 2];
-							sp += (sfx >>> 16) * 3;
-						}
-					}
-					break;
-				case 4:
-					for (int dy = destHeight, sfy = sfyi; dy > 0; --dy, sp = spr += (sfy >>> 16) * srcStride, sfy = (sfy & 0xffff) + sfyi, dp = dpr += dpryi) {
-						for (int dx = destWidth, sfx = sfxi; dx > 0; --dx, dp += dprxi, sfx = (sfx & 0xffff) + sfxi) {
-							destData[dp] = srcData[sp];
-							destData[dp + 1] = srcData[sp + 1];
-							destData[dp + 2] = srcData[sp + 2];
-							destData[dp + 3] = srcData[sp + 3];
-							sp += (sfx >>> 16) * 4;
-						}
-					}
-					break;
-			}
-			return;
-		}
-		/*** Comprehensive blit (apply transformations) ***/
-		final int srcRedShift = getChannelShift(srcRedMask);
-		final byte[] srcReds = ANY_TO_EIGHT[getChannelWidth(srcRedMask, srcRedShift)];
-		final int srcGreenShift = getChannelShift(srcGreenMask);
-		final byte[] srcGreens = ANY_TO_EIGHT[getChannelWidth(srcGreenMask, srcGreenShift)];
-		final int srcBlueShift = getChannelShift(srcBlueMask);
-		final byte[] srcBlues = ANY_TO_EIGHT[getChannelWidth(srcBlueMask, srcBlueShift)];
-		final int srcAlphaShift = getChannelShift(srcAlphaMask);
-		final byte[] srcAlphas = ANY_TO_EIGHT[getChannelWidth(srcAlphaMask, srcAlphaShift)];
-
-		final int destRedShift = getChannelShift(destRedMask);
-		final int destRedWidth = getChannelWidth(destRedMask, destRedShift);
-		final byte[] destReds = ANY_TO_EIGHT[destRedWidth];
-		final int destRedPreShift = 8 - destRedWidth;
-		final int destGreenShift = getChannelShift(destGreenMask);
-		final int destGreenWidth = getChannelWidth(destGreenMask, destGreenShift);
-		final byte[] destGreens = ANY_TO_EIGHT[destGreenWidth];
-		final int destGreenPreShift = 8 - destGreenWidth;
-		final int destBlueShift = getChannelShift(destBlueMask);
-		final int destBlueWidth = getChannelWidth(destBlueMask, destBlueShift);
-		final byte[] destBlues = ANY_TO_EIGHT[destBlueWidth];
-		final int destBluePreShift = 8 - destBlueWidth;
-		final int destAlphaShift = getChannelShift(destAlphaMask);
-		final int destAlphaWidth = getChannelWidth(destAlphaMask, destAlphaShift);
-		final byte[] destAlphas = ANY_TO_EIGHT[destAlphaWidth];
-		final int destAlphaPreShift = 8 - destAlphaWidth;
-
-		int ap = apr, alpha = alphaMode;
-		int r = 0, g = 0, b = 0, a = 0;
-		int rq = 0, gq = 0, bq = 0, aq = 0;
-		for (int dy = destHeight, sfy = sfyi; dy > 0; --dy,
-				sp = spr += (sfy >>> 16) * srcStride,
-				ap = apr += (sfy >>> 16) * alphaStride,
-				sfy = (sfy & 0xffff) + sfyi,
-				dp = dpr += dpryi) {
-			for (int dx = destWidth, sfx = sfxi; dx > 0; --dx,
-					dp += dprxi,
-					sfx = (sfx & 0xffff) + sfxi) {
-				/*** READ NEXT PIXEL ***/
-				switch (stype) {
-					case TYPE_GENERIC_8: {
-						final int data = srcData[sp] & 0xff;
-						sp += (sfx >>> 16);
-						r = srcReds[(data & srcRedMask) >>> srcRedShift] & 0xff;
-						g = srcGreens[(data & srcGreenMask) >>> srcGreenShift] & 0xff;
-						b = srcBlues[(data & srcBlueMask) >>> srcBlueShift] & 0xff;
-						a = srcAlphas[(data & srcAlphaMask) >>> srcAlphaShift] & 0xff;
-					} break;
-					case TYPE_GENERIC_16_MSB: {
-						final int data = ((srcData[sp] & 0xff) << 8) | (srcData[sp + 1] & 0xff);
-						sp += (sfx >>> 16) * 2;
-						r = srcReds[(data & srcRedMask) >>> srcRedShift] & 0xff;
-						g = srcGreens[(data & srcGreenMask) >>> srcGreenShift] & 0xff;
-						b = srcBlues[(data & srcBlueMask) >>> srcBlueShift] & 0xff;
-						a = srcAlphas[(data & srcAlphaMask) >>> srcAlphaShift] & 0xff;
-					} break;
-					case TYPE_GENERIC_16_LSB: {
-						final int data = ((srcData[sp + 1] & 0xff) << 8) | (srcData[sp] & 0xff);
-						sp += (sfx >>> 16) * 2;
-						r = srcReds[(data & srcRedMask) >>> srcRedShift] & 0xff;
-						g = srcGreens[(data & srcGreenMask) >>> srcGreenShift] & 0xff;
-						b = srcBlues[(data & srcBlueMask) >>> srcBlueShift] & 0xff;
-						a = srcAlphas[(data & srcAlphaMask) >>> srcAlphaShift] & 0xff;
-					} break;
-					case TYPE_GENERIC_24: {
-						final int data = (( ((srcData[sp] & 0xff) << 8) |
-							(srcData[sp + 1] & 0xff)) << 8) |
-							(srcData[sp + 2] & 0xff);
-						sp += (sfx >>> 16) * 3;
-						r = srcReds[(data & srcRedMask) >>> srcRedShift] & 0xff;
-						g = srcGreens[(data & srcGreenMask) >>> srcGreenShift] & 0xff;
-						b = srcBlues[(data & srcBlueMask) >>> srcBlueShift] & 0xff;
-						a = srcAlphas[(data & srcAlphaMask) >>> srcAlphaShift] & 0xff;
-					} break;
-					case TYPE_GENERIC_32_MSB: {
-						final int data = (( (( ((srcData[sp] & 0xff) << 8) |
-							(srcData[sp + 1] & 0xff)) << 8) |
-							(srcData[sp + 2] & 0xff)) << 8) |
-							(srcData[sp + 3] & 0xff);
-						sp += (sfx >>> 16) * 4;
-						r = srcReds[(data & srcRedMask) >>> srcRedShift] & 0xff;
-						g = srcGreens[(data & srcGreenMask) >>> srcGreenShift] & 0xff;
-						b = srcBlues[(data & srcBlueMask) >>> srcBlueShift] & 0xff;
-						a = srcAlphas[(data & srcAlphaMask) >>> srcAlphaShift] & 0xff;
-					} break;
-					case TYPE_GENERIC_32_LSB: {
-						final int data = (( (( ((srcData[sp + 3] & 0xff) << 8) |
-							(srcData[sp + 2] & 0xff)) << 8) |
-							(srcData[sp + 1] & 0xff)) << 8) |
-							(srcData[sp] & 0xff);
-						sp += (sfx >>> 16) * 4;
-						r = srcReds[(data & srcRedMask) >>> srcRedShift] & 0xff;
-						g = srcGreens[(data & srcGreenMask) >>> srcGreenShift] & 0xff;
-						b = srcBlues[(data & srcBlueMask) >>> srcBlueShift] & 0xff;
-						a = srcAlphas[(data & srcAlphaMask) >>> srcAlphaShift] & 0xff;
-					} break;
-				}
-
-				/*** DO SPECIAL PROCESSING IF REQUIRED ***/
-				switch (alphaMode) {
-					case ALPHA_CHANNEL_SEPARATE:
-						alpha = ((alphaData[ap] & 0xff) << 16) / 255;
-						ap += (sfx >> 16);
-						break;
-					case ALPHA_CHANNEL_SOURCE:
-						alpha = (a << 16) / 255;
-						break;
-					case ALPHA_MASK_UNPACKED:
-						alpha = (alphaData[ap] != 0) ? 0x10000 : 0;
-						ap += (sfx >> 16);
-						break;						
-					case ALPHA_MASK_PACKED:
-						alpha = (alphaData[ap >> 3] << ((ap & 7) + 9)) & 0x10000;
-						ap += (sfx >> 16);
-						break;
-					case ALPHA_MASK_RGB:
-						alpha = 0x10000;
-						for (int i = 0; i < alphaData.length; i += 3) {
-							if ((r == alphaData[i]) && (g == alphaData[i + 1]) && (b == alphaData[i + 2])) {
-								alpha = 0x0000;
-								break;
-							}
-						}
-						break;
-				}
-				if (alpha != 0x10000) {
-					if (alpha == 0x0000) continue;
-					switch (dtype) {
-						case TYPE_GENERIC_8: {
-							final int data = destData[dp] & 0xff;
-							rq = destReds[(data & destRedMask) >>> destRedShift] & 0xff;
-							gq = destGreens[(data & destGreenMask) >>> destGreenShift] & 0xff;
-							bq = destBlues[(data & destBlueMask) >>> destBlueShift] & 0xff;
-							aq = destAlphas[(data & destAlphaMask) >>> destAlphaShift] & 0xff;
-						} break;
-						case TYPE_GENERIC_16_MSB: {
-							final int data = ((destData[dp] & 0xff) << 8) | (destData[dp + 1] & 0xff);
-							rq = destReds[(data & destRedMask) >>> destRedShift] & 0xff;
-							gq = destGreens[(data & destGreenMask) >>> destGreenShift] & 0xff;
-							bq = destBlues[(data & destBlueMask) >>> destBlueShift] & 0xff;
-							aq = destAlphas[(data & destAlphaMask) >>> destAlphaShift] & 0xff;
-						} break;
-						case TYPE_GENERIC_16_LSB: {
-							final int data = ((destData[dp + 1] & 0xff) << 8) | (destData[dp] & 0xff);
-							rq = destReds[(data & destRedMask) >>> destRedShift] & 0xff;
-							gq = destGreens[(data & destGreenMask) >>> destGreenShift] & 0xff;
-							bq = destBlues[(data & destBlueMask) >>> destBlueShift] & 0xff;
-							aq = destAlphas[(data & destAlphaMask) >>> destAlphaShift] & 0xff;
-						} break;
-						case TYPE_GENERIC_24: {
-							final int data = (( ((destData[dp] & 0xff) << 8) |
-								(destData[dp + 1] & 0xff)) << 8) |
-								(destData[dp + 2] & 0xff);
-							rq = destReds[(data & destRedMask) >>> destRedShift] & 0xff;
-							gq = destGreens[(data & destGreenMask) >>> destGreenShift] & 0xff;
-							bq = destBlues[(data & destBlueMask) >>> destBlueShift] & 0xff;
-							aq = destAlphas[(data & destAlphaMask) >>> destAlphaShift] & 0xff;
-						} break;
-						case TYPE_GENERIC_32_MSB: {
-							final int data = (( (( ((destData[dp] & 0xff) << 8) |
-								(destData[dp + 1] & 0xff)) << 8) |
-								(destData[dp + 2] & 0xff)) << 8) |
-								(destData[dp + 3] & 0xff);
-							rq = destReds[(data & destRedMask) >>> destRedShift] & 0xff;
-							gq = destGreens[(data & destGreenMask) >>> destGreenShift] & 0xff;
-							bq = destBlues[(data & destBlueMask) >>> destBlueShift] & 0xff;
-							aq = destAlphas[(data & destAlphaMask) >>> destAlphaShift] & 0xff;
-						} break;
-						case TYPE_GENERIC_32_LSB: {
-							final int data = (( (( ((destData[dp + 3] & 0xff) << 8) |
-								(destData[dp + 2] & 0xff)) << 8) |
-								(destData[dp + 1] & 0xff)) << 8) |
-								(destData[dp] & 0xff);
-							rq = destReds[(data & destRedMask) >>> destRedShift] & 0xff;
-							gq = destGreens[(data & destGreenMask) >>> destGreenShift] & 0xff;
-							bq = destBlues[(data & destBlueMask) >>> destBlueShift] & 0xff;
-							aq = destAlphas[(data & destAlphaMask) >>> destAlphaShift] & 0xff;
-						} break;
-					}
-					// Perform alpha blending
-					a = aq + ((a - aq) * alpha >> 16);
-					r = rq + ((r - rq) * alpha >> 16);
-					g = gq + ((g - gq) * alpha >> 16);
-					b = bq + ((b - bq) * alpha >> 16);
-				}
-
-				/*** WRITE NEXT PIXEL ***/
-				final int data = 
-					(r >>> destRedPreShift << destRedShift) |
-					(g >>> destGreenPreShift << destGreenShift) |
-					(b >>> destBluePreShift << destBlueShift) |
-					(a >>> destAlphaPreShift << destAlphaShift);
-				switch (dtype) {
-					case TYPE_GENERIC_8: {
-						destData[dp] = (byte) data;
-					} break;
-					case TYPE_GENERIC_16_MSB: {
-						destData[dp] = (byte) (data >>> 8);
-						destData[dp + 1] = (byte) (data & 0xff);
-					} break;
-					case TYPE_GENERIC_16_LSB: {
-						destData[dp] = (byte) (data & 0xff);
-						destData[dp + 1] = (byte) (data >>> 8);
-					} break;
-					case TYPE_GENERIC_24: {
-						destData[dp] = (byte) (data >>> 16);
-						destData[dp + 1] = (byte) (data >>> 8);
-						destData[dp + 2] = (byte) (data & 0xff);
-					} break;
-					case TYPE_GENERIC_32_MSB: {
-						destData[dp] = (byte) (data >>> 24);
-						destData[dp + 1] = (byte) (data >>> 16);
-						destData[dp + 2] = (byte) (data >>> 8);
-						destData[dp + 3] = (byte) (data & 0xff);
-					} break;
-					case TYPE_GENERIC_32_LSB: {
-						destData[dp] = (byte) (data & 0xff);
-						destData[dp + 1] = (byte) (data >>> 8);
-						destData[dp + 2] = (byte) (data >>> 16);
-						destData[dp + 3] = (byte) (data >>> 24);
-					} break;
-				}
-			}
-		}			
-	}
-
-	/**
-	 * Computes the required channel shift from a mask.
-	 */
-	static int getChannelShift(int mask) {
-		if (mask == 0) return 0;
-		int i;
-		for (i = 0; ((mask & 1) == 0) && (i < 32); ++i) {
-			mask >>>= 1;
-		}
-		return i;
-	}
-	
-	/**
-	 * Computes the required channel width (depth) from a mask.
-	 */
-	static int getChannelWidth(int mask, int shift) {
-		if (mask == 0) return 0;
-		int i;
-		mask >>>= shift;
-		for (i = shift; ((mask & 1) != 0) && (i < 32); ++i) {
-			mask >>>= 1;
-		}
-		return i - shift;
-	}
-}
diff --git a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/Library.java b/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/Library.java
deleted file mode 100644
index 7a486e3..0000000
--- a/bundles/org.eclipse.swt.opengl/common/org/eclipse/swt/opengl/Library.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-
-public class Library {
-
-/**
- * Returns the platform name.
- *
- * @return the platform name of the currently running SWT
- */
-static String getPlatform () {
-	String [] names = new String [] {"motif", "gtk", "win32", "photon", "carbon"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-	for (int i = 0; i < names.length; i++) {
-		try {
-			Class.forName("org.eclipse.swt.internal."+names[i]+".OS"); //$NON-NLS-1$ //$NON-NLS-2$
-			return names[i];
-		} catch (ClassNotFoundException e) {
-		}
-	}
-	return "unknown"; //$NON-NLS-1$
-}
-
-/**
- * Loads the shared library that matches the version of the
- * Java code which is currently running.  SWT shared libraries
- * follow an encoding scheme where the major, minor and revision
- * numbers are embedded in the library name and this along with
- * <code>name</code> is used to load the library.  If this fails,
- * <code>name</code> is used in another attempt to load the library,
- * this time ignoring the SWT version encoding scheme.
- *
- * @param name the name of the library to load
- */
-public static void loadLibrary (String name) {
-	/*
-     * Include platform name to support different windowing systems
-     * on same operating system.
-	 */
-	String platform = getPlatform ();
-	
-	try {
-		String newName = name + "-" + platform; //$NON-NLS-1$ //$NON-NLS-2$
-		System.loadLibrary (newName);
-		return;
-	} catch (UnsatisfiedLinkError e1) {		
-		throw e1;
-	}
-}
-
-}
diff --git a/bundles/org.eclipse.swt.opengl/gtk/library/build.sh b/bundles/org.eclipse.swt.opengl/gtk/library/build.sh
deleted file mode 100644
index 9133ca2..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/library/build.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#*******************************************************************************
-
-#!/bin/sh
-
-make -f make_gtk.mak ${1+"$@"}
diff --git a/bundles/org.eclipse.swt.opengl/gtk/library/glx.c b/bundles/org.eclipse.swt.opengl/gtk/library/glx.c
deleted file mode 100644
index c0987fe..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/library/glx.c
+++ /dev/null
@@ -1,247 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation and others.

- * All rights reserved. This program and the accompanying materials 

- * are made available under the terms of the Common Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/cpl-v10.html

- * 

- * Contributors:

- *     IBM Corporation - initial API and implementation

- *******************************************************************************/

-#include <GL/glx.h>

-#include <string.h>

-#include "swt.h"

-#include "structs.h"

-

-#define XGL_NATIVE(func) Java_org_eclipse_swt_opengl_internal_gtk_XGL_##func

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXChooseVisual)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)

-{

-	jint *lparg2=NULL;

-	jint rc;

-

-	NATIVE_ENTER(env, that, "glXChooseVisual\n")

-	if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);

-	rc = (jint)glXChooseVisual((Display *)arg0, arg1, (int *)lparg2);

-	if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);

-	NATIVE_EXIT(env, that, "glXChooseVisual\n")

-	return rc;

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(glXCopyContext)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)

-{

-	NATIVE_ENTER(env, that, "glXCopyContext\n")

-	glXCopyContext((Display *)arg0, (GLXContext)arg1, (GLXContext)arg2, arg3);

-	NATIVE_EXIT(env, that, "glXCopyContext\n")

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXCreateContext)

-	(JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jboolean arg3)

-{

-	XVisualInfo _arg1, *lparg1=NULL;

-	jint rc;

-

-	NATIVE_ENTER(env, that, "glXCreateContext\n")

-	if (arg1) lparg1 = getXVisualInfoFields(env, arg1, &_arg1);

-	rc = (jint)glXCreateContext((Display *)arg0, lparg1, (GLXContext)arg2, arg3);

-	if (arg1) setXVisualInfoFields(env, arg1, lparg1);

-	NATIVE_EXIT(env, that, "glXCreateContext\n")

-	return rc;

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXCreateGLXPixmap)

-	(JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)

-{

-	XVisualInfo _arg1, *lparg1=NULL;

-	jint rc;

-

-	NATIVE_ENTER(env, that, "glXCreateGLXPixmap\n")

-	if (arg1) lparg1 = getXVisualInfoFields(env, arg1, &_arg1);

-	rc = (jint)glXCreateGLXPixmap((Display *)arg0, lparg1, arg2);

-	if (arg1) setXVisualInfoFields(env, arg1, lparg1);

-	NATIVE_EXIT(env, that, "glXCreateGLXPixmap\n")

-	return rc;

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(glXDestroyContext)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1)

-{

-	NATIVE_ENTER(env, that, "glXDestroyContext\n")

-	glXDestroyContext((Display *)arg0, (GLXContext)arg1);

-	NATIVE_EXIT(env, that, "glXDestroyContext\n")

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(glXDestroyGLXPixmap)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1)

-{

-	NATIVE_ENTER(env, that, "glXDestroyGLXPixmap\n")

-	glXDestroyGLXPixmap((Display *)arg0, arg1);

-	NATIVE_EXIT(env, that, "glXDestroyGLXPixmap\n")

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetClientString)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1)

-{

-    jint rc;

-	NATIVE_ENTER(env, that, "glXGetClientString\n")

-	rc = (jint)glXGetClientString((Display *)arg0, arg1);

-	NATIVE_EXIT(env, that, "glXGetClientString\n")

-	return rc;

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetConfig)

-	(JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jintArray arg3)

-{

-	XVisualInfo _arg1, *lparg1=NULL;

-	jint *lparg3=NULL;

-	jint rc;

-

-	NATIVE_ENTER(env, that, "glXGetConfig\n")

-	if (arg1) lparg1 = getXVisualInfoFields(env, arg1, &_arg1);

-	if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);

-	rc = (jint)glXGetConfig((Display *)arg0, lparg1, arg2, (int *)lparg3);

-	if (arg1) setXVisualInfoFields(env, arg1, lparg1);

-	if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);

-	NATIVE_EXIT(env, that, "glXGetConfig\n")

-	return rc;

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetCurrentContext)

-	(JNIEnv *env, jclass that)

-{

-    jint rc;

-	NATIVE_ENTER(env, that, "glXGetCurrentContext\n")

-	rc = (jint)glXGetCurrentContext();

-	NATIVE_EXIT(env, that, "glXGetCurrentContext\n")

-	return rc;

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetCurrentDrawable)

-	(JNIEnv *env, jclass that)

-{

-    jint rc;

-	NATIVE_ENTER(env, that, "glXGetCurrentDrawable\n")

-	rc = (jint)glXGetCurrentDrawable();

-	NATIVE_EXIT(env, that, "glXGetCurrentDrawable\n")

-	return rc;

-}

-

-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXIsDirect)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1)

-{

-    jboolean result;

-	NATIVE_ENTER(env, that, "glXIsDirect\n")

-	result = (jboolean)glXIsDirect((Display *)arg0, (GLXContext)arg1);

-	NATIVE_EXIT(env, that, "glXIsDirect\n")

-	return result;

-}

-

-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXMakeCurrent)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)

-{

-    jboolean result;

-	NATIVE_ENTER(env, that, "glXMakeCurrent\n")

-	result = (jboolean)glXMakeCurrent((Display *)arg0, (GLXDrawable)arg1, (GLXContext)arg2);

-	NATIVE_EXIT(env, that, "glXMakeCurrent\n")

-	return result;

-}

-

-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXQueryExtension)

-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2)

-{

-	jint *lparg1=NULL;

-	jint *lparg2=NULL;

-	jboolean rc;

-

-	NATIVE_ENTER(env, that, "glXQueryExtension\n")

-	if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);

-	if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);

-	rc = (jboolean)glXQueryExtension((Display *)arg0, (int *)lparg1, (int *)lparg2);

-	if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);

-	if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);

-	NATIVE_EXIT(env, that, "glXQueryExtension\n")

-	return rc;

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXQueryExtensionsString)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1)

-{

-    jint rc;

-	NATIVE_ENTER(env, that, "glXQueryExtensionsString\n")

-	rc = (jint)glXQueryExtensionsString((Display *)arg0, arg1);

-	NATIVE_EXIT(env, that, "glXQueryExtensionsString\n")

-	return rc;

-}

-

-JNIEXPORT jint JNICALL XGL_NATIVE(glXQueryServerString)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)

-{

-    jint rc;

-	NATIVE_ENTER(env, that, "glXQueryServerString\n")

-	rc = (jint)glXQueryServerString((Display *)arg0, arg1, arg2);

-	NATIVE_EXIT(env, that, "glXQueryServerString\n")

-	return rc;

-}

-

-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXQueryVersion)

-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2)

-{

-	jint *lparg1=NULL;

-	jint *lparg2=NULL;

-	jboolean rc;

-

-	NATIVE_ENTER(env, that, "glXQueryVersion\n")

-	if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);

-	if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);

-	rc = (jboolean)glXQueryVersion((Display *)arg0, (int *)lparg1, (int *)lparg2);

-	if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);

-	if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);

-	NATIVE_EXIT(env, that, "glXQueryVersion\n")

-	return rc;

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(glXSwapBuffers)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1)

-{

-	NATIVE_ENTER(env, that, "glXSwapBuffers\n")

-	glXSwapBuffers((Display *)arg0, (GLXDrawable)arg1);

-	NATIVE_EXIT(env, that, "glXSwapBuffers\n")

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(glXUseXFont)

-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)

-{

-	NATIVE_ENTER(env, that, "glXUseXFont\n")

-	glXUseXFont(arg0, arg1, arg2, arg3);

-	NATIVE_EXIT(env, that, "glXUseXFont\n")

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(glXWaitGL)

-	(JNIEnv *env, jclass that)

-{

-	NATIVE_ENTER(env, that, "glXWaitGL\n")

-	glXWaitGL();

-	NATIVE_EXIT(env, that, "glXWaitGL\n")

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(glXWaitX)

-	(JNIEnv *env, jclass that)

-{

-	NATIVE_ENTER(env, that, "glXWaitX\n")

-	glXWaitX();

-	NATIVE_EXIT(env, that, "glXWaitX\n")

-}

-

-JNIEXPORT void JNICALL XGL_NATIVE(memmove__Lorg_eclipse_swt_opengl_internal_gtk_XVisualInfo_2II)

-	(JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)

-{

-	XVisualInfo _arg0, *lparg0=NULL;

-

-	NATIVE_ENTER(env, that, "memmove__Lorg_eclipse_swt_opengl_internal_gtk_XVisualInfo_2II\n")

-	if (arg0) lparg0 = &_arg0;

-	memmove((void *)lparg0, (const void *)arg1, (size_t)arg2);

-	if (arg0) setXVisualInfoFields(env, arg0, lparg0);

-	NATIVE_EXIT(env, that, "memmove__Lorg_eclipse_swt_opengl_internal_gtk_XVisualInfo_2II\n")

-}

diff --git a/bundles/org.eclipse.swt.opengl/gtk/library/make_gtk.mak b/bundles/org.eclipse.swt.opengl/gtk/library/make_gtk.mak
deleted file mode 100644
index d765b8b..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/library/make_gtk.mak
+++ /dev/null
@@ -1,52 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#*******************************************************************************
-
-# Define the installation directories for various products.
-JAVA_HOME   = /bluebird/teamswt/swt-builddir/ive/bin
-
-CC=gcc
-LD=gcc
-
-# Define the various shared libraries to be made.
-WS_PREFIX    = gtk
-GL_PREFIX   = gl
-GL_DLL      = lib$(GL_PREFIX)-$(WS_PREFIX).so
-GL_OBJ      = gl.o glu.o structs.o glx.o
-GL_LIB      = -shared -L/usr/X11R6/lib -lGL -lGLU -lm
-XGTK_PREFIX   = xgtk
-XGTK_DLL      = lib$(XGTK_PREFIX)-$(WS_PREFIX).so
-XGTK_OBJ      = xgtk.o
-XGTK_LIB      = -shared  `pkg-config --libs gtk+-2.0 gthread-2.0`
-
-#
-# The following CFLAGS are for compiling the SWT OpenGL libraries.
-#
-CFLAGS =  -O -Wall \
-	-I./ \
-	-I$(JAVA_HOME)/include \
-	`pkg-config --cflags gtk+-2.0`
-
-all: make_gl make_xgtk
-
-make_gl: $(GL_DLL)
-	$(LD) $(GL_LIB) -o $(GL_DLL) $(GL_OBJ)
-
-$(GL_DLL): $(GL_OBJ)
-	$(CC) $(CFLAGS) -c glx.c
-
-make_xgtk: $(XGTK_DLL)
-	$(LD) $(XGTK_LIB) -o $(XGTK_DLL) $(XGTK_OBJ)
-
-$(XGTK_DLL): $(XGTK_OBJ)
-	$(CC) $(CFLAGS) -c xgtk.c
-
-clean:
-	rm -f *.so *.o
diff --git a/bundles/org.eclipse.swt.opengl/gtk/library/structs.c b/bundles/org.eclipse.swt.opengl/gtk/library/structs.c
deleted file mode 100644
index 368852d..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/library/structs.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation and others.

- * All rights reserved. This program and the accompanying materials 

- * are made available under the terms of the Common Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/cpl-v10.html

- * 

- * Contributors:

- *     IBM Corporation - initial API and implementation

- *******************************************************************************/

-#include <X11/X.h>

-#include <X11/Xlib.h>

-#include "swt.h"

-#include "structs.h"

-

-typedef struct XVisualInfo_FID_CACHE {

-	int cached;

-	jclass clazz;

-	jfieldID visual, visualid, screen, depth, cclass, red_mask, green_mask, blue_mask, colormap_size, bits_per_rgb;

-} XVisualInfo_FID_CACHE;

-typedef XVisualInfo_FID_CACHE *PXVisualInfo_FID_CACHE;

-

-XVisualInfo_FID_CACHE XVisualInfoFc;

-

-void cacheXVisualInfoFids(JNIEnv *env, jobject lpObject, PXVisualInfo_FID_CACHE lpCache)

-{

-	if (lpCache->cached) return;

-	lpCache->clazz = (*env)->GetObjectClass(env, lpObject);

-	lpCache->visual = (*env)->GetFieldID(env, lpCache->clazz, "visual", "I");

-	lpCache->visualid = (*env)->GetFieldID(env, lpCache->clazz, "visualid", "I");

-	lpCache->screen = (*env)->GetFieldID(env, lpCache->clazz, "screen", "I");

-	lpCache->depth = (*env)->GetFieldID(env, lpCache->clazz, "depth", "I");

-	lpCache->cclass = (*env)->GetFieldID(env, lpCache->clazz, "cclass", "I");

-	lpCache->red_mask = (*env)->GetFieldID(env, lpCache->clazz, "red_mask", "I");

-	lpCache->green_mask = (*env)->GetFieldID(env, lpCache->clazz, "green_mask", "I");

-	lpCache->blue_mask = (*env)->GetFieldID(env, lpCache->clazz, "blue_mask", "I");

-	lpCache->colormap_size = (*env)->GetFieldID(env, lpCache->clazz, "colormap_size", "I");

-	lpCache->bits_per_rgb = (*env)->GetFieldID(env, lpCache->clazz, "bits_per_rgb", "I");

-	lpCache->cached = 1;

-}

-

-XVisualInfo *getXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct)

-{

-	PXVisualInfo_FID_CACHE lpCache = &XVisualInfoFc;

-	if (!lpCache->cached) cacheXVisualInfoFids(env, lpObject, lpCache);

-	lpStruct->visual = (Visual *)(*env)->GetIntField(env, lpObject, lpCache->visual);

-	lpStruct->visualid = (*env)->GetIntField(env, lpObject, lpCache->visualid);

-	lpStruct->screen = (*env)->GetIntField(env, lpObject, lpCache->screen);

-	lpStruct->depth = (*env)->GetIntField(env, lpObject, lpCache->depth);

-	lpStruct->class = (*env)->GetIntField(env, lpObject, lpCache->cclass);

-	lpStruct->red_mask = (*env)->GetIntField(env, lpObject, lpCache->red_mask);

-	lpStruct->green_mask = (*env)->GetIntField(env, lpObject, lpCache->green_mask);

-	lpStruct->blue_mask = (*env)->GetIntField(env, lpObject, lpCache->blue_mask);

-	lpStruct->colormap_size = (*env)->GetIntField(env, lpObject, lpCache->colormap_size);

-	lpStruct->bits_per_rgb = (*env)->GetIntField(env, lpObject, lpCache->bits_per_rgb);

-	return lpStruct;

-}

-

-void setXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct)

-{

-	PXVisualInfo_FID_CACHE lpCache = &XVisualInfoFc;

-	if (!lpCache->cached) cacheXVisualInfoFids(env, lpObject, lpCache);

-	(*env)->SetIntField(env, lpObject, lpCache->visual, (jint)lpStruct->visual);

-	(*env)->SetIntField(env, lpObject, lpCache->visualid, (jint)lpStruct->visualid);

-	(*env)->SetIntField(env, lpObject, lpCache->screen, (jint)lpStruct->screen);

-	(*env)->SetIntField(env, lpObject, lpCache->depth, (jint)lpStruct->depth);

-	(*env)->SetIntField(env, lpObject, lpCache->cclass, (jint)lpStruct->class);

-	(*env)->SetIntField(env, lpObject, lpCache->red_mask, (jint)lpStruct->red_mask);

-	(*env)->SetIntField(env, lpObject, lpCache->green_mask, (jint)lpStruct->green_mask);

-	(*env)->SetIntField(env, lpObject, lpCache->blue_mask, (jint)lpStruct->blue_mask);

-	(*env)->SetIntField(env, lpObject, lpCache->colormap_size, (jint)lpStruct->colormap_size);

-	(*env)->SetIntField(env, lpObject, lpCache->bits_per_rgb, (jint)lpStruct->bits_per_rgb);

-}

diff --git a/bundles/org.eclipse.swt.opengl/gtk/library/structs.h b/bundles/org.eclipse.swt.opengl/gtk/library/structs.h
deleted file mode 100644
index 8079149..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/library/structs.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation and others.

- * All rights reserved. This program and the accompanying materials 

- * are made available under the terms of the Common Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/cpl-v10.html

- * 

- * Contributors:

- *     IBM Corporation - initial API and implementation

- *******************************************************************************/

-#include <X11/X.h>

-#include <X11/Xutil.h>

-

-XVisualInfo *getXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct);

-void setXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct);

-

diff --git a/bundles/org.eclipse.swt.opengl/gtk/library/xgtk.c b/bundles/org.eclipse.swt.opengl/gtk/library/xgtk.c
deleted file mode 100644
index 2de68a4..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/library/xgtk.c
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation and others.

- * All rights reserved. This program and the accompanying materials 

- * are made available under the terms of the Common Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/cpl-v10.html

- * 

- * Contributors:

- *     IBM Corporation - initial API and implementation

- *******************************************************************************/

-#include "swt.h"

-#include <gdk/gdkx.h>

-#include <stdlib.h>

-

-#define XGTK_NATIVE(func) Java_org_eclipse_swt_opengl_internal_gtk_XGTK_##func

-

-#ifndef NO_free

-JNIEXPORT void JNICALL XGTK_NATIVE(free)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	NATIVE_ENTER(env, that, "free\n")

-	free((char *)arg0);

-	NATIVE_EXIT(env, that, "free\n")

-}

-#endif

-

-#ifndef NO_malloc

-JNIEXPORT jint JNICALL XGTK_NATIVE(malloc)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	jint rc;

-	NATIVE_ENTER(env, that, "malloc\n")

-	rc = (jint)malloc(arg0);

-	NATIVE_EXIT(env, that, "malloc\n")

-	return rc;

-}

-#endif

-

-#ifndef NO_gdk_1x11_1gc_1get_1xdisplay

-JNIEXPORT int JNICALL XGTK_NATIVE(gdk_1x11_1gc_1get_1xdisplay)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	jint rc;

-	NATIVE_ENTER(env, that, "gdk_1x11_1gc_1get_1xdisplay\n")

-	rc = (jint)gdk_x11_gc_get_xdisplay((GdkGC *)arg0);

-	NATIVE_EXIT(env, that, "gdk_1x11_1gc_1get_1xdisplay\n")

-	return rc;

-}

-#endif

-

-#ifndef NO_gdk_1x11_1drawable_1get_1xid

-JNIEXPORT int JNICALL XGTK_NATIVE(gdk_1x11_1drawable_1get_1xid)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	jint rc;

-	NATIVE_ENTER(env, that, "gdk_1x11_1drawable_1get_1xid\n")

-	rc = (jint)gdk_x11_drawable_get_xid((GdkDrawable *)arg0);

-	NATIVE_EXIT(env, that, "gdk_1x11_1drawable_1get_1xid\n")

-	return rc;

-}

-#endif

-

-#ifndef NO_XDefaultScreen

-JNIEXPORT jint JNICALL XGTK_NATIVE(XDefaultScreen)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	jint rc;

-	NATIVE_ENTER(env, that, "XDefaultScreen\n")

-	rc = (jint)XDefaultScreen((Display *)arg0);

-	NATIVE_EXIT(env, that, "XDefaultScreen\n")

-	return rc;

-}

-#endif

-

-#ifndef NO_XDefaultScreenOfDisplay

-JNIEXPORT jint JNICALL XGTK_NATIVE(XDefaultScreenOfDisplay)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	jint rc;

-	NATIVE_ENTER(env, that, "XDefaultScreenOfDisplay\n")

-	rc = (jint)XDefaultScreenOfDisplay((Display *)arg0);

-	NATIVE_EXIT(env, that, "XDefaultScreenOfDisplay\n")

-	return rc;

-}

-#endif

-

-#ifndef NO_XDefaultDepthOfScreen

-JNIEXPORT jint JNICALL XGTK_NATIVE(XDefaultDepthOfScreen)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	jint rc;

-	NATIVE_ENTER(env, that, "XDefaultDepthOfScreen\n")

-	rc = (jint)XDefaultDepthOfScreen((Screen *)arg0);

-	NATIVE_EXIT(env, that, "XDefaultDepthOfScreen\n")

-	return rc;

-}

-#endif

-

-#ifndef NO_XFree

-JNIEXPORT jint JNICALL XGTK_NATIVE(XFree)

-	(JNIEnv *env, jclass that, jint arg0)

-{

-	jint rc;

-	NATIVE_ENTER(env, that, "XFree\n")

-	rc = (jint)XFree((char *)arg0);

-	NATIVE_EXIT(env, that, "XFree\n")

-	return rc;

-}

-#endif

diff --git a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/GLContext.java b/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/GLContext.java
deleted file mode 100644
index 0acee0d..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/GLContext.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.internal.gtk.*;
-import org.eclipse.swt.opengl.internal.gtk.*;
-
-/**
- * Instances of <code>GLContext</code> are used to draw on swt <code>Drawable</code>s 
- * through invocations of provided OpenGL functions.
- * <p>
- * Application code must explicitly invoke the <code>GLContext.dispose ()</code> 
- * method to release the operating system resources managed by each instance
- * when those instances are no longer required. This is <em>particularly</em>
- * important on Windows95 and Windows98 where the operating system has a limited
- * number of device contexts available.
- * </p>
- */
-public class GLContext {
-	int handle;
-	int gc;
-	GCData data;
-	Drawable drawable;
-	int selectBufferPtr = 0;
-
-	static final int MSB_FIRST = 1;
-	static final int LSB_FIRST = 2;
-
-	/**
-	 * Constructs a new instance of this class which has been
-	 * configured to draw on the specified drawable.
-	 * <p>
-	 * You must dispose the <code>GLContext</code> when it is no longer required. 
-	 * </p>
-	 * 
-	 * @param drawable the drawable to draw on
-	 * @exception IllegalArgumentException <ul>
-	 *    <li>ERROR_NULL_ARGUMENT - if the drawable is null</li>
-	 * </ul>
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_NO_HANDLES if a handle could not be obtained for gc creation</li>
-	 *    <li>ERROR_UNSUPPORTED_DEPTH - if the current display depth is not supported</li>
-	 * </ul>
-	 */
-	public GLContext (Drawable drawable) {
-		if (drawable == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-		this.drawable = drawable;
-		data = new GCData ();
-		gc = drawable.internal_new_GC (data);
-		if (gc == 0) SWT.error (SWT.ERROR_NO_HANDLES);
-		int xDisplay = XGTK.gdk_x11_gc_get_xdisplay (gc);
-		int screen = XGTK.XDefaultScreen (xDisplay);
-		int depth = XGTK.XDefaultDepthOfScreen (XGTK.XDefaultScreenOfDisplay (xDisplay));
-		int attrib [] = {
-			XGL.GLX_LEVEL,
-			0,
-			XGL.GLX_RGBA,
-			XGL.GLX_DOUBLEBUFFER,
-			XGL.GLX_DEPTH_SIZE,
-			depth,
-			0
-		};
-		int infoPtr = XGL.glXChooseVisual (xDisplay, screen, attrib);
-		if (infoPtr == 0) SWT.error (SWT.ERROR_UNSUPPORTED_DEPTH);
-		XVisualInfo info = new XVisualInfo ();
-		XGL.memmove (info, infoPtr, XVisualInfo.sizeof);
-		XGTK.XFree (infoPtr);
-		handle = XGL.glXCreateContext (xDisplay, info, 0, false);
-		if (handle == 0) SWT.error (SWT.ERROR_NO_HANDLES);
-	}
-	
-	public ImageData convertImageData (ImageData source) {
-		PaletteData palette = new PaletteData (0xff0000, 0xff00, 0xff);
-		ImageData newSource = new ImageData (source.width, source.height, 24, palette);
-		ImageDataUtil.blit (
-			1,
-			source.data,
-			source.depth,
-			source.bytesPerLine,
-			(source.depth != 16) ? MSB_FIRST : LSB_FIRST,
-			0,
-			0,
-			source.width,
-			source.height,
-			source.palette.redMask,
-			source.palette.greenMask,
-			source.palette.blueMask,
-			255,
-			null,
-			0,
-			0,
-			0,
-			newSource.data,
-			newSource.depth,
-			newSource.bytesPerLine,
-			(newSource.depth != 16) ? MSB_FIRST : LSB_FIRST,
-			0,
-			0,
-			newSource.width,
-			newSource.height,
-			newSource.palette.redMask,
-			newSource.palette.greenMask,
-			newSource.palette.blueMask,
-			false,
-			true);
-
-		return newSource;
-	}
-
-	/**
-	 * Disposes of the operating system resources associated with
-	 * the receiver. Applications must dispose of all <code>GLContext</code>s
-	 * that they allocate.
-	 */
-	public void dispose () {
-		if (handle == 0) return;
-		int xDisplay = XGTK.gdk_x11_gc_get_xdisplay (gc);
-		if (XGL.glXGetCurrentContext () == handle) {
-			int display = XGTK.gdk_x11_gc_get_xdisplay (gc);
-			XGL.glXMakeCurrent (display, 0, 0);
-		}
-		if (selectBufferPtr != 0) XGTK.free (selectBufferPtr);
-		XGL.glXDestroyContext (xDisplay, handle);
-		handle = 0;
-		// drawable may be disposed
-		try {
-			drawable.internal_dispose_GC (gc, data);
-		} catch (SWTException e) {
-		}
-		gc = 0;
-		data.clipRgn = data.context = data.drawable = 0;
-		data.font = data.layout = data.style = 0;
-		drawable = null;
-		data.device = null;
-		data.image = null;
-		data = null;
-	}
-
-	public int[] getSelectBuffer (int selectBufferPtr, int[] selectBuffer) {
-		OS.memmove (selectBuffer, selectBufferPtr, selectBuffer.length * 4);
-		return selectBuffer;
-	}
-
-	public int getSelectBufferPtr (int[] selectBuffer) {
-		if (selectBufferPtr == 0) {
-			selectBufferPtr = XGTK.malloc (selectBuffer.length * 4);
-		}
-		OS.memmove (selectBufferPtr, selectBuffer, selectBuffer.length * 4);
-		return selectBufferPtr;
-	}
-
-	/**
-	 * Returns a boolean indicating whether the receiver is the current
-	 * <code>GLContext</code>.
-	 *  
-	 * @return true if the receiver is the current <code>GLContext</code>,
-	 * false otherwise
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public boolean isCurrent () {
-		if (isDisposed ()) 	SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		return XGL.glXGetCurrentContext () == handle;
-	}
-
-	/**
-	 * Returns a boolean indicating whether the <code>GLContext</code> has been
-	 * disposed.
-	 * <p>
-	 * This method gets the dispose state for the <code>GLContext</code>.
-	 * When a <code>GLContext</code> has been disposed, it is an error to
-	 * invoke any other method using the <code>GLContext</code>.
-	 *
-	 * @return true if the <code>GLContext</code> is disposed, false otherwise
-	 */
-	public boolean isDisposed () {
-		return handle == 0;
-	}
-
-	/**
-	 * Loads the specified bitmap font.
-	 * 
-	 * @param fdata
-	 * @param device
-	 * @param base
-	 * @param first
-	 * @param count
-	 */
-	public void loadBitmapFont (FontData fdata, Device device, int base, int startIndex, int length) {
-		/* Temporary code, due some problems when running on UTF-8 loadBitmapFont ()
-		 * is restrict to works only for ascii. 
-		 * Note: en_US.ISO8859-1 also code be used.
-		 */
-//		fdata.setLocale ("C");
-//		Font font = new Font (device, fdata);
-//		int fontList = font.handle;
-//		int[] buffer = new int [1];
-//		if (!OS.XmFontListInitFontContext (buffer, fontList)) return;
-//		int context = buffer [0];
-//		XFontStruct fontStruct = new XFontStruct ();
-//		int fontListEntry;
-//		int[] fontStructPtr = new int [1];
-//		int[] fontNamePtr = new int [1];
-//		int xfont = 0;
-//		// go through each entry in the font list
-//		while ((fontListEntry = OS.XmFontListNextEntry (context)) != 0) {
-//			int fontPtr = OS.XmFontListEntryGetFont (fontListEntry, buffer);
-//			if (buffer [0] == OS.XmFONT_IS_FONT) {
-//				// FontList contains a single font
-//				OS.memmove (fontStruct, fontPtr, 20 * 4);
-//				xfont = fontStruct.fid;
-//			} else {
-//				// FontList contains a fontSet
-//				int nFonts = OS.XFontsOfFontSet (fontPtr, fontStructPtr, fontNamePtr);
-//				int[] fontStructs = new int [nFonts];
-//				OS.memmove (fontStructs, fontStructPtr [0], nFonts * 4);
-//				// Go through each fontStruct in the font set.
-//				for (int i = 0; i < nFonts; i++) {
-//					OS.memmove (fontStruct, fontStructs [i], XFontStruct.sizeof);
-//					xfont = fontStruct.fid;
-//				}
-//			}
-//		}
-//		if (xfont != 0) {
-//			XGL.glXUseXFont (xfont, startIndex, length, base);
-//		}
-//		font.dispose ();
-//		OS.XmFontListFreeFontContext (context);
-	}
-
-	/**
-	 * Loads the specified outline font.
-	 * 
-	 * @param fdata
-	 * @param device
-	 * @param base
-	 * @param first
-	 * @param count
-	 * @param deviation
-	 * @param extrusion
-	 * @param format
-	 * @param lpgmf
-	 */
-	public void loadOutlineFont (FontData fdata, Device device, int base, int first,
-	int count, float deviation, float extrusion, int format, GLYPHMETRICSFLOAT[] lpgmf) {
-		// stub
-	}
-
-	/**
-	 * Resizes the receiver.
-	 * 
-	 * @param x
-	 * @param y
-	 * @param width
-	 * @param height
-	 */
-	public void resize (int x, int y, int width, int height) {
-		if (height == 0) height = 1;
-		GL.glViewport (x, y, width, height);
-		GL.glMatrixMode (GL.GL_PROJECTION);
-		GL.glLoadIdentity ();
-		GLU.gluPerspective (45.0f, (float) width / (float) height, 0.1f, 100.0f);
-		GL.glMatrixMode (GL.GL_MODELVIEW);
-		GL.glLoadIdentity ();
-	}
-
-	/**
-	 * Sets the receiver to be the current <code>GLContext</code>.
-	 * 
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public void setCurrent () {
-		if (isDisposed ()) SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		if (XGL.glXGetCurrentContext () == handle) return;
-		int display = XGTK.gdk_x11_gc_get_xdisplay (gc);
-		int drawable = XGTK.gdk_x11_drawable_get_xid (data.drawable);
-		XGL.glXMakeCurrent (display, drawable, handle);
-	}
-
-	/**
-	 * Swaps the receiver's buffers.
-	 * 
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public void swapBuffers () {
-		if (isDisposed ()) SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		int display = XGTK.gdk_x11_gc_get_xdisplay (gc);
-		int drawable = XGTK.gdk_x11_drawable_get_xid(data.drawable);
-		XGL.glXSwapBuffers (display, drawable);
-	}
-}
diff --git a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGL.java b/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGL.java
deleted file mode 100644
index 46f07b9..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGL.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.gtk;
-
-import org.eclipse.swt.opengl.Library;
-
-public class XGL {
-	
-static {
-	Library.loadLibrary("gl");
-}
-
-public static final int GLX_VERSION_1_1 = 1;
-public static final int GLX_VERSION_1_2 = 1;
-public static final int GLX_VERSION_1_3 = 1;
-
-/*
-** Visual Config Attributes (glXGetConfig, glXGetFBConfigAttrib)
-*/
-public static final int GLX_USE_GL		= 1;	/* support GLX rendering */
-public static final int GLX_BUFFER_SIZE		= 2;	/* depth of the color buffer */
-public static final int GLX_LEVEL		= 3;	/* level in plane stacking */
-public static final int GLX_RGBA		= 4;	/* true if RGBA mode */
-public static final int GLX_DOUBLEBUFFER	= 5;	/* double buffering supported */
-public static final int GLX_STEREO		= 6;	/* stereo buffering supported */
-public static final int GLX_AUX_BUFFERS		= 7;	/* number of aux buffers */
-public static final int GLX_RED_SIZE		= 8;	/* number of red component bits */
-public static final int GLX_GREEN_SIZE		= 9;	/* number of green component bits */
-public static final int GLX_BLUE_SIZE		= 10;	/* number of blue component bits */
-public static final int GLX_ALPHA_SIZE		= 11;	/* number of alpha component bits */
-public static final int GLX_DEPTH_SIZE		= 12;	/* number of depth bits */
-public static final int GLX_STENCIL_SIZE	= 13;	/* number of stencil bits */
-public static final int GLX_ACCUM_RED_SIZE	= 14;	/* number of red accum bits */
-public static final int GLX_ACCUM_GREEN_SIZE	= 15;	/* number of green accum bits */
-public static final int GLX_ACCUM_BLUE_SIZE	= 16;	/* number of blue accum bits */
-public static final int GLX_ACCUM_ALPHA_SIZE	= 17;	/* number of alpha accum bits */
-/*
-** FBConfig-specific attributes
-*/
-public static final int GLX_X_VISUAL_TYPE		= 0x22;
-public static final int GLX_CONFIG_CAVEAT		= 0x20;	/* Like visual_info VISUAL_CAVEAT_EXT */
-public static final int GLX_TRANSPARENT_TYPE		= 0x23;
-public static final int GLX_TRANSPARENT_INDEX_VALUE	= 0x24;
-public static final int GLX_TRANSPARENT_RED_VALUE	= 0x25;
-public static final int GLX_TRANSPARENT_GREEN_VALUE	= 0x26;
-public static final int GLX_TRANSPARENT_BLUE_VALUE	= 0x27;
-public static final int GLX_TRANSPARENT_ALPHA_VALUE	= 0x28;
-public static final int GLX_DRAWABLE_TYPE		= 0x8010;
-public static final int GLX_RENDER_TYPE			= 0x8011;
-public static final int GLX_X_RENDERABLE		= 0x8012;
-public static final int GLX_FBCONFIG_ID			= 0x8013;
-public static final int GLX_MAX_PBUFFER_WIDTH		= 0x8016;
-public static final int GLX_MAX_PBUFFER_HEIGHT		= 0x8017;
-public static final int GLX_MAX_PBUFFER_PIXELS		= 0x8018;
-public static final int GLX_VISUAL_ID			= 0x800B;
-
-/*
-** Error return values from glXGetConfig.  Success is indicated by
-** a value of 0.
-*/
-public static final int GLX_BAD_SCREEN		= 1;	/* screen # is bad */
-public static final int GLX_BAD_ATTRIBUTE	= 2;	/* attribute to get is bad */
-public static final int GLX_NO_EXTENSION	= 3;	/* no glx extension on server */
-public static final int GLX_BAD_VISUAL		= 4;	/* visual # not known by GLX */
-public static final int GLX_BAD_CONTEXT		= 5;	/* returned only by import_context EXT? */
-public static final int GLX_BAD_VALUE		= 6;	/* returned only by glXSwapIntervalSGI? */
-public static final int GLX_BAD_ENUM		= 7;	/* unused? */
-
-/* FBConfig attribute values */
-
-/*
-** Generic "don't care" value for glX ChooseFBConfig attributes (except
-** GLX_LEVEL)
-*/
-public static final int GLX_DONT_CARE			= 0xFFFFFFFF;
-
-/* GLX_RENDER_TYPE bits */
-public static final int GLX_RGBA_BIT			= 0x00000001;
-public static final int GLX_COLOR_INDEX_BIT		= 0x00000002;
-
-/* GLX_DRAWABLE_TYPE bits */
-public static final int GLX_WINDOW_BIT			= 0x00000001;
-public static final int GLX_PIXMAP_BIT			= 0x00000002;
-public static final int GLX_PBUFFER_BIT			= 0x00000004;
-
-/* GLX_CONFIG_CAVEAT attribute values */
-public static final int GLX_NONE			= 0x8000;
-public static final int GLX_SLOW_CONFIG			= 0x8001;
-public static final int GLX_NON_CONFORMANT_CONFIG	= 0x800D;
-
-/* GLX_X_VISUAL_TYPE attribute values */
-public static final int GLX_TRUE_COLOR			= 0x8002;
-public static final int GLX_DIRECT_COLOR		= 0x8003;
-public static final int GLX_PSEUDO_COLOR		= 0x8004;
-public static final int GLX_STATIC_COLOR		= 0x8005;
-public static final int GLX_GRAY_SCALE			= 0x8006;
-public static final int GLX_STATIC_GRAY			= 0x8007;
-
-/* GLX_TRANSPARENT_TYPE attribute values */
-/* public static final int GLX_NONE			   0x8000 */
-public static final int GLX_TRANSPARENT_RGB		= 0x8008;
-public static final int GLX_TRANSPARENT_INDEX		= 0x8009;
-
-/* glXCreateGLXPbuffer attributes */
-public static final int GLX_PRESERVED_CONTENTS		= 0x801B;
-public static final int GLX_LARGEST_PBUFFER		= 0x801C;
-public static final int GLX_PBUFFER_HEIGHT		= 0x8040;	/* New for GLX 1.3 */
-public static final int GLX_PBUFFER_WIDTH		= 0x8041;	/* New for GLX 1.3 */
-
-/* glXQueryGLXPBuffer attributes */
-public static final int GLX_WIDTH			= 0x801D;
-public static final int GLX_HEIGHT			= 0x801E;
-public static final int GLX_EVENT_MASK			= 0x801F;
-
-/* glXCreateNewContext render_type attribute values */
-public static final int GLX_RGBA_TYPE			= 0x8014;
-public static final int GLX_COLOR_INDEX_TYPE		= 0x8015;
-
-/* glXQueryContext attributes */
-/* public static final int GLX_FBCONFIG_ID		  0x8013 */
-/* public static final int GLX_RENDER_TYPE		  0x8011 */
-public static final int GLX_SCREEN			= 0x800C;
-
-/* glXSelectEvent event mask bits */
-public static final int GLX_PBUFFER_CLOBBER_MASK	= 0x08000000;
-
-/* GLXPbufferClobberEvent event_type values */
-public static final int GLX_DAMAGED			= 0x8020;
-public static final int GLX_SAVED			= 0x8021;
-
-/* GLXPbufferClobberEvent draw_type values */
-public static final int GLX_WINDOW			= 0x8022;
-public static final int GLX_PBUFFER			= 0x8023;
-
-/* GLXPbufferClobberEvent buffer_mask bits */
-public static final int GLX_FRONT_LEFT_BUFFER_BIT	= 0x00000001;
-public static final int GLX_FRONT_RIGHT_BUFFER_BIT	= 0x00000002;
-public static final int GLX_BACK_LEFT_BUFFER_BIT	= 0x00000004;
-public static final int GLX_BACK_RIGHT_BUFFER_BIT	= 0x00000008;
-public static final int GLX_AUX_BUFFERS_BIT		= 0x00000010;
-public static final int GLX_DEPTH_BUFFER_BIT		= 0x00000020;
-public static final int GLX_STENCIL_BUFFER_BIT		= 0x00000040;
-public static final int GLX_ACCUM_BUFFER_BIT		= 0x00000080;
-
-/*
-** Extension return values from glXGetConfig.  These are also
-** accepted as parameter values for glXChooseVisual.
-*/
-
-public static final int GLX_X_VISUAL_TYPE_EXT	= 0x22;	/* visual_info extension type */
-public static final int GLX_TRANSPARENT_TYPE_EXT = 0x23;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_INDEX_VALUE_EXT = 0x24;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_RED_VALUE_EXT	= 0x25;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_GREEN_VALUE_EXT = 0x26;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_BLUE_VALUE_EXT	= 0x27;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_ALPHA_VALUE_EXT = 0x28;	/* visual_info extension */
-
-/* Property values for visual_type */
-public static final int GLX_TRUE_COLOR_EXT	= 0x8002;
-public static final int GLX_DIRECT_COLOR_EXT	= 0x8003;
-public static final int GLX_PSEUDO_COLOR_EXT	= 0x8004;
-public static final int GLX_STATIC_COLOR_EXT	= 0x8005;
-public static final int GLX_GRAY_SCALE_EXT	= 0x8006;
-public static final int GLX_STATIC_GRAY_EXT	= 0x8007;
-
-/* Property values for transparent pixel */
-public static final int GLX_NONE_EXT		= 0x8000;
-public static final int GLX_TRANSPARENT_RGB_EXT		= 0x8008;
-public static final int GLX_TRANSPARENT_INDEX_EXT	= 0x8009;
-
-/* Property values for visual_rating */
-public static final int GLX_VISUAL_CAVEAT_EXT		= 0x20;  /* visual_rating extension type */
-public static final int GLX_SLOW_VISUAL_EXT		= 0x8001;
-public static final int GLX_NON_CONFORMANT_VISUAL_EXT	= 0x800D;
-
-/*
-** Names for attributes to glXGetClientString.
-*/
-public static final int GLX_VENDOR		= 0x1;
-public static final int GLX_VERSION		= 0x2;
-public static final int GLX_EXTENSIONS		= 0x3;
-
-/*
-** Names for attributes to glXQueryContextInfoEXT.
-*/
-public static final int GLX_SHARE_CONTEXT_EXT	= 0x800A;	/* id of share context */
-public static final int GLX_VISUAL_ID_EXT	= 0x800B;	/* id of context's visual */
-public static final int GLX_SCREEN_EXT		= 0x800C;	/* screen number */
-
-/* GLX Extension Strings */
-public static final int GLX_EXT_import_context	= 1;
-public static final int GLX_EXT_visual_info	= 1;
-public static final int GLX_EXT_visual_rating	= 1;
-public static final int GLX_ARB_get_proc_address = 1;
-
-public static final native int glXChooseVisual(int dpy, int screen, int[] attribList);
-public static final native void glXCopyContext(int dpy, int src, int dst, int mask);
-//public static final native int glXCreateContext(int dpy, int vis, int shareList, boolean direct);
-public static final native int glXCreateContext(int dpy, XVisualInfo vis, int shareList, boolean direct);
-public static final native int glXCreateGLXPixmap(int dpy, XVisualInfo vis, int pixmap);
-public static final native void glXDestroyContext(int dpy, int ctx);
-public static final native void glXDestroyGLXPixmap(int dpy, int pix);
-public static final native int glXGetConfig(int dpy, XVisualInfo vis, int attrib, int[] value);
-public static final native int glXGetCurrentContext();
-public static final native int glXGetCurrentDrawable();
-public static final native boolean glXIsDirect(int dpy, int ctx);
-public static final native boolean glXMakeCurrent(int dpy, int drawable, int ctx);
-public static final native boolean glXQueryExtension(int dpy, int[] errorBase, int[] eventBase);
-public static final native boolean glXQueryVersion(int dpy, int[] major, int[] minor);
-public static final native void glXSwapBuffers(int dpy, int drawable);
-public static final native void glXUseXFont(int font, int first, int count, int listBase);
-public static final native void glXWaitGL();
-public static final native void glXWaitX();
-public static final native int glXGetClientString(int dpy, int name);
-public static final native int glXQueryServerString(int dpy, int screen, int name);
-public static final native int glXQueryExtensionsString(int dpy, int screen);
-public static final native void memmove(XVisualInfo dest, int src, int size);
-}
diff --git a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGTK.java b/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGTK.java
deleted file mode 100644
index d6c017a..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XGTK.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.gtk;
-
-import org.eclipse.swt.opengl.Library;
-
-public class XGTK {
-	
-	static {
-		Library.loadLibrary("xgtk");
-	}
-	
-	public static final synchronized native int gdk_x11_gc_get_xdisplay(int gc);
-	public static final synchronized native int gdk_x11_drawable_get_xid(int gc);
-	public static final synchronized native int XDefaultScreen(int display);
-	public static final synchronized native int XDefaultScreenOfDisplay(int display);
-	public static final synchronized native int XDefaultDepthOfScreen(int screen);
-	public static final synchronized native int XFree(int address);
-	public static final synchronized native void free(int ptr);
-	public static final synchronized native int malloc(int size);
-}
diff --git a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XVisualInfo.java b/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XVisualInfo.java
deleted file mode 100644
index cc89f20..0000000
--- a/bundles/org.eclipse.swt.opengl/gtk/org/eclipse/swt/opengl/internal/gtk/XVisualInfo.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.gtk;
-
- 
-public class XVisualInfo {
-	public int visual;
-	public int visualid;
-	public int screen;
-	public int depth;
-	public int cclass;
-	public int red_mask, green_mask, blue_mask;
-	public int colormap_size;
-	public int bits_per_rgb;
-	public static final int sizeof = 40;
-}
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/build.sh b/bundles/org.eclipse.swt.opengl/motif/library/build.sh
deleted file mode 100644
index 994b199..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/build.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/sh
-#*******************************************************************************
-# Copyright (c) 2000, 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#     Kevin Cornell (Rational Software Corporation)
-#     Tom Tromey (Red Hat, Inc.)
-#     Sridhar Bidigalu (ICS)
-#*******************************************************************************
-
-cd `dirname $0`
-
-# Determine the operating system being built
-makefile=""
-OS=`uname -s`
-MODEL=`uname -m`
-
-case $OS in
-	"AIX")
-		JAVA_HOME=/bluebird/teamswt/swt-builddir/aixj9
-		MOTIF_HOME=/usr
-		CDE_HOME=/usr/dt
-		makefile="make_aix.mak"
-		echo "Building AIX version of SWT"
-		;;
-	"Linux")
-		JAVA_HOME=/bluebird/teamswt/swt-builddir/IBMJava2-141
-		MOTIF_HOME=/bluebird/teamswt/swt-builddir/motif21
-		QT_HOME=$QTDIR
-		makefile="make_linux.mak"
-		echo "Building Linux version of SWT"
-		;;
-	"SunOS")
-		JAVA_HOME=/usr/java
-		MOTIF_HOME=/usr/dt
-		CDE_HOME=/usr/dt		
-		makefile="make_solaris.mak"
-		echo "Building Solaris version of SWT"
-		;;
-	"HP-UX")
-		JAVA_HOME=/opt/jdk14101
-		MOTIF_HOME=/usr
-		CDE_HOME=/usr/dt
-		case $MODEL in
-			"ia64")
-				makefile="make_hpux_ia64.mak"
-				echo "Building HPUX ia64 version of SWT"
-				;;
-			*)
-				makefile="make_hpux_PA_RISC.mak"
-				echo "Building HPUX risc version of SWT"
-				;;
-		esac
-		;;
-
-	*)
-		echo "Unknown OS -- build aborted"
-		;;
-esac
-
-export JAVA_HOME MOTIF_HOME CDE_HOME QT_HOME
-
-make -f $makefile $1 $2 $3 $4
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/glx.c b/bundles/org.eclipse.swt.opengl/motif/library/glx.c
deleted file mode 100644
index 4fca4eb..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/glx.c
+++ /dev/null
@@ -1,232 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-#include <GL/glx.h>
-#include "swt.h"
-#include "structs.h"
-
-#define XGL_NATIVE(func) Java_org_eclipse_swt_opengl_internal_motif_XGL_##func
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXChooseVisual)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
-	jint *lparg2=NULL;
-	jint rc;
-
-	DEBUG_CALL("glXChooseVisual\n")
-
-	if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	rc = (jint)glXChooseVisual((Display *)arg0, arg1, (int *)lparg2);
-	if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	return rc;
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(glXCopyContext)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	DEBUG_CALL("glXCopyContext\n")
-
-	glXCopyContext((Display *)arg0, (GLXContext)arg1, (GLXContext)arg2, arg3);
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXCreateContext)
-	(JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jboolean arg3)
-{
-	XVisualInfo _arg1, *lparg1=NULL;
-	jint rc;
-
-	DEBUG_CALL("glXCreateContext\n")
-
-	if (arg1) lparg1 = getXVisualInfoFields(env, arg1, &_arg1);
-	rc = (jint)glXCreateContext((Display *)arg0, lparg1, (GLXContext)arg2, arg3);
-	if (arg1) setXVisualInfoFields(env, arg1, lparg1);
-	return rc;
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXCreateGLXPixmap)
-	(JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
-	XVisualInfo _arg1, *lparg1=NULL;
-	jint rc;
-
-	DEBUG_CALL("glXCreateGLXPixmap\n")
-
-	if (arg1) lparg1 = getXVisualInfoFields(env, arg1, &_arg1);
-	rc = (jint)glXCreateGLXPixmap((Display *)arg0, lparg1, arg2);
-	if (arg1) setXVisualInfoFields(env, arg1, lparg1);
-	return rc;
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(glXDestroyContext)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("glXDestroyContext\n")
-
-	glXDestroyContext((Display *)arg0, (GLXContext)arg1);
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(glXDestroyGLXPixmap)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("glXDestroyGLXPixmap\n")
-
-	glXDestroyGLXPixmap((Display *)arg0, arg1);
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetClientString)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("glXGetClientString\n")
-
-	return (jint)glXGetClientString((Display *)arg0, arg1);
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetConfig)
-	(JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jintArray arg3)
-{
-	XVisualInfo _arg1, *lparg1=NULL;
-	jint *lparg3=NULL;
-	jint rc;
-
-	DEBUG_CALL("glXGetConfig\n")
-
-	if (arg1) lparg1 = getXVisualInfoFields(env, arg1, &_arg1);
-	if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-	rc = (jint)glXGetConfig((Display *)arg0, lparg1, arg2, (int *)lparg3);
-	if (arg1) setXVisualInfoFields(env, arg1, lparg1);
-	if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
-	return rc;
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetCurrentContext)
-	(JNIEnv *env, jclass that)
-{
-	DEBUG_CALL("glXGetCurrentContext\n")
-
-	return (jint)glXGetCurrentContext();
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXGetCurrentDrawable)
-	(JNIEnv *env, jclass that)
-{
-	DEBUG_CALL("glXGetCurrentDrawable\n")
-
-	return (jint)glXGetCurrentDrawable();
-}
-
-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXIsDirect)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("glXIsDirect\n")
-
-	return (jboolean)glXIsDirect((Display *)arg0, (GLXContext)arg1);
-}
-
-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXMakeCurrent)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	DEBUG_CALL("glXMakeCurrent\n")
-
-	return (jboolean)glXMakeCurrent((Display *)arg0, (GLXDrawable)arg1, (GLXContext)arg2);
-}
-
-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXQueryExtension)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2)
-{
-	jint *lparg1=NULL;
-	jint *lparg2=NULL;
-	jboolean rc;
-
-	DEBUG_CALL("glXQueryExtension\n")
-
-	if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	rc = (jboolean)glXQueryExtension((Display *)arg0, (int *)lparg1, (int *)lparg2);
-	if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	return rc;
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXQueryExtensionsString)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("glXQueryExtensionsString\n")
-
-	return (jint)glXQueryExtensionsString((Display *)arg0, arg1);
-}
-
-JNIEXPORT jint JNICALL XGL_NATIVE(glXQueryServerString)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	DEBUG_CALL("glXQueryServerString\n")
-
-	return (jint)glXQueryServerString((Display *)arg0, arg1, arg2);
-}
-
-JNIEXPORT jboolean JNICALL XGL_NATIVE(glXQueryVersion)
-	(JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2)
-{
-	jint *lparg1=NULL;
-	jint *lparg2=NULL;
-	jboolean rc;
-
-	DEBUG_CALL("glXQueryVersion\n")
-
-	if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
-	if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
-	rc = (jboolean)glXQueryVersion((Display *)arg0, (int *)lparg1, (int *)lparg2);
-	if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
-	if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
-	return rc;
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(glXSwapBuffers)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("glXSwapBuffers\n")
-
-	glXSwapBuffers((Display *)arg0, (GLXDrawable)arg1);
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(glXUseXFont)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	DEBUG_CALL("glXUseXFont\n")
-
-	glXUseXFont(arg0, arg1, arg2, arg3);
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(glXWaitGL)
-	(JNIEnv *env, jclass that)
-{
-	DEBUG_CALL("glXWaitGL\n")
-
-	glXWaitGL();
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(glXWaitX)
-	(JNIEnv *env, jclass that)
-{
-	DEBUG_CALL("glXWaitX\n")
-
-	glXWaitX();
-}
-
-JNIEXPORT void JNICALL XGL_NATIVE(memmove__Lorg_eclipse_swt_opengl_internal_motif_XVisualInfo_2II)
-	(JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
-	XVisualInfo _arg0, *lparg0=NULL;
-
-	DEBUG_CALL("memmove__Lorg_eclipse_swt_opengl_internal_motif_XVisualInfo_2II\n")
-
-	if (arg0) lparg0 = &_arg0;
-	memmove((void *)lparg0, (const void *)arg1, (size_t)arg2);
-	if (arg0) setXVisualInfoFields(env, arg0, lparg0);
-}
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/make_aix.mak b/bundles/org.eclipse.swt.opengl/motif/library/make_aix.mak
deleted file mode 100644
index 6928cab..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/make_aix.mak
+++ /dev/null
@@ -1,40 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#*******************************************************************************
-
-# Define the installation directories for various products.
-#    JAVA_HOME  - The JDK > 1.3
-JAVA_HOME   = /usr/java131
-
-# Define the various shared libraries to be made.
-SWT_PREFIX   = swt
-WS_PREFIX    = motif
-SWT_DLL      = lib$(SWT_PREFIX)-$(WS_PREFIX).so
-SWT_OBJ      = gl.o glu.o structs.o glx.o
-SWT_LIB      = -G -bnoentry -lc_r -lC_r -lm -bexpall -lMrm -lX11 -lXext -liconv -lGL -lGLU
-
-#
-# The following CFLAGS are for compiling the SWT OpenGL library.
-#
-CFLAGS = -O -s \
-	-DAIX \
-	-DNO_XINERAMA_EXTENSIONS \
-	-q mbcs -qlanglvl=extended -qmaxmem=8192 \
-	-I$(JAVA_HOME)/include
-
-all: make_swt
-
-make_swt: $(SWT_DLL)
-
-$(SWT_DLL): $(SWT_OBJ)
-	ld $(SWT_LIB) -o $(SWT_DLL) $(SWT_OBJ)
-
-clean:
-	rm -f *.o *.so *.a
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/make_hpux.mak b/bundles/org.eclipse.swt.opengl/motif/library/make_hpux.mak
deleted file mode 100644
index 16648de..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/make_hpux.mak
+++ /dev/null
@@ -1,44 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#*******************************************************************************
-
-# Define the installation directories for various products.
-JAVA_HOME  = /opt/java1.3
-
-# Define the various shared libraries to be made.
-SWT_PREFIX   = gl
-WS_PREFIX    = motif
-SWT_DLL      = lib$(SWT_PREFIX)-$(WS_PREFIX).sl
-SWT_OBJ      = gl.o glu.o structs.o glx.o
-SWT_LIB      = -L/usr/lib -L/opt/graphics/OpenGL/lib -G -lGL -lGLU -lc -ldld -lm
-
-#
-# The following CFLAGS are for compiling the SWT OpenGL library.
-#
-# Note:
-#   The flag -xarch=generic ensure the compiled modules will be targeted
-#   for 32-bit architectures. If this flag is not
-#
-CFLAGS = -Ae +z \
-	-DNO_XINERAMA_EXTENSIONS \
-	-D_HPUX -D_POSIX_C_SOURCE=199506L \
-	-I./ \
-	-I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/hp-ux \
-	-I/opt/graphics/OpenGL/include
-
-all: make_swt
-
-make_swt: $(SWT_DLL)
-
-$(SWT_DLL): $(SWT_OBJ)
-	ld -b -z -o $@ $(SWT_OBJ) $(SWT_LIB)
-
-clean:
-	rm -f *.sl *.o
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/make_linux.mak b/bundles/org.eclipse.swt.opengl/motif/library/make_linux.mak
deleted file mode 100644
index 755895f..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/make_linux.mak
+++ /dev/null
@@ -1,38 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#*******************************************************************************
-
-# Define the installation directories for various products.
-JAVA_HOME   = /bluebird/teamswt/swt-builddir/ive/bin
-
-
-# Define the various shared libraries to be made.
-SWT_PREFIX   = gl
-WS_PREFIX    = motif
-SWT_DLL      = lib$(SWT_PREFIX)-$(WS_PREFIX).so
-SWT_OBJ      = gl.o glu.o structs.o glx.o
-SWT_LIB      = -shared -L/usr/X11R6/lib -lGL -lGLU -lm
-
-#
-# The following CFLAGS are for compiling the SWT OpenGL library.
-#
-CFLAGS = -O -s \
-	-I./ \
-	-I$(JAVA_HOME)/include
-
-all: make_swt
-
-make_swt: $(SWT_DLL)
-
-$(SWT_DLL): $(SWT_OBJ)
-	ld -o $@ $(SWT_OBJ) $(SWT_LIB)
-
-clean:
-	rm -f *.so *.o
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/make_solaris.mak b/bundles/org.eclipse.swt.opengl/motif/library/make_solaris.mak
deleted file mode 100644
index 1b08b07..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/make_solaris.mak
+++ /dev/null
@@ -1,45 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#*******************************************************************************
-
-# Define the installation directories for various products.
-JAVA_HOME   = /bluebird/teamswt/swt-builddir/ive/bin
-
-# Define the various shared libraries to be made.
-SWT_PREFIX   = gl
-WS_PREFIX    = motif
-SWT_DLL      = lib$(SWT_PREFIX)-$(WS_PREFIX).so
-SWT_OBJ      = gl.o glu.o structs.o glx.o
-SWT_LIB      = -G -L/usr/lib -lm -lGL -lGLU
-
-#
-# The following CFLAGS are for compiling the SWT OpenGL library.
-#
-# Note:
-#   The flag -xarch=generic ensure the compiled modules will be targeted
-#   for 32-bit architectures.
-#
-CFLAGS = -O -s \
-	-xarch=generic \
-	-KPIC \
-	-I./ \
-	-I$(JAVA_HOME)/include
-
-all: make_swt
-
-make_swt: $(SWT_DLL)
-
-$(SWT_DLL): $(SWT_OBJ)
-	ld -o $@ $(SWT_OBJ) $(SWT_LIB)
-
-clean:
-	rm -f *.so *.o
-
-
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/structs.c b/bundles/org.eclipse.swt.opengl/motif/library/structs.c
deleted file mode 100644
index bf8db55..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/structs.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-#include <X11/X.h>
-#include <X11/Xlib.h>
-#include "swt.h"
-#include "structs.h"
-
-typedef struct XVisualInfo_FID_CACHE {
-	int cached;
-	jclass clazz;
-	jfieldID visual, visualid, screen, depth, cclass, red_mask, green_mask, blue_mask, colormap_size, bits_per_rgb;
-} XVisualInfo_FID_CACHE;
-typedef XVisualInfo_FID_CACHE *PXVisualInfo_FID_CACHE;
-
-XVisualInfo_FID_CACHE XVisualInfoFc;
-
-void cacheXVisualInfoFids(JNIEnv *env, jobject lpObject, PXVisualInfo_FID_CACHE lpCache)
-{
-	if (lpCache->cached) return;
-	lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
-	lpCache->visual = (*env)->GetFieldID(env, lpCache->clazz, "visual", "I");
-	lpCache->visualid = (*env)->GetFieldID(env, lpCache->clazz, "visualid", "I");
-	lpCache->screen = (*env)->GetFieldID(env, lpCache->clazz, "screen", "I");
-	lpCache->depth = (*env)->GetFieldID(env, lpCache->clazz, "depth", "I");
-	lpCache->cclass = (*env)->GetFieldID(env, lpCache->clazz, "cclass", "I");
-	lpCache->red_mask = (*env)->GetFieldID(env, lpCache->clazz, "red_mask", "I");
-	lpCache->green_mask = (*env)->GetFieldID(env, lpCache->clazz, "green_mask", "I");
-	lpCache->blue_mask = (*env)->GetFieldID(env, lpCache->clazz, "blue_mask", "I");
-	lpCache->colormap_size = (*env)->GetFieldID(env, lpCache->clazz, "colormap_size", "I");
-	lpCache->bits_per_rgb = (*env)->GetFieldID(env, lpCache->clazz, "bits_per_rgb", "I");
-	lpCache->cached = 1;
-}
-
-XVisualInfo *getXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct)
-{
-	PXVisualInfo_FID_CACHE lpCache = &XVisualInfoFc;
-	if (!lpCache->cached) cacheXVisualInfoFids(env, lpObject, lpCache);
-	lpStruct->visual = (Visual *)(*env)->GetIntField(env, lpObject, lpCache->visual);
-	lpStruct->visualid = (*env)->GetIntField(env, lpObject, lpCache->visualid);
-	lpStruct->screen = (*env)->GetIntField(env, lpObject, lpCache->screen);
-	lpStruct->depth = (*env)->GetIntField(env, lpObject, lpCache->depth);
-	lpStruct->class = (*env)->GetIntField(env, lpObject, lpCache->cclass);
-	lpStruct->red_mask = (*env)->GetIntField(env, lpObject, lpCache->red_mask);
-	lpStruct->green_mask = (*env)->GetIntField(env, lpObject, lpCache->green_mask);
-	lpStruct->blue_mask = (*env)->GetIntField(env, lpObject, lpCache->blue_mask);
-	lpStruct->colormap_size = (*env)->GetIntField(env, lpObject, lpCache->colormap_size);
-	lpStruct->bits_per_rgb = (*env)->GetIntField(env, lpObject, lpCache->bits_per_rgb);
-	return lpStruct;
-}
-
-void setXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct)
-{
-	PXVisualInfo_FID_CACHE lpCache = &XVisualInfoFc;
-	if (!lpCache->cached) cacheXVisualInfoFids(env, lpObject, lpCache);
-	(*env)->SetIntField(env, lpObject, lpCache->visual, (jint)lpStruct->visual);
-	(*env)->SetIntField(env, lpObject, lpCache->visualid, (jint)lpStruct->visualid);
-	(*env)->SetIntField(env, lpObject, lpCache->screen, (jint)lpStruct->screen);
-	(*env)->SetIntField(env, lpObject, lpCache->depth, (jint)lpStruct->depth);
-	(*env)->SetIntField(env, lpObject, lpCache->cclass, (jint)lpStruct->class);
-	(*env)->SetIntField(env, lpObject, lpCache->red_mask, (jint)lpStruct->red_mask);
-	(*env)->SetIntField(env, lpObject, lpCache->green_mask, (jint)lpStruct->green_mask);
-	(*env)->SetIntField(env, lpObject, lpCache->blue_mask, (jint)lpStruct->blue_mask);
-	(*env)->SetIntField(env, lpObject, lpCache->colormap_size, (jint)lpStruct->colormap_size);
-	(*env)->SetIntField(env, lpObject, lpCache->bits_per_rgb, (jint)lpStruct->bits_per_rgb);
-}
diff --git a/bundles/org.eclipse.swt.opengl/motif/library/structs.h b/bundles/org.eclipse.swt.opengl/motif/library/structs.h
deleted file mode 100644
index 4121f7f..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/library/structs.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-#include <X11/X.h>
-#include <X11/Xutil.h>
-
-XVisualInfo *getXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct);
-void setXVisualInfoFields(JNIEnv *env, jobject lpObject, XVisualInfo *lpStruct);
-
diff --git a/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/GLContext.java b/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/GLContext.java
deleted file mode 100644
index ea83135..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/GLContext.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.internal.motif.*;
-import org.eclipse.swt.opengl.internal.motif.*;
-
-/**
- * Instances of <code>GLContext</code> are used to draw on swt <code>Drawable</code>s 
- * through invocations of provided OpenGL functions.
- * <p>
- * Application code must explicitly invoke the <code>GLContext.dispose ()</code> 
- * method to release the operating system resources managed by each instance
- * when those instances are no longer required. This is <em>particularly</em>
- * important on Windows95 and Windows98 where the operating system has a limited
- * number of device contexts available.
- * </p>
- */
-public class GLContext {
-	int handle;
-	int gc;
-	GCData data;
-	Drawable drawable;
-	int selectBufferPtr = 0;
-
-	static final int MSB_FIRST = 1;
-	static final int LSB_FIRST = 2;
-
-	/**
-	 * Constructs a new instance of this class which has been
-	 * configured to draw on the specified drawable.
-	 * <p>
-	 * You must dispose the <code>GLContext</code> when it is no longer required. 
-	 * </p>
-	 * 
-	 * @param drawable the drawable to draw on
-	 * @exception IllegalArgumentException <ul>
-	 *    <li>ERROR_NULL_ARGUMENT - if the drawable is null</li>
-	 * </ul>
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_NO_HANDLES if a handle could not be obtained for gc creation</li>
-	 *    <li>ERROR_UNSUPPORTED_DEPTH - if the current display depth is not supported</li>
-	 * </ul>
-	 */
-	public GLContext (Drawable drawable) {
-		if (drawable == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-		this.drawable = drawable;
-		this.data = new GCData ();
-		gc = drawable.internal_new_GC (data);
-		if (gc == 0) SWT.error (SWT.ERROR_NO_HANDLES);
-		int xDisplay = data.display;
-		int screen = OS.XDefaultScreen (xDisplay);
-		int depth = OS.XDefaultDepthOfScreen (OS.XDefaultScreenOfDisplay (xDisplay));
-		int attrib [] = {
-			XGL.GLX_LEVEL,
-			0,
-			XGL.GLX_RGBA,
-			XGL.GLX_DOUBLEBUFFER,
-//			XGL.GLX_DEPTH_SIZE,
-//			depth,
-			0
-		};
-		int infoPtr = XGL.glXChooseVisual (xDisplay, screen, attrib);
-		if (infoPtr == 0) SWT.error (SWT.ERROR_UNSUPPORTED_DEPTH);
-		XVisualInfo info = new XVisualInfo ();
-		XGL.memmove (info, infoPtr, XVisualInfo.sizeof);
-		OS.XFree (infoPtr);
-		handle = XGL.glXCreateContext (xDisplay, info, 0, false);
-		if (handle == 0) SWT.error (SWT.ERROR_NO_HANDLES);
-	}
-	
-	public ImageData convertImageData (ImageData source) {
-		PaletteData palette = new PaletteData (0xff0000, 0xff00, 0xff);
-		ImageData newSource = new ImageData (source.width, source.height, 24, palette);
-		ImageDataUtil.blit (
-			1,
-			source.data,
-			source.depth,
-			source.bytesPerLine,
-			(source.depth != 16) ? MSB_FIRST : LSB_FIRST,
-			0,
-			0,
-			source.width,
-			source.height,
-			source.palette.redMask,
-			source.palette.greenMask,
-			source.palette.blueMask,
-			255,
-			null,
-			0,
-			0,
-			0,
-			newSource.data,
-			newSource.depth,
-			newSource.bytesPerLine,
-			(newSource.depth != 16) ? MSB_FIRST : LSB_FIRST,
-			0,
-			0,
-			newSource.width,
-			newSource.height,
-			newSource.palette.redMask,
-			newSource.palette.greenMask,
-			newSource.palette.blueMask,
-			false,
-			true);
-
-		return newSource;
-	}
-
-	/**
-	 * Disposes of the operating system resources associated with
-	 * the receiver. Applications must dispose of all <code>GLContext</code>s
-	 * that they allocate.
-	 */
-	public void dispose () {
-		if (handle == 0) return;
-		int xDisplay = data.display;
-		if (XGL.glXGetCurrentContext () == handle) {
-			XGL.glXMakeCurrent (xDisplay, 0, 0);
-		}
-		if (selectBufferPtr != 0) OS.XtFree (selectBufferPtr);
-		XGL.glXDestroyContext (xDisplay, handle);
-		handle = 0;
-		// drawable may be disposed
-		try {
-			drawable.internal_dispose_GC (gc, data);
-		} catch (SWTException e) {
-		}
-		gc = 0;
-		data.display = data.drawable = data.colormap = 0;
-		/*data.fontList =*/ data.clipRgn = data.renderTable = 0;
-		drawable = null;
-		data.device = null;
-		data.image = null;
-		//data.codePage = null;
-		data = null;
-	}
-
-	public int[] getSelectBuffer (int selectBufferPtr, int[] selectBuffer) {
-		OS.memmove (selectBuffer, selectBufferPtr, selectBuffer.length * 4);
-		return selectBuffer;
-	}
-
-	public int getSelectBufferPtr (int[] selectBuffer) {
-		if (selectBufferPtr == 0) {
-			selectBufferPtr = OS.XtMalloc (selectBuffer.length * 4);
-		}
-		OS.memmove (selectBufferPtr, selectBuffer, selectBuffer.length * 4);
-		return selectBufferPtr;
-	}
-
-	/**
-	 * Returns a boolean indicating whether the receiver is the current
-	 * <code>GLContext</code>.
-	 *  
-	 * @return true if the receiver is the current <code>GLContext</code>,
-	 * false otherwise
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public boolean isCurrent () {
-		if (isDisposed ()) 	SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		return XGL.glXGetCurrentContext () == handle;
-	}
-
-	/**
-	 * Returns a boolean indicating whether the <code>GLContext</code> has been
-	 * disposed.
-	 * <p>
-	 * This method gets the dispose state for the <code>GLContext</code>.
-	 * When a <code>GLContext</code> has been disposed, it is an error to
-	 * invoke any other method using the <code>GLContext</code>.
-	 *
-	 * @return true if the <code>GLContext</code> is disposed, false otherwise
-	 */
-	public boolean isDisposed () {
-		return handle == 0;
-	}
-
-	/**
-	 * Loads the specified bitmap font.
-	 * 
-	 * @param fdata
-	 * @param device
-	 * @param base
-	 * @param first
-	 * @param count
-	 */
-	public void loadBitmapFont (FontData fdata, Device device, int base, int startIndex, int length) {
-		/* Temporary code, due some problems when running on UTF-8 loadBitmapFont ()
-		 * is restrict to works only for ascii. 
-		 * Note: en_US.ISO8859-1 also code be used.
-		 */
-		fdata.setLocale ("C");
-		Font font = new Font (device, fdata);
-		int fontList = font.handle;
-		int[] buffer = new int [1];
-		if (!OS.XmFontListInitFontContext (buffer, fontList)) return;
-		int context = buffer [0];
-		XFontStruct fontStruct = new XFontStruct ();
-		int fontListEntry;
-		int[] fontStructPtr = new int [1];
-		int[] fontNamePtr = new int [1];
-		int xfont = 0;
-		// go through each entry in the font list
-		while ((fontListEntry = OS.XmFontListNextEntry (context)) != 0) {
-			int fontPtr = OS.XmFontListEntryGetFont (fontListEntry, buffer);
-			if (buffer [0] == OS.XmFONT_IS_FONT) {
-				// FontList contains a single font
-				OS.memmove (fontStruct, fontPtr, 20 * 4);
-				xfont = fontStruct.fid;
-			} else {
-				// FontList contains a fontSet
-				int nFonts = OS.XFontsOfFontSet (fontPtr, fontStructPtr, fontNamePtr);
-				int[] fontStructs = new int [nFonts];
-				OS.memmove (fontStructs, fontStructPtr [0], nFonts * 4);
-				// Go through each fontStruct in the font set.
-				for (int i = 0; i < nFonts; i++) {
-					OS.memmove (fontStruct, fontStructs [i], XFontStruct.sizeof);
-					xfont = fontStruct.fid;
-				}
-			}
-		}
-		if (xfont != 0) {
-			XGL.glXUseXFont (xfont, startIndex, length, base);
-		}
-		font.dispose ();
-		OS.XmFontListFreeFontContext (context);
-	}
-
-	/**
-	 * Loads the specified outline font.
-	 * 
-	 * @param fdata
-	 * @param device
-	 * @param base
-	 * @param first
-	 * @param count
-	 * @param deviation
-	 * @param extrusion
-	 * @param format
-	 * @param lpgmf
-	 */
-	public void loadOutlineFont (FontData fdata, Device device, int base, int first,
-	int count, float deviation, float extrusion, int format, GLYPHMETRICSFLOAT[] lpgmf) {
-		// stub
-	}
-
-	/**
-	 * Resizes the receiver.
-	 * 
-	 * @param x
-	 * @param y
-	 * @param width
-	 * @param height
-	 */
-	public void resize (int x, int y, int width, int height) {
-		if (height == 0) height = 1;
-		GL.glViewport (x, y, width, height);
-		GL.glMatrixMode (GL.GL_PROJECTION);
-		GL.glLoadIdentity ();
-		GLU.gluPerspective (45.0f, (float) width / (float) height, 0.1f, 100.0f);
-		GL.glMatrixMode (GL.GL_MODELVIEW);
-		GL.glLoadIdentity ();
-	}
-
-	/**
-	 * Sets the receiver to be the current <code>GLContext</code>.
-	 * 
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public void setCurrent () {
-		if (isDisposed ()) SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		if (XGL.glXGetCurrentContext () == handle) return;
-		XGL.glXMakeCurrent (data.display, data.drawable, handle);
-	}
-
-	/**
-	 * Swaps the receiver's buffers.
-	 * 
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public void swapBuffers () {
-		if (isDisposed ()) SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		XGL.glXSwapBuffers (data.display, data.drawable);
-	}
-}
diff --git a/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XGL.java b/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XGL.java
deleted file mode 100644
index ce3705a..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XGL.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.motif;
-
-import org.eclipse.swt.opengl.Library;
-
-public class XGL {
-	
-static {
-	Library.loadLibrary("gl");
-}
-
-public static final int GLX_VERSION_1_1 = 1;
-public static final int GLX_VERSION_1_2 = 1;
-public static final int GLX_VERSION_1_3 = 1;
-
-/*
-** Visual Config Attributes (glXGetConfig, glXGetFBConfigAttrib)
-*/
-public static final int GLX_USE_GL		= 1;	/* support GLX rendering */
-public static final int GLX_BUFFER_SIZE		= 2;	/* depth of the color buffer */
-public static final int GLX_LEVEL		= 3;	/* level in plane stacking */
-public static final int GLX_RGBA		= 4;	/* true if RGBA mode */
-public static final int GLX_DOUBLEBUFFER	= 5;	/* double buffering supported */
-public static final int GLX_STEREO		= 6;	/* stereo buffering supported */
-public static final int GLX_AUX_BUFFERS		= 7;	/* number of aux buffers */
-public static final int GLX_RED_SIZE		= 8;	/* number of red component bits */
-public static final int GLX_GREEN_SIZE		= 9;	/* number of green component bits */
-public static final int GLX_BLUE_SIZE		= 10;	/* number of blue component bits */
-public static final int GLX_ALPHA_SIZE		= 11;	/* number of alpha component bits */
-public static final int GLX_DEPTH_SIZE		= 12;	/* number of depth bits */
-public static final int GLX_STENCIL_SIZE	= 13;	/* number of stencil bits */
-public static final int GLX_ACCUM_RED_SIZE	= 14;	/* number of red accum bits */
-public static final int GLX_ACCUM_GREEN_SIZE	= 15;	/* number of green accum bits */
-public static final int GLX_ACCUM_BLUE_SIZE	= 16;	/* number of blue accum bits */
-public static final int GLX_ACCUM_ALPHA_SIZE	= 17;	/* number of alpha accum bits */
-/*
-** FBConfig-specific attributes
-*/
-public static final int GLX_X_VISUAL_TYPE		= 0x22;
-public static final int GLX_CONFIG_CAVEAT		= 0x20;	/* Like visual_info VISUAL_CAVEAT_EXT */
-public static final int GLX_TRANSPARENT_TYPE		= 0x23;
-public static final int GLX_TRANSPARENT_INDEX_VALUE	= 0x24;
-public static final int GLX_TRANSPARENT_RED_VALUE	= 0x25;
-public static final int GLX_TRANSPARENT_GREEN_VALUE	= 0x26;
-public static final int GLX_TRANSPARENT_BLUE_VALUE	= 0x27;
-public static final int GLX_TRANSPARENT_ALPHA_VALUE	= 0x28;
-public static final int GLX_DRAWABLE_TYPE		= 0x8010;
-public static final int GLX_RENDER_TYPE			= 0x8011;
-public static final int GLX_X_RENDERABLE		= 0x8012;
-public static final int GLX_FBCONFIG_ID			= 0x8013;
-public static final int GLX_MAX_PBUFFER_WIDTH		= 0x8016;
-public static final int GLX_MAX_PBUFFER_HEIGHT		= 0x8017;
-public static final int GLX_MAX_PBUFFER_PIXELS		= 0x8018;
-public static final int GLX_VISUAL_ID			= 0x800B;
-
-/*
-** Error return values from glXGetConfig.  Success is indicated by
-** a value of 0.
-*/
-public static final int GLX_BAD_SCREEN		= 1;	/* screen # is bad */
-public static final int GLX_BAD_ATTRIBUTE	= 2;	/* attribute to get is bad */
-public static final int GLX_NO_EXTENSION	= 3;	/* no glx extension on server */
-public static final int GLX_BAD_VISUAL		= 4;	/* visual # not known by GLX */
-public static final int GLX_BAD_CONTEXT		= 5;	/* returned only by import_context EXT? */
-public static final int GLX_BAD_VALUE		= 6;	/* returned only by glXSwapIntervalSGI? */
-public static final int GLX_BAD_ENUM		= 7;	/* unused? */
-
-/* FBConfig attribute values */
-
-/*
-** Generic "don't care" value for glX ChooseFBConfig attributes (except
-** GLX_LEVEL)
-*/
-public static final int GLX_DONT_CARE			= 0xFFFFFFFF;
-
-/* GLX_RENDER_TYPE bits */
-public static final int GLX_RGBA_BIT			= 0x00000001;
-public static final int GLX_COLOR_INDEX_BIT		= 0x00000002;
-
-/* GLX_DRAWABLE_TYPE bits */
-public static final int GLX_WINDOW_BIT			= 0x00000001;
-public static final int GLX_PIXMAP_BIT			= 0x00000002;
-public static final int GLX_PBUFFER_BIT			= 0x00000004;
-
-/* GLX_CONFIG_CAVEAT attribute values */
-public static final int GLX_NONE			= 0x8000;
-public static final int GLX_SLOW_CONFIG			= 0x8001;
-public static final int GLX_NON_CONFORMANT_CONFIG	= 0x800D;
-
-/* GLX_X_VISUAL_TYPE attribute values */
-public static final int GLX_TRUE_COLOR			= 0x8002;
-public static final int GLX_DIRECT_COLOR		= 0x8003;
-public static final int GLX_PSEUDO_COLOR		= 0x8004;
-public static final int GLX_STATIC_COLOR		= 0x8005;
-public static final int GLX_GRAY_SCALE			= 0x8006;
-public static final int GLX_STATIC_GRAY			= 0x8007;
-
-/* GLX_TRANSPARENT_TYPE attribute values */
-/* public static final int GLX_NONE			   0x8000 */
-public static final int GLX_TRANSPARENT_RGB		= 0x8008;
-public static final int GLX_TRANSPARENT_INDEX		= 0x8009;
-
-/* glXCreateGLXPbuffer attributes */
-public static final int GLX_PRESERVED_CONTENTS		= 0x801B;
-public static final int GLX_LARGEST_PBUFFER		= 0x801C;
-public static final int GLX_PBUFFER_HEIGHT		= 0x8040;	/* New for GLX 1.3 */
-public static final int GLX_PBUFFER_WIDTH		= 0x8041;	/* New for GLX 1.3 */
-
-/* glXQueryGLXPBuffer attributes */
-public static final int GLX_WIDTH			= 0x801D;
-public static final int GLX_HEIGHT			= 0x801E;
-public static final int GLX_EVENT_MASK			= 0x801F;
-
-/* glXCreateNewContext render_type attribute values */
-public static final int GLX_RGBA_TYPE			= 0x8014;
-public static final int GLX_COLOR_INDEX_TYPE		= 0x8015;
-
-/* glXQueryContext attributes */
-/* public static final int GLX_FBCONFIG_ID		  0x8013 */
-/* public static final int GLX_RENDER_TYPE		  0x8011 */
-public static final int GLX_SCREEN			= 0x800C;
-
-/* glXSelectEvent event mask bits */
-public static final int GLX_PBUFFER_CLOBBER_MASK	= 0x08000000;
-
-/* GLXPbufferClobberEvent event_type values */
-public static final int GLX_DAMAGED			= 0x8020;
-public static final int GLX_SAVED			= 0x8021;
-
-/* GLXPbufferClobberEvent draw_type values */
-public static final int GLX_WINDOW			= 0x8022;
-public static final int GLX_PBUFFER			= 0x8023;
-
-/* GLXPbufferClobberEvent buffer_mask bits */
-public static final int GLX_FRONT_LEFT_BUFFER_BIT	= 0x00000001;
-public static final int GLX_FRONT_RIGHT_BUFFER_BIT	= 0x00000002;
-public static final int GLX_BACK_LEFT_BUFFER_BIT	= 0x00000004;
-public static final int GLX_BACK_RIGHT_BUFFER_BIT	= 0x00000008;
-public static final int GLX_AUX_BUFFERS_BIT		= 0x00000010;
-public static final int GLX_DEPTH_BUFFER_BIT		= 0x00000020;
-public static final int GLX_STENCIL_BUFFER_BIT		= 0x00000040;
-public static final int GLX_ACCUM_BUFFER_BIT		= 0x00000080;
-
-/*
-** Extension return values from glXGetConfig.  These are also
-** accepted as parameter values for glXChooseVisual.
-*/
-
-public static final int GLX_X_VISUAL_TYPE_EXT	= 0x22;	/* visual_info extension type */
-public static final int GLX_TRANSPARENT_TYPE_EXT = 0x23;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_INDEX_VALUE_EXT = 0x24;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_RED_VALUE_EXT	= 0x25;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_GREEN_VALUE_EXT = 0x26;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_BLUE_VALUE_EXT	= 0x27;	/* visual_info extension */
-public static final int GLX_TRANSPARENT_ALPHA_VALUE_EXT = 0x28;	/* visual_info extension */
-
-/* Property values for visual_type */
-public static final int GLX_TRUE_COLOR_EXT	= 0x8002;
-public static final int GLX_DIRECT_COLOR_EXT	= 0x8003;
-public static final int GLX_PSEUDO_COLOR_EXT	= 0x8004;
-public static final int GLX_STATIC_COLOR_EXT	= 0x8005;
-public static final int GLX_GRAY_SCALE_EXT	= 0x8006;
-public static final int GLX_STATIC_GRAY_EXT	= 0x8007;
-
-/* Property values for transparent pixel */
-public static final int GLX_NONE_EXT		= 0x8000;
-public static final int GLX_TRANSPARENT_RGB_EXT		= 0x8008;
-public static final int GLX_TRANSPARENT_INDEX_EXT	= 0x8009;
-
-/* Property values for visual_rating */
-public static final int GLX_VISUAL_CAVEAT_EXT		= 0x20;  /* visual_rating extension type */
-public static final int GLX_SLOW_VISUAL_EXT		= 0x8001;
-public static final int GLX_NON_CONFORMANT_VISUAL_EXT	= 0x800D;
-
-/*
-** Names for attributes to glXGetClientString.
-*/
-public static final int GLX_VENDOR		= 0x1;
-public static final int GLX_VERSION		= 0x2;
-public static final int GLX_EXTENSIONS		= 0x3;
-
-/*
-** Names for attributes to glXQueryContextInfoEXT.
-*/
-public static final int GLX_SHARE_CONTEXT_EXT	= 0x800A;	/* id of share context */
-public static final int GLX_VISUAL_ID_EXT	= 0x800B;	/* id of context's visual */
-public static final int GLX_SCREEN_EXT		= 0x800C;	/* screen number */
-
-/* GLX Extension Strings */
-public static final int GLX_EXT_import_context	= 1;
-public static final int GLX_EXT_visual_info	= 1;
-public static final int GLX_EXT_visual_rating	= 1;
-public static final int GLX_ARB_get_proc_address = 1;
-
-public static final native int glXChooseVisual(int dpy, int screen, int[] attribList);
-public static final native void glXCopyContext(int dpy, int src, int dst, int mask);
-//public static final native int glXCreateContext(int dpy, int vis, int shareList, boolean direct);
-public static final native int glXCreateContext(int dpy, XVisualInfo vis, int shareList, boolean direct);
-public static final native int glXCreateGLXPixmap(int dpy, XVisualInfo vis, int pixmap);
-public static final native void glXDestroyContext(int dpy, int ctx);
-public static final native void glXDestroyGLXPixmap(int dpy, int pix);
-public static final native int glXGetConfig(int dpy, XVisualInfo vis, int attrib, int[] value);
-public static final native int glXGetCurrentContext();
-public static final native int glXGetCurrentDrawable();
-public static final native boolean glXIsDirect(int dpy, int ctx);
-public static final native boolean glXMakeCurrent(int dpy, int drawable, int ctx);
-public static final native boolean glXQueryExtension(int dpy, int[] errorBase, int[] eventBase);
-public static final native boolean glXQueryVersion(int dpy, int[] major, int[] minor);
-public static final native void glXSwapBuffers(int dpy, int drawable);
-public static final native void glXUseXFont(int font, int first, int count, int listBase);
-public static final native void glXWaitGL();
-public static final native void glXWaitX();
-public static final native int glXGetClientString(int dpy, int name);
-public static final native int glXQueryServerString(int dpy, int screen, int name);
-public static final native int glXQueryExtensionsString(int dpy, int screen);
-public static final native void memmove(XVisualInfo dest, int src, int size);
-
-}
diff --git a/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XVisualInfo.java b/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XVisualInfo.java
deleted file mode 100644
index d6cba4a..0000000
--- a/bundles/org.eclipse.swt.opengl/motif/org/eclipse/swt/opengl/internal/motif/XVisualInfo.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.motif;
-
- 
-public class XVisualInfo {
-	public int visual;
-	public int visualid;
-	public int screen;
-	public int depth;
-	public int cclass;
-	public int red_mask, green_mask, blue_mask;
-	public int colormap_size;
-	public int bits_per_rgb;
-	public static final int sizeof = 40;
-}
diff --git a/bundles/org.eclipse.swt.opengl/plugin.properties b/bundles/org.eclipse.swt.opengl/plugin.properties
deleted file mode 100644
index 72fe2d9..0000000
--- a/bundles/org.eclipse.swt.opengl/plugin.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName = Standard Widget Toolkit OpenGL Bindings
-providerName = Eclipse.org
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.opengl/plugin.xml b/bundles/org.eclipse.swt.opengl/plugin.xml
deleted file mode 100644
index feaf868..0000000
--- a/bundles/org.eclipse.swt.opengl/plugin.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin
-   id="org.eclipse.swt.opengl"
-   name="%pluginName"
-   version="3.1.0"
-   provider-name="%providerName">
-
-   <runtime>
-      <library name="$ws$/swt.jar">
-         <export name="*"/>
-         <packages prefixes="org.eclipse.swt.opengl"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.swt" export="true"/>
-   </requires>
-
-
-</plugin>
diff --git a/bundles/org.eclipse.swt.opengl/win32/library/build.bat b/bundles/org.eclipse.swt.opengl/win32/library/build.bat
deleted file mode 100644
index 9d6a37a..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/library/build.bat
+++ /dev/null
@@ -1,34 +0,0 @@
-rem *******************************************************************************
-rem  Copyright (c) 2000, 2003 IBM Corporation and others.
-rem  All rights reserved. This program and the accompanying materials 
-rem  are made available under the terms of the Common Public License v1.0
-rem  which accompanies this distribution, and is available at
-rem  http://www.eclipse.org/legal/cpl-v10.html
-rem  
-rem  Contributors:
-rem      IBM Corporation - initial API and implementation
-rem *******************************************************************************
-
-@echo off
-
-IF NOT "%JAVA_HOME%"=="" GOTO MAKE
-
-rem *****
-rem Javah
-rem *****
-set JAVA_HOME=j:\teamswt\swt-builddir\ive\bin
-set path=%JAVA_HOME%;%path%
-
-rem ********
-rem MSVC 6.0
-rem ********
-call k:\dev\products\msvc60\vc98\bin\vcvars32.bat
-
-rem ****** 
-rem MS-SDK
-rem ******
-set Mssdk=j:\teamswt\swt-builddir\mssdk
-call %mssdk%\setenv.bat
-
-:MAKE
-nmake -f make_win32.mak %1 %2 %3 %4
diff --git a/bundles/org.eclipse.swt.opengl/win32/library/glw.c b/bundles/org.eclipse.swt.opengl/win32/library/glw.c
deleted file mode 100644
index bcad15d..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/library/glw.c
+++ /dev/null
@@ -1,283 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-#include <windows.h>
-#include <wingdi.h>
-#include "jni.h"
-#include "swt.h"
-#include "structs.h"
-
-#define WGL_NATIVE(func) Java_org_eclipse_swt_opengl_internal_win32_WGL_##func
-
-JNIEXPORT jint JNICALL WGL_NATIVE(ChoosePixelFormat)
-	(JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
-	PIXELFORMATDESCRIPTOR _arg1, *lparg1=NULL;
-	jint rc;
-
-	DEBUG_CALL("ChoosePixelFormat\n")
-
-	if (arg1) lparg1 = getPIXELFORMATDESCRIPTORFields(env, arg1, &_arg1);
-	rc = (jint)ChoosePixelFormat((HDC)arg0, (CONST PIXELFORMATDESCRIPTOR *)lparg1);
-	if (arg1) setPIXELFORMATDESCRIPTORFields(env, arg1, lparg1);
-	return rc;
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(DescribePixelFormat)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
-	PIXELFORMATDESCRIPTOR _arg3, *lparg3=NULL;
-	jint rc;
-
-	DEBUG_CALL("DescribePixelFormat\n")
-
-	if (arg3) lparg3 = getPIXELFORMATDESCRIPTORFields(env, arg3, &_arg3);
-	rc = (jint)DescribePixelFormat((HDC)arg0, arg1, arg2, (LPPIXELFORMATDESCRIPTOR)lparg3);
-	if (arg3) setPIXELFORMATDESCRIPTORFields(env, arg3, lparg3);
-	return rc;
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(GetPixelFormat)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	DEBUG_CALL("GetPixelFormat\n")
-
-	return (jint)GetPixelFormat((HDC)arg0);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(SetPixelFormat)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
-	PIXELFORMATDESCRIPTOR _arg2, *lparg2=NULL;
-	jboolean rc;
-
-	DEBUG_CALL("SetPixelFormat\n")
-
-	if (arg2) lparg2 = getPIXELFORMATDESCRIPTORFields(env, arg2, &_arg2);
-	rc = (jboolean)SetPixelFormat((HDC)arg0, arg1, (CONST PIXELFORMATDESCRIPTOR *)lparg2);
-	if (arg2) setPIXELFORMATDESCRIPTORFields(env, arg2, lparg2);
-	return rc;
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(SwapBuffers)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	DEBUG_CALL("SwapBuffers\n")
-
-	return (jboolean)SwapBuffers((HDC)arg0);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglCopyContext)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
-	DEBUG_CALL("wglCopyContext\n")
-
-	return (jboolean)wglCopyContext((HGLRC)arg0, (HGLRC)arg1, (UINT)arg2);
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(wglCreateContext)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	DEBUG_CALL("wglCreateContext\n")
-
-	return (jint)wglCreateContext((HDC)arg0);
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(wglCreateLayerContext)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("wglCreateLayerContext\n")
-
-	return (jint)wglCreateLayerContext((HDC)arg0, arg1);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglDeleteContext)
-	(JNIEnv *env, jclass that, jint arg0)
-{
-	DEBUG_CALL("wglDeleteContext\n")
-
-	return (jboolean)wglDeleteContext((HGLRC)arg0);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglDescribeLayerPlane)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jobject arg4)
-{
-	LAYERPLANEDESCRIPTOR _arg4, *lparg4=NULL;
-	jboolean rc;
-
-	DEBUG_CALL("wglDescribeLayerPlane\n")
-
-	if (arg4) lparg4 = getLAYERPLANEDESCRIPTORFields(env, arg4, &_arg4);
-	rc = (jboolean)wglDescribeLayerPlane((HDC)arg0, arg1, arg2, arg3, (LPLAYERPLANEDESCRIPTOR)lparg4);
-	if (arg4) setLAYERPLANEDESCRIPTORFields(env, arg4, lparg4);
-	return rc;
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(wglGetCurrentContext)
-	(JNIEnv *env, jclass that)
-{
-	DEBUG_CALL("wglGetCurrentContext\n")
-
-	return (jint)wglGetCurrentContext();
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(wglGetCurrentDC)
-	(JNIEnv *env, jclass that)
-{
-	DEBUG_CALL("wglGetCurrentDC\n")
-
-	return (jint)wglGetCurrentDC();
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(wglGetLayerPaletteEntries)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jintArray arg4)
-{
-	jint *lparg4=NULL;
-	jint rc;
-
-	DEBUG_CALL("wglGetLayerPaletteEntries\n")
-
-	if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
-	rc = (jint)wglGetLayerPaletteEntries((HDC)arg0, arg1, arg2, arg3, (COLORREF *)lparg4);
-	if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
-	return rc;
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(wglGetProcAddress)
-	(JNIEnv *env, jclass that, jbyteArray arg0)
-{
-	jbyte *lparg0=NULL;
-	jint rc;
-
-	DEBUG_CALL("wglGetProcAddress\n")
-
-	if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
-	rc = (jint)wglGetProcAddress((LPCSTR)lparg0);
-	if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
-	return rc;
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglMakeCurrent)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("wglMakeCurrent\n")
-
-	return (jboolean)wglMakeCurrent((HDC)arg0, (HGLRC)arg1);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglRealizeLayerPalette)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2)
-{
-	DEBUG_CALL("wglRealizeLayerPalette\n")
-
-	return (jboolean)wglRealizeLayerPalette((HDC)arg0, arg1, (BOOL)arg2);
-}
-
-JNIEXPORT jint JNICALL WGL_NATIVE(wglSetLayerPaletteEntries)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jintArray arg4)
-{
-	jint *lparg4=NULL;
-	jint rc;
-
-	DEBUG_CALL("wglSetLayerPaletteEntries\n")
-
-	if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
-	rc = (jint)wglSetLayerPaletteEntries((HDC)arg0, arg1, arg2, arg3, (CONST COLORREF *)lparg4);
-	if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
-	return rc;
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglShareLists)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("wglShareLists\n")
-
-	return (jboolean)wglShareLists((HGLRC)arg0, (HGLRC)arg1);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglSwapLayerBuffers)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
-	DEBUG_CALL("wglSwapLayerBuffers\n")
-
-	return (jboolean)wglSwapLayerBuffers((HDC)arg0, arg1);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglUseFontBitmapsA)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	DEBUG_CALL("wglUseFontBitmapsA\n")
-
-	return (jboolean)wglUseFontBitmapsA((HDC)arg0, arg1, arg2, arg3);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglUseFontBitmapsW)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
-	DEBUG_CALL("wglUseFontBitmapsW\n")
-
-	return (jboolean)wglUseFontBitmapsW((HDC)arg0, arg1, arg2, arg3);
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglUseFontOutlinesA)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jfloat arg4, jfloat arg5, jint arg6, jobject arg7)
-{
-//	GLYPHMETRICSFLOAT _arg7, *lparg7=NULL;
-	jboolean rc;
-
-	DEBUG_CALL("wglUseFontOutlinesA\n")
-
-//	if (arg7) lparg7 = getGLYPHMETRICSFLOATFields(env, arg7, &_arg7);
-	rc = (jboolean)wglUseFontOutlinesA((HDC)arg0, arg1, arg2, arg3, (FLOAT)arg4, (FLOAT)arg5, arg6, (LPGLYPHMETRICSFLOAT)arg7);
-//	if (arg7) setGLYPHMETRICSFLOATFields(env, arg7, lparg7);
-	return rc;
-}
-
-JNIEXPORT jboolean JNICALL WGL_NATIVE(wglUseFontOutlinesW)
-	(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jfloat arg4, jfloat arg5, jint arg6, jobject arg7)
-{
-//	GLYPHMETRICSFLOAT _arg7, *lparg7=NULL;
-	jboolean rc;
-
-	DEBUG_CALL("wglUseFontOutlinesW\n")
-
-//	if (arg7) lparg7 = getGLYPHMETRICSFLOATFields(env, arg7, &_arg7);
-	rc = (jboolean)wglUseFontOutlinesW((HDC)arg0, arg1, arg2, arg3, (FLOAT)arg4, (FLOAT)arg5, arg6, (LPGLYPHMETRICSFLOAT)arg7);
-//	if (arg7) setGLYPHMETRICSFLOATFields(env, arg7, lparg7);
-	return rc;
-}
-
-JNIEXPORT void JNICALL WGL_NATIVE(MoveMemoryW__Lorg_eclipse_swt_opengl_internal_win32_GLYPHMETRICSFLOAT_2II)
-	(JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
-	GLYPHMETRICSFLOAT _arg0, *lparg0=NULL;
-
-	DEBUG_CALL("MoveMemoryW__Lorg_eclipse_swt_opengl_internal_win32_GLYPHMETRICSFLOAT_2II\n")
-	DEBUG_CHECK_NULL(env, arg1)
-	
-	if (arg0) lparg0 = &_arg0;
-	MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
-	if (arg0) setGLYPHMETRICSFLOATFields(env, arg0, lparg0);
-}
-
-JNIEXPORT void JNICALL WGL_NATIVE(MoveMemoryA__Lorg_eclipse_swt_opengl_internal_win32_GLYPHMETRICSFLOAT_2II)
-	(JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
-	GLYPHMETRICSFLOAT _arg0, *lparg0=NULL;
-
-	DEBUG_CALL("MoveMemoryA__Lorg_eclipse_swt_opengl_internal_win32_GLYPHMETRICSFLOAT_2II\n")
-	DEBUG_CHECK_NULL(env, arg1)
-	
-	if (arg0) lparg0 = &_arg0;
-	MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
-	if (arg0) setGLYPHMETRICSFLOATFields(env, arg0, lparg0);
-}
-
-
diff --git a/bundles/org.eclipse.swt.opengl/win32/library/make_win32.mak b/bundles/org.eclipse.swt.opengl/win32/library/make_win32.mak
deleted file mode 100644
index 3b90d86..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/library/make_win32.mak
+++ /dev/null
@@ -1,56 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#*******************************************************************************
-
-# assumes JAVA_HOME is set in the environment from which nmake is run
-
-APPVER=5.0
-!include <win32.mak>
-
-pgm_ver_str="SWT $(maj_ver).$(min_ver) for Windows"
-timestamp_str=__DATE__\" \"__TIME__\" (EST)\"
-copyright = "Copyright (C) 1999, 2003 IBM Corp.  All rights reserved."
-
-SWT_PREFIX=gl
-WS_PREFIX=win32
-SWT_LIB     = $(SWT_PREFIX)-$(WS_PREFIX).dll
-
-LINK_LIBS = opengl32.lib glu32.lib gdi32.lib
-
-# note: thoroughly test all examples after changing any optimization flags
-SWT_CDEBUG = #-Zi -Odi
-SWT_LDEBUG = #/DEBUG /DEBUGTYPE:both
-CFLAGS = -c -W3 -G6 -GD -O1 $(SWT_CDEBUG) -nologo -D_X86_=1 -D_WIN32 -D_WIN95 -D_WIN32_WINDOWS=0x0400 -D_MT -MT -DWIN32 -D_WIN32_DCOM /I$(JAVA_HOME)\include /I.
-RCFLAGS = -DSWT_COMMA_VERSION=$(comma_ver)
-LFLAGS = /INCREMENTAL:NO /PDB:NONE /RELEASE /NOLOGO $(SWT_LDEBUG) -entry:_DllMainCRTStartup@12 -dll /BASE:0x10000000 /comment:$(pgm_ver_str) /comment:$(copyright) /DLL
-
-SWT_OBJS = swt.obj gl.obj glu.obj glw.obj structs.obj
-
-all: $(SWT_LIB)
-
-.c.obj:
-	cl $(CFLAGS) $*.c
-
-$(SWT_LIB): $(SWT_OBJS) swt.res
-	echo $(LFLAGS) >templrf
-	echo $(LINK_LIBS) >>templrf
-	echo -machine:IX86 >>templrf
-	echo -subsystem:windows >>templrf
-	echo -out:$(SWT_LIB) >>templrf
-	echo $(SWT_OBJS) >>templrf
-	echo swt.res >>templrf
-	link @templrf
-	del templrf
-	
-swt.res:
-	rc $(RCFLAGS) -DSWT_ORG_FILENAME=\"$(SWT_LIB)\" -r -fo swt.res swt.rc
-	
-clean:
-    del *.obj *.res *.dll *.lib *.exp
diff --git a/bundles/org.eclipse.swt.opengl/win32/library/structs.c b/bundles/org.eclipse.swt.opengl/win32/library/structs.c
deleted file mode 100644
index a9c61dc..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/library/structs.c
+++ /dev/null
@@ -1,304 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-#include "swt.h"
-#include "structs.h"
-
-typedef struct GLYPHMETRICSFLOAT_FID_CACHE {
-	int cached;
-	jclass clazz;
-	jfieldID gmfCellIncY, gmfCellIncX, gmfptGlyphOrigin_y, gmfptGlyphOrigin_x, gmfBlackBoxY, gmfBlackBoxX;
-} GLYPHMETRICSFLOAT_FID_CACHE;
-typedef GLYPHMETRICSFLOAT_FID_CACHE *PGLYPHMETRICSFLOAT_FID_CACHE;
-
-GLYPHMETRICSFLOAT_FID_CACHE GLYPHMETRICSFLOATFc;
-
-void cacheGLYPHMETRICSFLOATFids(JNIEnv *env, jobject lpObject, PGLYPHMETRICSFLOAT_FID_CACHE lpCache)
-{
-	if (lpCache->cached) return;
-	lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
-	lpCache->gmfCellIncY = (*env)->GetFieldID(env, lpCache->clazz, "gmfCellIncY", "F");
-	lpCache->gmfCellIncX = (*env)->GetFieldID(env, lpCache->clazz, "gmfCellIncX", "F");
-	lpCache->gmfptGlyphOrigin_y = (*env)->GetFieldID(env, lpCache->clazz, "gmfptGlyphOrigin_y", "F");
-	lpCache->gmfptGlyphOrigin_x = (*env)->GetFieldID(env, lpCache->clazz, "gmfptGlyphOrigin_x", "F");
-	lpCache->gmfBlackBoxY = (*env)->GetFieldID(env, lpCache->clazz, "gmfBlackBoxY", "F");
-	lpCache->gmfBlackBoxX = (*env)->GetFieldID(env, lpCache->clazz, "gmfBlackBoxX", "F");
-	lpCache->cached = 1;
-}
-
-GLYPHMETRICSFLOAT *getGLYPHMETRICSFLOATFields(JNIEnv *env, jobject lpObject, GLYPHMETRICSFLOAT *lpStruct)
-{
-	PGLYPHMETRICSFLOAT_FID_CACHE lpCache = &GLYPHMETRICSFLOATFc;
-	if (!lpCache->cached) cacheGLYPHMETRICSFLOATFids(env, lpObject, lpCache);
-	lpStruct->gmfCellIncY = (*env)->GetFloatField(env, lpObject, lpCache->gmfCellIncY);
-	lpStruct->gmfCellIncX = (*env)->GetFloatField(env, lpObject, lpCache->gmfCellIncX);
-	lpStruct->gmfptGlyphOrigin.y = (*env)->GetFloatField(env, lpObject, lpCache->gmfptGlyphOrigin_y);
-	lpStruct->gmfptGlyphOrigin.x = (*env)->GetFloatField(env, lpObject, lpCache->gmfptGlyphOrigin_x);
-	lpStruct->gmfBlackBoxY = (*env)->GetFloatField(env, lpObject, lpCache->gmfBlackBoxY);
-	lpStruct->gmfBlackBoxX = (*env)->GetFloatField(env, lpObject, lpCache->gmfBlackBoxX);
-	return lpStruct;
-}
-
-void setGLYPHMETRICSFLOATFields(JNIEnv *env, jobject lpObject, GLYPHMETRICSFLOAT *lpStruct)
-{
-	PGLYPHMETRICSFLOAT_FID_CACHE lpCache = &GLYPHMETRICSFLOATFc;
-	if (!lpCache->cached) cacheGLYPHMETRICSFLOATFids(env, lpObject, lpCache);
-	(*env)->SetFloatField(env, lpObject, lpCache->gmfCellIncY, (jfloat)lpStruct->gmfCellIncY);
-	(*env)->SetFloatField(env, lpObject, lpCache->gmfCellIncX, (jfloat)lpStruct->gmfCellIncX);
-	(*env)->SetFloatField(env, lpObject, lpCache->gmfptGlyphOrigin_y, (jfloat)lpStruct->gmfptGlyphOrigin.y);
-	(*env)->SetFloatField(env, lpObject, lpCache->gmfptGlyphOrigin_x, (jfloat)lpStruct->gmfptGlyphOrigin.x);
-	(*env)->SetFloatField(env, lpObject, lpCache->gmfBlackBoxY, (jfloat)lpStruct->gmfBlackBoxY);
-	(*env)->SetFloatField(env, lpObject, lpCache->gmfBlackBoxX, (jfloat)lpStruct->gmfBlackBoxX);
-}
-
-typedef struct LAYERPLANEDESCRIPTOR_FID_CACHE {
-	int cached;
-	jclass clazz;
-	jfieldID crTransparent, bReserved, iLayerPlane, cAuxBuffers, cStencilBits, cDepthBits, cAccumAlphaBits, cAccumBlueBits, cAccumGreenBits, cAccumRedBits, cAccumBits, cAlphaShift, cAlphaBits, cBlueShift, cBlueBits, cGreenShift, cGreenBits, cRedShift, cRedBits, cColorBits, iPixelType, dwFlags, nVersion, nSize;
-} LAYERPLANEDESCRIPTOR_FID_CACHE;
-typedef LAYERPLANEDESCRIPTOR_FID_CACHE *PLAYERPLANEDESCRIPTOR_FID_CACHE;
-
-LAYERPLANEDESCRIPTOR_FID_CACHE LAYERPLANEDESCRIPTORFc;
-
-void cacheLAYERPLANEDESCRIPTORFids(JNIEnv *env, jobject lpObject, PLAYERPLANEDESCRIPTOR_FID_CACHE lpCache)
-{
-	if (lpCache->cached) return;
-	lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
-	lpCache->crTransparent = (*env)->GetFieldID(env, lpCache->clazz, "crTransparent", "I");
-	lpCache->bReserved = (*env)->GetFieldID(env, lpCache->clazz, "bReserved", "B");
-	lpCache->iLayerPlane = (*env)->GetFieldID(env, lpCache->clazz, "iLayerPlane", "B");
-	lpCache->cAuxBuffers = (*env)->GetFieldID(env, lpCache->clazz, "cAuxBuffers", "B");
-	lpCache->cStencilBits = (*env)->GetFieldID(env, lpCache->clazz, "cStencilBits", "B");
-	lpCache->cDepthBits = (*env)->GetFieldID(env, lpCache->clazz, "cDepthBits", "B");
-	lpCache->cAccumAlphaBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumAlphaBits", "B");
-	lpCache->cAccumBlueBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumBlueBits", "B");
-	lpCache->cAccumGreenBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumGreenBits", "B");
-	lpCache->cAccumRedBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumRedBits", "B");
-	lpCache->cAccumBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumBits", "B");
-	lpCache->cAlphaShift = (*env)->GetFieldID(env, lpCache->clazz, "cAlphaShift", "B");
-	lpCache->cAlphaBits = (*env)->GetFieldID(env, lpCache->clazz, "cAlphaBits", "B");
-	lpCache->cBlueShift = (*env)->GetFieldID(env, lpCache->clazz, "cBlueShift", "B");
-	lpCache->cBlueBits = (*env)->GetFieldID(env, lpCache->clazz, "cBlueBits", "B");
-	lpCache->cGreenShift = (*env)->GetFieldID(env, lpCache->clazz, "cGreenShift", "B");
-	lpCache->cGreenBits = (*env)->GetFieldID(env, lpCache->clazz, "cGreenBits", "B");
-	lpCache->cRedShift = (*env)->GetFieldID(env, lpCache->clazz, "cRedShift", "B");
-	lpCache->cRedBits = (*env)->GetFieldID(env, lpCache->clazz, "cRedBits", "B");
-	lpCache->cColorBits = (*env)->GetFieldID(env, lpCache->clazz, "cColorBits", "B");
-	lpCache->iPixelType = (*env)->GetFieldID(env, lpCache->clazz, "iPixelType", "B");
-	lpCache->dwFlags = (*env)->GetFieldID(env, lpCache->clazz, "dwFlags", "I");
-	lpCache->nVersion = (*env)->GetFieldID(env, lpCache->clazz, "nVersion", "S");
-	lpCache->nSize = (*env)->GetFieldID(env, lpCache->clazz, "nSize", "S");
-	lpCache->cached = 1;
-}
-
-LAYERPLANEDESCRIPTOR *getLAYERPLANEDESCRIPTORFields(JNIEnv *env, jobject lpObject, LAYERPLANEDESCRIPTOR *lpStruct)
-{
-	PLAYERPLANEDESCRIPTOR_FID_CACHE lpCache = &LAYERPLANEDESCRIPTORFc;
-	if (!lpCache->cached) cacheLAYERPLANEDESCRIPTORFids(env, lpObject, lpCache);
-	lpStruct->crTransparent = (*env)->GetIntField(env, lpObject, lpCache->crTransparent);
-	lpStruct->bReserved = (*env)->GetByteField(env, lpObject, lpCache->bReserved);
-	lpStruct->iLayerPlane = (*env)->GetByteField(env, lpObject, lpCache->iLayerPlane);
-	lpStruct->cAuxBuffers = (*env)->GetByteField(env, lpObject, lpCache->cAuxBuffers);
-	lpStruct->cStencilBits = (*env)->GetByteField(env, lpObject, lpCache->cStencilBits);
-	lpStruct->cDepthBits = (*env)->GetByteField(env, lpObject, lpCache->cDepthBits);
-	lpStruct->cAccumAlphaBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumAlphaBits);
-	lpStruct->cAccumBlueBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumBlueBits);
-	lpStruct->cAccumGreenBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumGreenBits);
-	lpStruct->cAccumRedBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumRedBits);
-	lpStruct->cAccumBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumBits);
-	lpStruct->cAlphaShift = (*env)->GetByteField(env, lpObject, lpCache->cAlphaShift);
-	lpStruct->cAlphaBits = (*env)->GetByteField(env, lpObject, lpCache->cAlphaBits);
-	lpStruct->cBlueShift = (*env)->GetByteField(env, lpObject, lpCache->cBlueShift);
-	lpStruct->cBlueBits = (*env)->GetByteField(env, lpObject, lpCache->cBlueBits);
-	lpStruct->cGreenShift = (*env)->GetByteField(env, lpObject, lpCache->cGreenShift);
-	lpStruct->cGreenBits = (*env)->GetByteField(env, lpObject, lpCache->cGreenBits);
-	lpStruct->cRedShift = (*env)->GetByteField(env, lpObject, lpCache->cRedShift);
-	lpStruct->cRedBits = (*env)->GetByteField(env, lpObject, lpCache->cRedBits);
-	lpStruct->cColorBits = (*env)->GetByteField(env, lpObject, lpCache->cColorBits);
-	lpStruct->iPixelType = (*env)->GetByteField(env, lpObject, lpCache->iPixelType);
-	lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, lpCache->dwFlags);
-	lpStruct->nVersion = (*env)->GetShortField(env, lpObject, lpCache->nVersion);
-	lpStruct->nSize = (*env)->GetShortField(env, lpObject, lpCache->nSize);
-	return lpStruct;
-}
-
-void setLAYERPLANEDESCRIPTORFields(JNIEnv *env, jobject lpObject, LAYERPLANEDESCRIPTOR *lpStruct)
-{
-	PLAYERPLANEDESCRIPTOR_FID_CACHE lpCache = &LAYERPLANEDESCRIPTORFc;
-	if (!lpCache->cached) cacheLAYERPLANEDESCRIPTORFids(env, lpObject, lpCache);
-	(*env)->SetIntField(env, lpObject, lpCache->crTransparent, (jint)lpStruct->crTransparent);
-	(*env)->SetByteField(env, lpObject, lpCache->bReserved, (jbyte)lpStruct->bReserved);
-	(*env)->SetByteField(env, lpObject, lpCache->iLayerPlane, (jbyte)lpStruct->iLayerPlane);
-	(*env)->SetByteField(env, lpObject, lpCache->cAuxBuffers, (jbyte)lpStruct->cAuxBuffers);
-	(*env)->SetByteField(env, lpObject, lpCache->cStencilBits, (jbyte)lpStruct->cStencilBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cDepthBits, (jbyte)lpStruct->cDepthBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumAlphaBits, (jbyte)lpStruct->cAccumAlphaBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumBlueBits, (jbyte)lpStruct->cAccumBlueBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumGreenBits, (jbyte)lpStruct->cAccumGreenBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumRedBits, (jbyte)lpStruct->cAccumRedBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumBits, (jbyte)lpStruct->cAccumBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAlphaShift, (jbyte)lpStruct->cAlphaShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cAlphaBits, (jbyte)lpStruct->cAlphaBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cBlueShift, (jbyte)lpStruct->cBlueShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cBlueBits, (jbyte)lpStruct->cBlueBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cGreenShift, (jbyte)lpStruct->cGreenShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cGreenBits, (jbyte)lpStruct->cGreenBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cRedShift, (jbyte)lpStruct->cRedShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cRedBits, (jbyte)lpStruct->cRedBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cColorBits, (jbyte)lpStruct->cColorBits);
-	(*env)->SetByteField(env, lpObject, lpCache->iPixelType, (jbyte)lpStruct->iPixelType);
-	(*env)->SetIntField(env, lpObject, lpCache->dwFlags, (jint)lpStruct->dwFlags);
-	(*env)->SetShortField(env, lpObject, lpCache->nVersion, (jshort)lpStruct->nVersion);
-	(*env)->SetShortField(env, lpObject, lpCache->nSize, (jshort)lpStruct->nSize);
-}
-
-typedef struct POINTFLOAT_FID_CACHE {
-	int cached;
-	jclass clazz;
-	jfieldID y, x;
-} POINTFLOAT_FID_CACHE;
-typedef POINTFLOAT_FID_CACHE *PPOINTFLOAT_FID_CACHE;
-
-POINTFLOAT_FID_CACHE POINTFLOATFc;
-
-void cachePOINTFLOATFids(JNIEnv *env, jobject lpObject, PPOINTFLOAT_FID_CACHE lpCache)
-{
-	if (lpCache->cached) return;
-	lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
-	lpCache->y = (*env)->GetFieldID(env, lpCache->clazz, "y", "F");
-	lpCache->x = (*env)->GetFieldID(env, lpCache->clazz, "x", "F");
-	lpCache->cached = 1;
-}
-
-POINTFLOAT *getPOINTFLOATFields(JNIEnv *env, jobject lpObject, POINTFLOAT *lpStruct)
-{
-	PPOINTFLOAT_FID_CACHE lpCache = &POINTFLOATFc;
-	if (!lpCache->cached) cachePOINTFLOATFids(env, lpObject, lpCache);
-	lpStruct->y = (*env)->GetFloatField(env, lpObject, lpCache->y);
-	lpStruct->x = (*env)->GetFloatField(env, lpObject, lpCache->x);
-	return lpStruct;
-}
-
-void setPOINTFLOATFields(JNIEnv *env, jobject lpObject, POINTFLOAT *lpStruct)
-{
-	PPOINTFLOAT_FID_CACHE lpCache = &POINTFLOATFc;
-	if (!lpCache->cached) cachePOINTFLOATFids(env, lpObject, lpCache);
-	(*env)->SetFloatField(env, lpObject, lpCache->y, (jfloat)lpStruct->y);
-	(*env)->SetFloatField(env, lpObject, lpCache->x, (jfloat)lpStruct->x);
-}
-
-typedef struct PIXELFORMATDESCRIPTOR_FID_CACHE {
-	int cached;
-	jclass clazz;
-	jfieldID dwDamageMask, dwVisibleMask, dwLayerMask, bReserved, iLayerType, cAuxBuffers, cStencilBits, cDepthBits, cAccumAlphaBits, cAccumBlueBits, cAccumGreenBits, cAccumRedBits, cAccumBits, cAlphaShift, cAlphaBits, cBlueShift, cBlueBits, cGreenShift, cGreenBits, cRedShift, cRedBits, cColorBits, iPixelType, dwFlags, nVersion, nSize;
-} PIXELFORMATDESCRIPTOR_FID_CACHE;
-typedef PIXELFORMATDESCRIPTOR_FID_CACHE *PPIXELFORMATDESCRIPTOR_FID_CACHE;
-
-PIXELFORMATDESCRIPTOR_FID_CACHE PIXELFORMATDESCRIPTORFc;
-
-void cachePIXELFORMATDESCRIPTORFids(JNIEnv *env, jobject lpObject, PPIXELFORMATDESCRIPTOR_FID_CACHE lpCache)
-{
-	if (lpCache->cached) return;
-	lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
-	lpCache->dwDamageMask = (*env)->GetFieldID(env, lpCache->clazz, "dwDamageMask", "I");
-	lpCache->dwVisibleMask = (*env)->GetFieldID(env, lpCache->clazz, "dwVisibleMask", "I");
-	lpCache->dwLayerMask = (*env)->GetFieldID(env, lpCache->clazz, "dwLayerMask", "I");
-	lpCache->bReserved = (*env)->GetFieldID(env, lpCache->clazz, "bReserved", "B");
-	lpCache->iLayerType = (*env)->GetFieldID(env, lpCache->clazz, "iLayerType", "B");
-	lpCache->cAuxBuffers = (*env)->GetFieldID(env, lpCache->clazz, "cAuxBuffers", "B");
-	lpCache->cStencilBits = (*env)->GetFieldID(env, lpCache->clazz, "cStencilBits", "B");
-	lpCache->cDepthBits = (*env)->GetFieldID(env, lpCache->clazz, "cDepthBits", "B");
-	lpCache->cAccumAlphaBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumAlphaBits", "B");
-	lpCache->cAccumBlueBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumBlueBits", "B");
-	lpCache->cAccumGreenBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumGreenBits", "B");
-	lpCache->cAccumRedBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumRedBits", "B");
-	lpCache->cAccumBits = (*env)->GetFieldID(env, lpCache->clazz, "cAccumBits", "B");
-	lpCache->cAlphaShift = (*env)->GetFieldID(env, lpCache->clazz, "cAlphaShift", "B");
-	lpCache->cAlphaBits = (*env)->GetFieldID(env, lpCache->clazz, "cAlphaBits", "B");
-	lpCache->cBlueShift = (*env)->GetFieldID(env, lpCache->clazz, "cBlueShift", "B");
-	lpCache->cBlueBits = (*env)->GetFieldID(env, lpCache->clazz, "cBlueBits", "B");
-	lpCache->cGreenShift = (*env)->GetFieldID(env, lpCache->clazz, "cGreenShift", "B");
-	lpCache->cGreenBits = (*env)->GetFieldID(env, lpCache->clazz, "cGreenBits", "B");
-	lpCache->cRedShift = (*env)->GetFieldID(env, lpCache->clazz, "cRedShift", "B");
-	lpCache->cRedBits = (*env)->GetFieldID(env, lpCache->clazz, "cRedBits", "B");
-	lpCache->cColorBits = (*env)->GetFieldID(env, lpCache->clazz, "cColorBits", "B");
-	lpCache->iPixelType = (*env)->GetFieldID(env, lpCache->clazz, "iPixelType", "B");
-	lpCache->dwFlags = (*env)->GetFieldID(env, lpCache->clazz, "dwFlags", "I");
-	lpCache->nVersion = (*env)->GetFieldID(env, lpCache->clazz, "nVersion", "S");
-	lpCache->nSize = (*env)->GetFieldID(env, lpCache->clazz, "nSize", "S");
-	lpCache->cached = 1;
-}
-
-PIXELFORMATDESCRIPTOR *getPIXELFORMATDESCRIPTORFields(JNIEnv *env, jobject lpObject, PIXELFORMATDESCRIPTOR *lpStruct)
-{
-	PPIXELFORMATDESCRIPTOR_FID_CACHE lpCache = &PIXELFORMATDESCRIPTORFc;
-	if (!lpCache->cached) cachePIXELFORMATDESCRIPTORFids(env, lpObject, lpCache);
-	lpStruct->dwDamageMask = (*env)->GetIntField(env, lpObject, lpCache->dwDamageMask);
-	lpStruct->dwVisibleMask = (*env)->GetIntField(env, lpObject, lpCache->dwVisibleMask);
-	lpStruct->dwLayerMask = (*env)->GetIntField(env, lpObject, lpCache->dwLayerMask);
-	lpStruct->bReserved = (*env)->GetByteField(env, lpObject, lpCache->bReserved);
-	lpStruct->iLayerType = (*env)->GetByteField(env, lpObject, lpCache->iLayerType);
-	lpStruct->cAuxBuffers = (*env)->GetByteField(env, lpObject, lpCache->cAuxBuffers);
-	lpStruct->cStencilBits = (*env)->GetByteField(env, lpObject, lpCache->cStencilBits);
-	lpStruct->cDepthBits = (*env)->GetByteField(env, lpObject, lpCache->cDepthBits);
-	lpStruct->cAccumAlphaBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumAlphaBits);
-	lpStruct->cAccumBlueBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumBlueBits);
-	lpStruct->cAccumGreenBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumGreenBits);
-	lpStruct->cAccumRedBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumRedBits);
-	lpStruct->cAccumBits = (*env)->GetByteField(env, lpObject, lpCache->cAccumBits);
-	lpStruct->cAlphaShift = (*env)->GetByteField(env, lpObject, lpCache->cAlphaShift);
-	lpStruct->cAlphaBits = (*env)->GetByteField(env, lpObject, lpCache->cAlphaBits);
-	lpStruct->cBlueShift = (*env)->GetByteField(env, lpObject, lpCache->cBlueShift);
-	lpStruct->cBlueBits = (*env)->GetByteField(env, lpObject, lpCache->cBlueBits);
-	lpStruct->cGreenShift = (*env)->GetByteField(env, lpObject, lpCache->cGreenShift);
-	lpStruct->cGreenBits = (*env)->GetByteField(env, lpObject, lpCache->cGreenBits);
-	lpStruct->cRedShift = (*env)->GetByteField(env, lpObject, lpCache->cRedShift);
-	lpStruct->cRedBits = (*env)->GetByteField(env, lpObject, lpCache->cRedBits);
-	lpStruct->cColorBits = (*env)->GetByteField(env, lpObject, lpCache->cColorBits);
-	lpStruct->iPixelType = (*env)->GetByteField(env, lpObject, lpCache->iPixelType);
-	lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, lpCache->dwFlags);
-	lpStruct->nVersion = (*env)->GetShortField(env, lpObject, lpCache->nVersion);
-	lpStruct->nSize = (*env)->GetShortField(env, lpObject, lpCache->nSize);
-	return lpStruct;
-}
-
-void setPIXELFORMATDESCRIPTORFields(JNIEnv *env, jobject lpObject, PIXELFORMATDESCRIPTOR *lpStruct)
-{
-	PPIXELFORMATDESCRIPTOR_FID_CACHE lpCache = &PIXELFORMATDESCRIPTORFc;
-	if (!lpCache->cached) cachePIXELFORMATDESCRIPTORFids(env, lpObject, lpCache);
-	(*env)->SetIntField(env, lpObject, lpCache->dwDamageMask, (jint)lpStruct->dwDamageMask);
-	(*env)->SetIntField(env, lpObject, lpCache->dwVisibleMask, (jint)lpStruct->dwVisibleMask);
-	(*env)->SetIntField(env, lpObject, lpCache->dwLayerMask, (jint)lpStruct->dwLayerMask);
-	(*env)->SetByteField(env, lpObject, lpCache->bReserved, (jbyte)lpStruct->bReserved);
-	(*env)->SetByteField(env, lpObject, lpCache->iLayerType, (jbyte)lpStruct->iLayerType);
-	(*env)->SetByteField(env, lpObject, lpCache->cAuxBuffers, (jbyte)lpStruct->cAuxBuffers);
-	(*env)->SetByteField(env, lpObject, lpCache->cStencilBits, (jbyte)lpStruct->cStencilBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cDepthBits, (jbyte)lpStruct->cDepthBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumAlphaBits, (jbyte)lpStruct->cAccumAlphaBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumBlueBits, (jbyte)lpStruct->cAccumBlueBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumGreenBits, (jbyte)lpStruct->cAccumGreenBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumRedBits, (jbyte)lpStruct->cAccumRedBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAccumBits, (jbyte)lpStruct->cAccumBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cAlphaShift, (jbyte)lpStruct->cAlphaShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cAlphaBits, (jbyte)lpStruct->cAlphaBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cBlueShift, (jbyte)lpStruct->cBlueShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cBlueBits, (jbyte)lpStruct->cBlueBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cGreenShift, (jbyte)lpStruct->cGreenShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cGreenBits, (jbyte)lpStruct->cGreenBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cRedShift, (jbyte)lpStruct->cRedShift);
-	(*env)->SetByteField(env, lpObject, lpCache->cRedBits, (jbyte)lpStruct->cRedBits);
-	(*env)->SetByteField(env, lpObject, lpCache->cColorBits, (jbyte)lpStruct->cColorBits);
-	(*env)->SetByteField(env, lpObject, lpCache->iPixelType, (jbyte)lpStruct->iPixelType);
-	(*env)->SetIntField(env, lpObject, lpCache->dwFlags, (jint)lpStruct->dwFlags);
-	(*env)->SetShortField(env, lpObject, lpCache->nVersion, (jshort)lpStruct->nVersion);
-	(*env)->SetShortField(env, lpObject, lpCache->nSize, (jshort)lpStruct->nSize);
-}
-
diff --git a/bundles/org.eclipse.swt.opengl/win32/library/structs.h b/bundles/org.eclipse.swt.opengl/win32/library/structs.h
deleted file mode 100644
index 63f8b7b..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/library/structs.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-#include <windows.h>
-
-GLYPHMETRICSFLOAT *getGLYPHMETRICSFLOATFields(JNIEnv *env, jobject lpObject, GLYPHMETRICSFLOAT *lpStruct);
-void setGLYPHMETRICSFLOATFields(JNIEnv *env, jobject lpObject, GLYPHMETRICSFLOAT *lpStruct);
-
-LAYERPLANEDESCRIPTOR *getLAYERPLANEDESCRIPTORFields(JNIEnv *env, jobject lpObject, LAYERPLANEDESCRIPTOR *lpStruct);
-void setLAYERPLANEDESCRIPTORFields(JNIEnv *env, jobject lpObject, LAYERPLANEDESCRIPTOR *lpStruct);
-
-POINTFLOAT *getPOINTFLOATFields(JNIEnv *env, jobject lpObject, POINTFLOAT *lpStruct);
-void setPOINTFLOATFields(JNIEnv *env, jobject lpObject, POINTFLOAT *lpStruct);
-
-PIXELFORMATDESCRIPTOR *getPIXELFORMATDESCRIPTORFields(JNIEnv *env, jobject lpObject, PIXELFORMATDESCRIPTOR *lpStruct);
-void setPIXELFORMATDESCRIPTORFields(JNIEnv *env, jobject lpObject, PIXELFORMATDESCRIPTOR *lpStruct);
-
diff --git a/bundles/org.eclipse.swt.opengl/win32/library/swt.rc b/bundles/org.eclipse.swt.opengl/win32/library/swt.rc
deleted file mode 100644
index 68b7074..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/library/swt.rc
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
- 
-#include "windows.h"
-
-VS_VERSION_INFO VERSIONINFO
- PRODUCTVERSION 0,0,0,0
- FILEFLAGSMASK 0x3fL
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x40000L
- FILETYPE 0x2L
- FILESUBTYPE 0x0L
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "CompanyName", "IBM Corporation\0"
-            VALUE "FileDescription", "Standard Widget Toolkit\0"
-            VALUE "InternalName", "SWT\0"
-            VALUE "LegalCopyright", "© Copyright 2000, 2003 IBM Corp.  All Rights Reserved.\0"
-            VALUE "OriginalFilename", SWT_ORG_FILENAME
-            VALUE "ProductName", "\0"
-            VALUE "ProductVersion", "0,0,0,0\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
-
-/* SHMENUBAR Pocket PC 
- * ID_MENU SHMENUBAR DISCARDABLE
- * BEGIN
- * 	ID_MENU, 1,
- *  IMAGE_NONE, ID_MENU_ITEM1, 0, 0,
- *  0, 0, 0,
- * END
- * ID_MENU MENU DISCARDABLE
- * BEGIN
- *  MENUITEM "", ID_MENU_ITEM1
- * END
- */
-100 RCDATA DISCARDABLE 
-BEGIN
-    100, 1,
-    -2, 101, 0, 0, 
-    0, 0, 0,
-END
-
-100 MENU DISCARDABLE
-BEGIN
-	MENUITEM "", 101
-END
\ No newline at end of file
diff --git a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/GLContext.java b/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/GLContext.java
deleted file mode 100644
index b2863df..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/GLContext.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.opengl.internal.win32.*;
-import org.eclipse.swt.internal.win32.*;
-
-/**
- * Instances of <code>GLContext</code> are used to draw on swt <code>Drawable</code>s 
- * through invocations of provided OpenGL functions.
- * <p>
- * Application code must explicitly invoke the <code>GLContext.dispose ()</code> 
- * method to release the operating system resources managed by each instance
- * when those instances are no longer required. This is <em>particularly</em>
- * important on Windows95 and Windows98 where the operating system has a limited
- * number of device contexts available.
- * </p>
- */
-public class GLContext {
-	int handle;
-	int hDC;
-	GCData data;
-	Drawable drawable;
-	int selectBufferPtr = 0;
-
-	static final int MSB_FIRST = 1;
-	static final int LSB_FIRST = 2;
-
-	/**
-	 * Constructs a new instance of this class which has been
-	 * configured to draw on the specified drawable.
-	 * <p>
-	 * You must dispose the <code>GLContext</code> when it is no longer required. 
-	 * </p>
-	 * 
-	 * @param drawable the drawable to draw on
-	 * @exception IllegalArgumentException <ul>
-	 *    <li>ERROR_NULL_ARGUMENT - if the drawable is null</li>
-	 * </ul>
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_NO_HANDLES if a handle could not be obtained for gc creation</li>
-	 *    <li>ERROR_UNSUPPORTED_DEPTH - if the current display depth is not supported</li>
-	 * </ul>
-	 */
-	public GLContext (Drawable drawable) {
-		if (drawable == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-		this.drawable = drawable;
-		this.data = new GCData ();
-		hDC = drawable.internal_new_GC (data);
-		if (hDC == 0) SWT.error (SWT.ERROR_NO_HANDLES);
-		int bits = OS.GetDeviceCaps (hDC, OS.BITSPIXEL);
-		int planes = OS.GetDeviceCaps (hDC, OS.PLANES);
-		int depth = bits * planes;
-		PIXELFORMATDESCRIPTOR pfd = new PIXELFORMATDESCRIPTOR ();
-		pfd.nSize = (short) PIXELFORMATDESCRIPTOR.sizeof;
-		pfd.nVersion = 1;
-		pfd.dwFlags =
-			WGL.PFD_DRAW_TO_WINDOW
-				| WGL.PFD_SUPPORT_OPENGL
-				| WGL.PFD_DOUBLEBUFFER;
-		pfd.dwLayerMask = WGL.PFD_MAIN_PLANE;
-		pfd.iPixelType = (byte) WGL.PFD_TYPE_RGBA;
-		pfd.cColorBits = (byte) depth;
-		pfd.cDepthBits = (byte) depth;
-		pfd.cAccumBits = 0;
-		pfd.cStencilBits = 0;
-		int pixelFormat = WGL.ChoosePixelFormat (hDC, pfd);
-		if (pixelFormat == 0) {
-			drawable.internal_dispose_GC (hDC, data);
-			SWT.error (SWT.ERROR_UNSUPPORTED_DEPTH);
-		}
-		if (!WGL.SetPixelFormat (hDC, pixelFormat, pfd)) {
-			drawable.internal_dispose_GC (hDC, data);
-			SWT.error (SWT.ERROR_UNSUPPORTED_DEPTH);
-		}
-		handle = WGL.wglCreateContext (hDC);
-		if (handle == 0) SWT.error (SWT.ERROR_NO_HANDLES);
-	}
-
-	public ImageData convertImageData (ImageData source) {
-		PaletteData palette = new PaletteData (0xff0000, 0xff00, 0xff);
-		ImageData newSource = new ImageData (source.width, source.height, 24, palette);
-
-		ImageDataUtil.blit (
-			1,
-			source.data,
-			source.depth,
-			source.bytesPerLine,
-			(source.depth != 16) ? MSB_FIRST : LSB_FIRST,
-			0,
-			0,
-			source.width,
-			source.height,
-			source.palette.redMask,
-			source.palette.greenMask,
-			source.palette.blueMask,
-			255,
-			null,
-			0,
-			0,
-			0,
-			newSource.data,
-			newSource.depth,
-			newSource.bytesPerLine,
-			(newSource.depth != 16) ? MSB_FIRST : LSB_FIRST,
-			0,
-			0,
-			newSource.width,
-			newSource.height,
-			newSource.palette.redMask,
-			newSource.palette.greenMask,
-			newSource.palette.blueMask,
-			false,
-			true);
-
-		return newSource;
-	}
-
-	/**
-	 * Disposes of the operating system resources associated with
-	 * the receiver. Applications must dispose of all <code>GLContext</code>s
-	 * that they allocate.
-	 */
-	public void dispose () {
-		if (handle == 0) return;
-		if (WGL.wglGetCurrentContext () == handle) {
-			WGL.wglMakeCurrent (0, 0);
-		}
-		WGL.wglDeleteContext (handle);
-		handle = 0;
-
-		// drawable may be disposed
-		try {
-			drawable.internal_dispose_GC (hDC, data);
-		} catch (SWTException e) {
-		}
-		int hHeap = OS.GetProcessHeap ();
-		if (selectBufferPtr != 0) {
-			OS.HeapFree (hHeap, 0, selectBufferPtr);
-		}
-		hDC = 0;
-		drawable = null;
-		data.device = null;
-		data = null;
-	}
-
-	public int[] getSelectBuffer (int selectBufferPtr, int[] selectBuffer) {
-		OS.MoveMemory (selectBuffer, selectBufferPtr, selectBuffer.length * 4);
-		return selectBuffer;
-	}
-
-	public int getSelectBufferPtr (int[] selectBuffer) {
-		if (selectBufferPtr == 0) {
-			int hHeap = OS.GetProcessHeap ();
-			selectBufferPtr =
-				OS.HeapAlloc (
-					hHeap,
-					OS.HEAP_ZERO_MEMORY,
-					selectBuffer.length * 4);
-		}
-		OS.MoveMemory (selectBufferPtr, selectBuffer, selectBuffer.length * 4);
-		return selectBufferPtr;
-	}
-
-	/**
-	 * Returns a boolean indicating whether the receiver is the current
-	 * <code>GLContext</code>.
-	 *  
-	 * @return true if the receiver is the current <code>GLContext</code>,
-	 * false otherwise
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public boolean isCurrent () {
-		if (isDisposed ()) SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		return WGL.wglGetCurrentContext () == handle;
-	}
-
-	/**
-	 * Returns a boolean indicating whether the <code>GLContext</code> has been
-	 * disposed.
-	 * <p>
-	 * This method gets the dispose state for the <code>GLContext</code>.
-	 * When a <code>GLContext</code> has been disposed, it is an error to
-	 * invoke any other method using the <code>GLContext</code>.
-	 *
-	 * @return true if the <code>GLContext</code> is disposed, false otherwise
-	 */
-	public boolean isDisposed () {
-		return handle == 0;
-	}
-
-	/**
-	 * Loads the specified bitmap font.
-	 * 
-	 * @param fdata
-	 * @param device
-	 * @param base
-	 * @param first
-	 * @param count
-	 */
-	public void loadBitmapFont (FontData fdata,	Device device, int base, int first,	int count) {
-		Font font = new Font (device, fdata);
-		int oldFont = OS.SelectObject (hDC, font.handle);
-		WGL.wglUseFontBitmaps (hDC, first, count, base);
-		OS.SelectObject (hDC, oldFont);
-		font.dispose ();
-	}
-
-	/**
-	 * Loads the specified outline font.
-	 * 
-	 * @param fdata
-	 * @param device
-	 * @param base
-	 * @param first
-	 * @param count
-	 * @param deviation
-	 * @param extrusion
-	 * @param format
-	 * @param lpgmf
-	 */
-	public void loadOutlineFont (FontData fdata, Device device, int base, int first,
-	int count, float deviation, float extrusion, int format, GLYPHMETRICSFLOAT[] lpgmf) {
-		int ptr = 0;
-		int hHeap = 0;
-		if (lpgmf != null && lpgmf.length == count + 1) {
-			hHeap = OS.GetProcessHeap ();
-			ptr =
-				OS.HeapAlloc (
-					hHeap,
-					OS.HEAP_ZERO_MEMORY,
-					count * GLYPHMETRICSFLOAT.sizeof);
-		}
-
-		if (format == GL.GL_POLYGON) {
-			format = WGL.WGL_FONT_POLYGONS;
-		} 
-		if (format == GL.GL_LINE) {
-			format = WGL.WGL_FONT_LINES;
-		} 
-
-		Font font = new Font (device, fdata);
-		int oldFont = OS.SelectObject (hDC, font.handle);
-		WGL.wglUseFontOutlines (hDC, first, count, base, deviation, extrusion, format, ptr);
-		OS.SelectObject (hDC, oldFont);
-		font.dispose ();
-		if (ptr != 0) {
-			int sizeof = GLYPHMETRICSFLOAT.sizeof;
-			for (int i = 0; i < lpgmf.length; i++) {
-				WGL.MoveMemory (lpgmf [i], ptr + (sizeof * i), sizeof);
-			};
-			OS.HeapFree (hHeap, 0, ptr);
-		}
-	}
-
-	/**
-	 * Resizes the receiver.
-	 * 
-	 * @param x
-	 * @param y
-	 * @param width
-	 * @param height
-	 */
-	public void resize (int x, int y, int width, int height) {
-		if (height == 0) height = 1;
-		GL.glViewport (0, 0, width, height);
-		float nRange = 200.0f;
-		GL.glMatrixMode (GL.GL_PROJECTION);
-		GL.glLoadIdentity ();
-		// load projection
-		GLU.gluPerspective (45.0f, (float) width / (float) height, 0.1f, 100.0f);
-		GL.glMatrixMode (GL.GL_MODELVIEW);
-		GL.glLoadIdentity ();
-	}
-
-	/**
-	 * Sets the receiver to be the current <code>GLContext</code>.
-	 * 
- 	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public void setCurrent () {
-		if (isDisposed ()) SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		if (WGL.wglGetCurrentContext () == handle) return;
-		WGL.wglMakeCurrent (hDC, handle);
-	}
-
-	/**
-	 * Swaps the receiver's buffers.
-	 * 
-	 * @exception SWTError <ul>
-	 *    <li>ERROR_GRAPHIC_DISPOSED if the receiver is disposed</li>
-	 * </ul>
-	 */
-	public void swapBuffers () {
-		if (isDisposed ()) SWT.error (SWT.ERROR_GRAPHIC_DISPOSED);
-		WGL.SwapBuffers (hDC);
-	}
-}
diff --git a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/LAYERPLANEDESCRIPTOR.java b/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/LAYERPLANEDESCRIPTOR.java
deleted file mode 100644
index ec410a1..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/LAYERPLANEDESCRIPTOR.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.win32;
-
-
-public class LAYERPLANEDESCRIPTOR {
-    public short nSize;
-    public short nVersion;
-    public int dwFlags;
-    public byte iPixelType;
-    public byte cColorBits;
-    public byte cRedBits;
-    public byte cRedShift;
-    public byte cGreenBits;
-    public byte cGreenShift;
-    public byte cBlueBits;
-    public byte cBlueShift;
-    public byte cAlphaBits;
-    public byte cAlphaShift;
-    public byte cAccumBits;
-    public byte cAccumRedBits;
-    public byte cAccumGreenBits;
-    public byte cAccumBlueBits;
-    public byte cAccumAlphaBits;
-    public byte cDepthBits;
-    public byte cStencilBits;
-    public byte cAuxBuffers;
-    public byte iLayerPlane;
-    public byte bReserved;
-    public int crTransparent;
-	public static final int sizeof = 36;
-}
diff --git a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/PIXELFORMATDESCRIPTOR.java b/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/PIXELFORMATDESCRIPTOR.java
deleted file mode 100644
index 254f868..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/PIXELFORMATDESCRIPTOR.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.win32;
-
-
-public class PIXELFORMATDESCRIPTOR {
-   	public short nSize;
-    public short nVersion;
-    public int dwFlags;
-    public byte iPixelType;
-    public byte cColorBits;
-    public byte cRedBits;
-    public byte cRedShift;
-    public byte cGreenBits;
-    public byte cGreenShift;
-    public byte cBlueBits;
-    public byte cBlueShift;
-    public byte cAlphaBits;
-    public byte cAlphaShift;
-    public byte cAccumBits;
-    public byte cAccumRedBits;
-    public byte cAccumGreenBits;
-    public byte cAccumBlueBits;
-    public byte cAccumAlphaBits;
-    public byte cDepthBits;
-    public byte cStencilBits;
-    public byte cAuxBuffers;
-    public byte iLayerType;
-    public byte bReserved;
-    public int dwLayerMask;
-    public int dwVisibleMask;
-    public int dwDamageMask;
-	public static final int sizeof = 40;
-}
diff --git a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/POINTFLOAT.java b/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/POINTFLOAT.java
deleted file mode 100644
index b0601f1..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/POINTFLOAT.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.win32;
-
-
-public class POINTFLOAT {
-	public float x;
-	public float y;
-	public static final int sizeof = 8;
-}
diff --git a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/WGL.java b/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/WGL.java
deleted file mode 100644
index 000f528..0000000
--- a/bundles/org.eclipse.swt.opengl/win32/org/eclipse/swt/opengl/internal/win32/WGL.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.internal.win32;
-
-
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.opengl.Library;
-import org.eclipse.swt.internal.win32.OS;
-
-public class WGL {
-	
-static {
-	Library.loadLibrary("gl");
-}
-	
-public static final int WGL_FONT_LINES      = 0;
-public static final int WGL_FONT_POLYGONS   = 1;
-
-/* LAYERPLANEDESCRIPTOR flags */
-public static final int LPD_DOUBLEBUFFER        = 0x00000001;
-public static final int LPD_STEREO              = 0x00000002;
-public static final int LPD_SUPPORT_GDI         = 0x00000010;
-public static final int LPD_SUPPORT_OPENGL      = 0x00000020;
-public static final int LPD_SHARE_DEPTH         = 0x00000040;
-public static final int LPD_SHARE_STENCIL       = 0x00000080;
-public static final int LPD_SHARE_ACCUM         = 0x00000100;
-public static final int LPD_SWAP_EXCHANGE       = 0x00000200;
-public static final int LPD_SWAP_COPY           = 0x00000400;
-public static final int LPD_TRANSPARENT         = 0x00001000;
-
-public static final int LPD_TYPE_RGBA        = 0;
-public static final int LPD_TYPE_COLORINDEX  = 1;
-
-/* wglSwapLayerBuffers flags */
-public static final int WGL_SWAP_MAIN_PLANE     = 0x00000001;
-public static final int WGL_SWAP_OVERLAY1       = 0x00000002;
-public static final int WGL_SWAP_OVERLAY2       = 0x00000004;
-public static final int WGL_SWAP_OVERLAY3       = 0x00000008;
-public static final int WGL_SWAP_OVERLAY4       = 0x00000010;
-public static final int WGL_SWAP_OVERLAY5       = 0x00000020;
-public static final int WGL_SWAP_OVERLAY6       = 0x00000040;
-public static final int WGL_SWAP_OVERLAY7       = 0x00000080;
-public static final int WGL_SWAP_OVERLAY8       = 0x00000100;
-public static final int WGL_SWAP_OVERLAY9       = 0x00000200;
-public static final int WGL_SWAP_OVERLAY10      = 0x00000400;
-public static final int WGL_SWAP_OVERLAY11      = 0x00000800;
-public static final int WGL_SWAP_OVERLAY12      = 0x00001000;
-public static final int WGL_SWAP_OVERLAY13      = 0x00002000;
-public static final int WGL_SWAP_OVERLAY14      = 0x00004000;
-public static final int WGL_SWAP_OVERLAY15      = 0x00008000;
-public static final int WGL_SWAP_UNDERLAY1      = 0x00010000;
-public static final int WGL_SWAP_UNDERLAY2      = 0x00020000;
-public static final int WGL_SWAP_UNDERLAY3      = 0x00040000;
-public static final int WGL_SWAP_UNDERLAY4      = 0x00080000;
-public static final int WGL_SWAP_UNDERLAY5      = 0x00100000;
-public static final int WGL_SWAP_UNDERLAY6      = 0x00200000;
-public static final int WGL_SWAP_UNDERLAY7      = 0x00400000;
-public static final int WGL_SWAP_UNDERLAY8      = 0x00800000;
-public static final int WGL_SWAP_UNDERLAY9      = 0x01000000;
-public static final int WGL_SWAP_UNDERLAY10     = 0x02000000;
-public static final int WGL_SWAP_UNDERLAY11     = 0x04000000;
-public static final int WGL_SWAP_UNDERLAY12     = 0x08000000;
-public static final int WGL_SWAP_UNDERLAY13     = 0x10000000;
-public static final int WGL_SWAP_UNDERLAY14     = 0x20000000;
-public static final int WGL_SWAP_UNDERLAY15     = 0x40000000;
-
-/* pixel types */
-public static final int PFD_TYPE_RGBA        = 0;
-public static final int PFD_TYPE_COLORINDEX  = 1;
-
-/* layer types */
-public static final int PFD_MAIN_PLANE       = 0;
-public static final int PFD_OVERLAY_PLANE    = 1;
-public static final int PFD_UNDERLAY_PLANE   = (-1);
-
-/* PIXELFORMATDESCRIPTOR flags */
-public static final int PFD_DOUBLEBUFFER            = 0x00000001;
-public static final int PFD_STEREO                  = 0x00000002;
-public static final int PFD_DRAW_TO_WINDOW          = 0x00000004;
-public static final int PFD_DRAW_TO_BITMAP          = 0x00000008;
-public static final int PFD_SUPPORT_GDI             = 0x00000010;
-public static final int PFD_SUPPORT_OPENGL          = 0x00000020;
-public static final int PFD_GENERIC_FORMAT          = 0x00000040;
-public static final int PFD_NEED_PALETTE            = 0x00000080;
-public static final int PFD_NEED_SYSTEM_PALETTE     = 0x00000100;
-public static final int PFD_SWAP_EXCHANGE           = 0x00000200;
-public static final int PFD_SWAP_COPY               = 0x00000400;
-public static final int PFD_SWAP_LAYER_BUFFERS      = 0x00000800;
-public static final int PFD_GENERIC_ACCELERATED     = 0x00001000;
-public static final int PFD_SUPPORT_DIRECTDRAW      = 0x00002000;
-
-/* PIXELFORMATDESCRIPTOR flags for use in ChoosePixelFormat only */
-public static final int PFD_DEPTH_DONTCARE          = 0x20000000;
-public static final int PFD_DOUBLEBUFFER_DONTCARE   = 0x40000000;
-public static final int PFD_STEREO_DONTCARE         = 0x80000000;
-
-public static final native int ChoosePixelFormat(int hdc, PIXELFORMATDESCRIPTOR ppfd);
-public static final native int DescribePixelFormat(int hdc, int iPixelFormat, int nBytes, PIXELFORMATDESCRIPTOR ppfd);
-public static final native int GetPixelFormat(int hdc);
-public static final native boolean SetPixelFormat(int hdc, int iPixelFormat, PIXELFORMATDESCRIPTOR ppfd);
-public static final native boolean SwapBuffers(int hdc);
-public static final native boolean wglCopyContext(int hglrcSrc, int hglrcDst, int mask);
-public static final native int wglCreateContext(int hdc);
-public static final native int wglCreateLayerContext(int hdc, int iLayerPlane);
-public static final native boolean wglDeleteContext(int hglrc);
-public static final native int wglGetCurrentContext();
-public static final native int wglGetCurrentDC();
-public static final native int wglGetProcAddress(byte[] lpszProc);
-public static final native boolean wglMakeCurrent(int hdc, int hglrc);
-public static final native boolean wglShareLists(int hglrc1, int hglrc2);
-public static final native boolean wglUseFontBitmapsA(int hdc, int first, int count, int listBase);
-public static final native boolean wglUseFontBitmapsW(int hdc, int first, int count, int listBase);
-public static final boolean wglUseFontBitmaps(int hdc, int first, int count, int listBase) {
-	if (OS.IsUnicode) return wglUseFontBitmapsW(hdc, first, count, listBase);
-	return wglUseFontBitmapsA(hdc, first, count, listBase);
-}
-public static final native boolean wglUseFontOutlinesA(int hdc, int first, int count, int listBase, float deviation, float extrusion, int format, int lpgmf);
-public static final native boolean wglUseFontOutlinesW(int hdc, int first, int count, int listBase, float deviation, float extrusion, int format, int lpgmf);
-public static final boolean wglUseFontOutlines(int hdc, int first, int count, int listBase, float deviation, float extrusion, int format, int lpgmf) {
-	if (OS.IsUnicode) return wglUseFontOutlinesW(hdc, first, count, listBase, deviation, extrusion, format, lpgmf);
-	return wglUseFontOutlinesA(hdc, first, count, listBase, deviation, extrusion, format, lpgmf);
-}
-public static final native boolean wglDescribeLayerPlane(int hdc, int iPixelFormat, int iLayerPlane, int nBytes, LAYERPLANEDESCRIPTOR plpd);
-public static final native int wglSetLayerPaletteEntries(int hdc, int iLayerPlane, int iStart, int cEntries, int[] pcr);
-public static final native int wglGetLayerPaletteEntries(int hdc, int iLayerPlane, int iStart, int cEntries, int[] pcr);
-public static final native boolean wglRealizeLayerPalette(int hdc, int iLayerPlane, boolean bRealize);
-public static final native boolean wglSwapLayerBuffers(int hdc, int fuPlanes);
-public static final void MoveMemory (GLYPHMETRICSFLOAT Destination, int Source, int Length) {
-	if (OS.IsUnicode) MoveMemoryW (Destination, Source, Length);
-	else MoveMemoryA(Destination, Source, Length);
-}
-public static final native void MoveMemoryA (GLYPHMETRICSFLOAT Destination, int Source, int Length);
-public static final native void MoveMemoryW (GLYPHMETRICSFLOAT Destination, int Source, int Length);
-}
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/widgets/Synchronizer.java b/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/widgets/Synchronizer.java
index 2027345..bce7668 100755
--- a/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/widgets/Synchronizer.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/widgets/Synchronizer.java
@@ -43,6 +43,7 @@
 }
 	
 void addLast (RunnableLock lock) {
+	boolean wake = false;
 	synchronized (messageLock) {
 		if (messages == null) messages = new RunnableLock [4];
 		if (messageCount == messages.length) {
@@ -51,8 +52,9 @@
 			messages = newMessages;
 		}
 		messages [messageCount++] = lock;
-		if (messageCount == 1) display.wakeThread ();
-	}
+		wake = messageCount == 1;
+	}	
+	if (wake) display.wakeThread ();
 }
 
 /**
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java
index c6ca0e4..8cbcf89 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java
@@ -914,7 +914,6 @@
  */
 public void remove (String string) {
 	checkWidget();
-	if (string == null) error (SWT.ERROR_NULL_ARGUMENT);
 	int index = indexOf (string, 0);
 	if (index == -1) error (SWT.ERROR_INVALID_ARGUMENT);
 	remove (index);
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/List.java b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/List.java
index 257052b..a335806 100755
--- a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/List.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/List.java
@@ -883,7 +883,6 @@
  */
 public void remove (String string) {
 	checkWidget ();
-	if (string == null) error (SWT.ERROR_NULL_ARGUMENT);
 	int index = indexOf (string, 0);
 	if (index == -1) error (SWT.ERROR_INVALID_ARGUMENT);
 	remove (index);
diff --git a/examples/org.eclipse.swt.examples.browser.demos/.classpath b/examples/org.eclipse.swt.examples.browser.demos/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.examples.browser.demos/.project b/examples/org.eclipse.swt.examples.browser.demos/.project
deleted file mode 100644
index db0b47d..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples.BrowserDemo</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.examples.browser.demos/about.html b/examples/org.eclipse.swt.examples.browser.demos/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser.demos/build.properties b/examples/org.eclipse.swt.examples.browser.demos/build.properties
deleted file mode 100644
index bf2a825..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/build.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-source.BrowserDemo.jar = src/
-output.BrowserDemo.jar = bin/
-bin.includes = doc-html/,\
-			   plugin.properties,\
-			   plugin.xml,\
-			   about.html,\
-               BrowserDemo.jar,\
-               css1/,\
-               css2/,\
-               icons/
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/back1.jpg b/examples/org.eclipse.swt.examples.browser.demos/css1/back1.jpg
deleted file mode 100644
index bab9f33..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/back1.jpg
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/back2.jpg b/examples/org.eclipse.swt.examples.browser.demos/css1/back2.jpg
deleted file mode 100644
index 83f68de..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/back2.jpg
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/black.gif b/examples/org.eclipse.swt.examples.browser.demos/css1/black.gif
deleted file mode 100644
index 976c1e9..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/black.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/board1.jpg b/examples/org.eclipse.swt.examples.browser.demos/css1/board1.jpg
deleted file mode 100644
index 0cc4d5e..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/board1.jpg
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/empty.gif b/examples/org.eclipse.swt.examples.browser.demos/css1/empty.gif
deleted file mode 100644
index a6bce4d..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/empty.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/line1.gif b/examples/org.eclipse.swt.examples.browser.demos/css1/line1.gif
deleted file mode 100644
index f9a0f34..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/line1.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/style.css b/examples/org.eclipse.swt.examples.browser.demos/css1/style.css
deleted file mode 100644
index 7b36fa9..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/style.css
+++ /dev/null
@@ -1,30 +0,0 @@
-body {background: url(./back2.jpg) fixed; font-size: 10pt; font-family:Verdana, Arial, Helv, Helvetica, sans-serif;}

-h1 {text-align: center; font-size: 14pt; font-family: Verdana, Arial, Helv, Helvetica, sans-serif;}

-h2 {background: url(./line1.gif) no-repeat right bottom; font-size: 12pt; font-family:Verdana, Arial, Helv, Helvetica, sans-serif;}

-h3 {font-size: 10pt; font-family:Verdana, Arial, Helv, Helvetica, sans-serif;}

-

-ul {list-style: none; padding: 0; margin:0; font: 12pt Times;}

-li.white {background: url(./white.gif) no-repeat; padding: 3px 0 32px 64px; margin: 0;}

-li.black {background: url(./black.gif) no-repeat; padding: 3px 0 32px 64px; margin: 0;}

-li.wall {background: url(./wall.gif) no-repeat; padding: 3px 0 32px 64px; margin: 0;}

-

-.board {text-align: center;}

-table { border-collapse: collapse; margin: 0;}

-tr {}

-td {height: 32px; width:32px; table-layout: fixed;}

-

-.whitelink a {display: block; background: url(./empty.gif) no-repeat; width:32px; height:32px;}

-.blacklink a {display: block; background: url(./empty.gif) no-repeat; width:32px; height:32px;}

-.empty {display: block; background: url(./empty.gif) no-repeat; width:32px; height:32px;}

-

-.whitelink a:hover {display: block; background: url(./white.gif) no-repeat; width:32px; height:32px;}

-.blacklink a:hover {display: block; background: url(./black.gif) no-repeat; width:32px; height:32px;}

-.white {background: url(./white.gif) no-repeat;}

-.black {background: url(./black.gif) no-repeat;}

-.wall {background: url(./wall.gif) no-repeat;}

-

-.playerwhite {float: left; margin: 1em 1em; border: 1px solid gray; background: url(./white.gif) no-repeat; text-align: right; width:100px; height:32px;}

-.playerblack {float: right; margin: 1em 1em; border: 1px solid gray; background: url(./black.gif) no-repeat; text-align: right; width:100px; height:32px;}

-

-.winner {border: 4px solid blue; font: bold 16pt Times, serif;}

-.loser {border: 1px solid black; font: 12pt Times, serif;}

diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/wall.gif b/examples/org.eclipse.swt.examples.browser.demos/css1/wall.gif
deleted file mode 100644
index fb97fc1..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/wall.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/welcome.html b/examples/org.eclipse.swt.examples.browser.demos/css1/welcome.html
deleted file mode 100644
index 1e85ae6..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/welcome.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<html>
-<head>
-	<title>Start a game</title>
-	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
-	<link rel="stylesheet" type="text/css" href="./style.css">
-</head>
-<body>
-<h1>Pawns Game</h1>
-<div class="start">
-<a class="start" href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actionstart1player">1 player</a>
-<a class="start" href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actionstart2players">2 players</a>
-</div>
-<h2>How to play</h2>
-This board game is a variant of Reversi and Tic Tac Toe. Each one of the two players sets a pawn on an empty cell of the board.
-<h3>Pawns</h3>
-<ul>
-<li class="white">Player 1</li>
-<li class="black">Player 2</li>
-<li class="wall">Wall. Cannot be reversed.</li>
-</ul>
-<div class="theme">
-Different themes are supported. Theme is configured through a Cascading Style Sheet (CSS) that determines how the HTML content is rendered by the SWT Browser widget.
-<ul class="theme">
-<li><a href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actiontheme/css1">Theme 1</a></li>
-<li><a href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actiontheme/css2">Theme 2</a></li>
-</ul>
-
-</div>
-<h2>How to win</h2>
-The game ends when all cells are filled. The winner is the one with most pawns of their colour. 
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css1/white.gif b/examples/org.eclipse.swt.examples.browser.demos/css1/white.gif
deleted file mode 100644
index c43fd96..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css1/white.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/back2.png b/examples/org.eclipse.swt.examples.browser.demos/css2/back2.png
deleted file mode 100644
index 6c49d9f..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/back2.png
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/black.png b/examples/org.eclipse.swt.examples.browser.demos/css2/black.png
deleted file mode 100644
index ad466cf..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/black.png
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/empty.png b/examples/org.eclipse.swt.examples.browser.demos/css2/empty.png
deleted file mode 100644
index d6ed8e0..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/empty.png
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/line1.gif b/examples/org.eclipse.swt.examples.browser.demos/css2/line1.gif
deleted file mode 100644
index f9a0f34..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/line1.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/style.css b/examples/org.eclipse.swt.examples.browser.demos/css2/style.css
deleted file mode 100644
index 2c63d36..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/style.css
+++ /dev/null
@@ -1,30 +0,0 @@
-body {background: url(./back2.png) fixed; font-size: 10pt; font-family:Verdana, Arial, Helv, Helvetica, sans-serif;}

-h1 {text-align: center; font-size: 14pt; font-family: Verdana, Arial, Helv, Helvetica, sans-serif;}

-h2 {background: url(./line1.gif) no-repeat right bottom; font-size: 12pt; font-family:Verdana, Arial, Helv, Helvetica, sans-serif;}

-h3 {font-size: 10pt; font-family:Verdana, Arial, Helv, Helvetica, sans-serif;}

-

-ul {list-style: none; padding: 0; margin:0; font: 12pt Times;}

-li.white {background: url(./white.png) no-repeat; padding: 3px 0 32px 64px; margin: 0;}

-li.black {background: url(./black.png) no-repeat; padding: 3px 0 32px 64px; margin: 0;}

-li.wall {background: url(./wall.png) no-repeat; padding: 3px 0 32px 64px; margin: 0;}

-

-.board {text-align: left;}

-table { border-collapse: collapse; margin: 0; padding:0}

-tr {}

-td {height:48px; width:48px; table-layout: fixed;}

-

-.whitelink a {display: block; background: url(./empty.png) no-repeat; width:48px; height:48px;}

-.blacklink a {display: block; background: url(./empty.png) no-repeat; width:48px; height:48px;}

-.empty {display: block; background: url(./empty.png) no-repeat; width:48px; height:48px;}

-

-.whitelink a:hover {display: block; background: url(./white.png) no-repeat; width:48px; height:48px;}

-.blacklink a:hover {display: block; background: url(./black.png) no-repeat; width:48px; height:48px;}

-.white {background: url(./white.png) no-repeat;}

-.black {background: url(./black.png) no-repeat;}

-.wall {background: url(./wall.png) no-repeat;}

-

-.playerwhite {position: absolute; top: 50px; right:10px; margin: 1em 10px; border: 3px solid yellow; background: url(./white.png) no-repeat right; text-align: left; width:100px; height:48px; font: 36pt Times, serif;}

-.playerblack {position: absolute; top: 300px; right:10px; margin: 1em 10px; border: 3px solid yellow; background: url(./black.png) no-repeat right; text-align: left; width:100px; height:48px; font: 36pt Times, serif;}

-

-.winner {border: 4px solid blue; font: bold 16pt Times, serif;}

-.loser {border: 1px solid black; font: 12pt Times, serif;}

diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/wall.png b/examples/org.eclipse.swt.examples.browser.demos/css2/wall.png
deleted file mode 100644
index a38a12c..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/wall.png
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/welcome.html b/examples/org.eclipse.swt.examples.browser.demos/css2/welcome.html
deleted file mode 100644
index 1e85ae6..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/welcome.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<html>
-<head>
-	<title>Start a game</title>
-	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
-	<link rel="stylesheet" type="text/css" href="./style.css">
-</head>
-<body>
-<h1>Pawns Game</h1>
-<div class="start">
-<a class="start" href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actionstart1player">1 player</a>
-<a class="start" href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actionstart2players">2 players</a>
-</div>
-<h2>How to play</h2>
-This board game is a variant of Reversi and Tic Tac Toe. Each one of the two players sets a pawn on an empty cell of the board.
-<h3>Pawns</h3>
-<ul>
-<li class="white">Player 1</li>
-<li class="black">Player 2</li>
-<li class="wall">Wall. Cannot be reversed.</li>
-</ul>
-<div class="theme">
-Different themes are supported. Theme is configured through a Cascading Style Sheet (CSS) that determines how the HTML content is rendered by the SWT Browser widget.
-<ul class="theme">
-<li><a href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actiontheme/css1">Theme 1</a></li>
-<li><a href="http://www.org.eclipse.swt.examples.browser.demos.pawns/actiontheme/css2">Theme 2</a></li>
-</ul>
-
-</div>
-<h2>How to win</h2>
-The game ends when all cells are filled. The winner is the one with most pawns of their colour. 
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser.demos/css2/white.png b/examples/org.eclipse.swt.examples.browser.demos/css2/white.png
deleted file mode 100644
index 9d28855..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/css2/white.png
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/doc-html/hglegal.htm b/examples/org.eclipse.swt.examples.browser.demos/doc-html/hglegal.htm
deleted file mode 100644
index 6211156..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/doc-html/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <LINK REL="stylesheet" HREF="../../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-  <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2004 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.browser.demos/doc-html/ngibmcpy.gif b/examples/org.eclipse.swt.examples.browser.demos/doc-html/ngibmcpy.gif
deleted file mode 100644
index c786e43..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/doc-html/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/doc-html/swt_browser_ex.html b/examples/org.eclipse.swt.examples.browser.demos/doc-html/swt_browser_ex.html
deleted file mode 100644
index 6eb3301..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/doc-html/swt_browser_ex.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - Controls Overview</title>
-</head>
-<body>
-
-<h2>SWT example - Browser Demos</h2>
-
-<p>
-The Browser Demos demonstrate various features of the SWT Browser widget. 
-<li>The Pawns Game is a board game that can be played against the computer
-or against another player. Rendering is based on HTML and CSS techniques. The
-board is a table filled with hyperlinks. Cascading Style Sheets
-provide various themes and control the table aesthetic appearance.
-The API <code>org.eclipse.swt.browser.Browser.setText(java.lang.String)</code> draws
-the board game from HTML generated in memory.
-Player moves are captured by implementing the interface <code>org.eclipse.swt.browser.LocationListener</code>.
-e.g the player clicks on a cell that may generate an hyperlink with a URL similar to
-http://www.org.eclipse.swt.examples.browser.demos/xx1yy2. That hyperlink identifies
-the position of the cell selected by the player. The move is completed by generating
-new HTML content and invoking <code>Browser.setText</code> to update the board game.
-</p>
-
-<h3>Running the example</h3>
-<p>
-Follow the <a href="../../org.eclipse.swt.examples/doc-html/swt_manual_setup.html">SWT standalone examples setup</a> 
-instructions to install and run the example from your workspace.
-</p>
-<p>
-The "Main" class is <code>org.eclipse.swt.examples.browser.demos.BrowserDemoView</code>.
-</p>
-<p>
-This example can also be run using the <a href="../../org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html">Example Launcher</a>.
-Select the <strong>Browser Demo</strong> item from the <strong>Workbench Views</strong> category and click <strong>Run</strong>.
-</p>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.browser.demos/icons/sample.gif b/examples/org.eclipse.swt.examples.browser.demos/icons/sample.gif
deleted file mode 100644
index 34fb3c9..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/icons/sample.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser.demos/plugin.properties b/examples/org.eclipse.swt.examples.browser.demos/plugin.properties
deleted file mode 100644
index 99a8ef4..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/plugin.properties
+++ /dev/null
@@ -1,31 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-providerName = Eclipse.org
-plugin.SWTBrowserDemos.name = SWT Browser Demos Plugin
-category.SWTExamples.name = SWT Examples
-view.BrowserDemos.name = Browser Demo
-
-launchcategory.SWTViewExamples.name = Workbench Views
-launchcategory.SWTViewExamples.description = \
-	A collection of Standard Widget Toolkit examples that run as Views inside the Workbench.  \
-	These examples will create a new View in the current Perspective.
-
-launchitem.BrowserDemos.name = Browser Demo
-launchitem.BrowserDemos.description = \
-	The example illustrates how to use the SWT Browser widget for HTML rendering.\n\n\
-	The Pawns Game is a board game that can be played against the computer or against another player.\n\n\
-	Rendering is based on HTML and CSS techniques. The board is a table filled with hyperlinks. Cascading Style Sheets \
-	provide various themes and control the table aesthetic appearance. \n\
-	The API org.eclipse.swt.browser.Browser.setText(java.lang.String) draws the board game from HTML generated in memory.\n\
-	Player moves are captured by implementing the interface org.eclipse.swt.browser.LocationListener. e.g the player clicks \
-	on a cell that defines an hyperlink with a URL http://www.org.eclipse.swt.examples.browser.demos/xx1yy2.\
-	That hyperlink identifies the position of the cell selected by the player. The move is completed by generating \
-	new HTML content and invoking Browser.setText to update the board game.
diff --git a/examples/org.eclipse.swt.examples.browser.demos/plugin.xml b/examples/org.eclipse.swt.examples.browser.demos/plugin.xml
deleted file mode 100644
index 3ef59e5..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/plugin.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.swt.examples.browser.demos"
-   name="%plugin.SWTBrowserDemos.name"
-   version="3.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.swt.examples.browser.demos.BrowserDemoPlugin">
-
-   <runtime>
-      <library name="BrowserDemo.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-
-   <requires>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.core.runtime"/>
-   </requires>
-
-   <extension
-         point="org.eclipse.ui.views">
-      <category
-            name="%view.BrowserDemos.name"
-            id="org.eclipse.swt.examples.browser.demos.BrowserDemo">
-      </category>
-      <view
-            allowMultiple="false"
-            class="org.eclipse.swt.examples.browser.demos.views.BrowserDemoView"
-            icon="icons/sample.gif"
-            category="org.eclipse.swt.examples.category"
-            name="Browser Demo"
-            id="org.eclipse.swt.examples.browser.demos.views.BrowserDemoView">
-      </view>
-   </extension>
-   
-   <extension
-         point="org.eclipse.swt.examples.launcher.launchItems">
-      <category
-            name="%launchcategory.SWTViewExamples.name"
-            description="%launchcategory.SWTViewExamples.description"
-            id="org.eclipse.swt.examples.launchViewCategory">
-      </category>
-      <item
-            name="%launchitem.BrowserDemos.name"
-            icon="icons/sample.gif"
-            category="org.eclipse.swt.examples.launchViewCategory"
-            description="%launchitem.BrowserDemos.description"
-            id="org.eclipse.swt.examples.browserdemos.viewlauncher">
-         <view
-               viewId="org.eclipse.swt.examples.browser.demos.views.BrowserDemoView">
-         </view>
-      </item>
-   </extension>
-</plugin>
diff --git a/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/BrowserDemoPlugin.java b/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/BrowserDemoPlugin.java
deleted file mode 100644
index 5eb8805..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/BrowserDemoPlugin.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package org.eclipse.swt.examples.browser.demos;
-
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.BundleContext;
-import java.util.*;
-import org.eclipse.core.runtime.*;
-
-public class BrowserDemoPlugin extends AbstractUIPlugin {
-
-	public static BrowserDemoPlugin plugin;
-	ResourceBundle resourceBundle;
-	public static String PLUGIN_PATH = null;
-	
-	public BrowserDemoPlugin() {
-		super();
-		plugin = this;
-		try {
-			resourceBundle = ResourceBundle.getBundle("org.eclipse.swt.examples.browser.demos.BrowserDemoPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		PLUGIN_PATH = Platform.resolve(plugin.getBundle().getEntry(".")).toString();
-	}
-
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-	}
-
-	public static BrowserDemoPlugin getDefault() {
-		return plugin;
-	}
-
-	public static String getResourceString(String key) {
-		ResourceBundle bundle = BrowserDemoPlugin.getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}	
-}
diff --git a/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/Pawns.java b/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/Pawns.java
deleted file mode 100644
index cb08f32..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/Pawns.java
+++ /dev/null
@@ -1,222 +0,0 @@
-package org.eclipse.swt.examples.browser.demos;
-
-public class Pawns {
-
-	/* Current board representation in compacted form */
-	byte[] game = new byte[64];
-	/* Best move */
-	int bestIndex = -1;
-	/* Related best score */
-	int bestScore = Integer.MIN_VALUE;
-	/* Estimated strategic value of each cell based on proximity to walls */
-	static int[] gameWallWeight = new int[64];
-	Thread thread = null;
-	boolean threadStop = false;
-	
-	final static byte EMPTY = 0;
-	final static byte WHITE = 1;
-	final static byte BLACK = 2;
-	final static byte WALL = 3;
-	
-public Pawns() {
-}
-
-/* Provide the current game and ignitiate the search of the best move for the given type
- * Must return immediately as it will be called from the UI thread.
- * The UI thread will fetch the best move any time thereafter.
- */
-public void playRequest(byte[][] game, int type) {
-	threadStop = true;
-	synchronized (this) {
-		bestIndex = -1;
-		bestScore = Integer.MIN_VALUE;
-		convert(game, this.game);
-		initPawnBorders(this.game, gameWallWeight);
-		/* Quickly compute a legal move */
-		for (int i = 0; i < this.game.length; i++) {
-			if (this.game[i] == EMPTY) {
-				bestIndex = i;
-				break;
-			}
-		}
-		new Thread() {
-			public void run() {
-				synchronized(Pawns.this) {
-					threadStop = false;
-					int[] result = new int[2];
-					/* if long time, must check for threadStop and exit early */ 
-					evalBest(Pawns.this.game, BLACK, 2, result);
-					bestIndex = result[0];
-					bestScore = result[1];
-				}
-			}
-		}.start();
-	}
-}
-
-/* Fetch best move in natural coordinates for the board previously given in
- * the call to playRequest.
- */
-public void getBestMove(int[] point) {
-	convert(bestIndex, point);
-	threadStop = true;
-}
-
-/* Given an expanded representation of the board, format internal compact mode */
-static void convert(byte[][] board, byte[] g) {
-	for (int i = 0; i < board.length; i++) System.arraycopy(board[i], 0, g, i * 8, 8);
-}
-/* Update given compact model based on player move in natural coordinates */
-static void set(byte[] g, int x, int y, byte type) {
-	g[x*8+y] = type;
-}
-/* Given an index in compact representation, return natural coordinates */
-static void convert(int index, /*out [0] x [1] y */int[] point) {
-	point[0] = index / 8;
-	point[1] = index % 8;
-}
-/* Given an index into the compact model and the neighbour code,
- * return the index of the corresponding neighbour index.
- * Returns -1 if there is no neighbour.
- * 
- * Neighbour code for the index X
- * 0 1 2
- * 3 X 4
- * 5 6 7 
- */
-static int getNeighbourIndex(byte[] g, int index, int neighbour) {
-	if (index < 0 || index >= g.length) return -1;
-	int result = -1;
-	switch (neighbour) {
-		case 0: result = index < 8 || index % 8 == 0 ? -1 : index - 9; break;
-		case 1: result = index < 8 ? -1 : index - 8; break;
-		case 2: result = index < 8 || index % 8 == 7 ? -1 : index - 7; break;
-		case 3: result = index % 8 == 0 ? -1 : index - 1; break;
-		case 4: result = index % 8 == 7 ? -1 : index + 1; break;
-		case 5: result = index % 8 == 0 || index >= 56 ? -1 : index + 7; break;
-		case 6: result = index >= 56 ? -1 : index + 8; break;
-		case 7: result = index % 8 == 7 || index >= 56 ? -1 : index + 9; break;
-	}
-	return result;
-}
-/* Make the player type play at index on given compact board 
- * Compute all pawns that must be reversed.
- */
-static void play(byte[] g, int index, byte type) {
-	byte opponentType = type == WHITE ? BLACK : WHITE;
-	for (int neighbour = 0; neighbour <= 7; neighbour++) {
-		int nIndex = getNeighbourIndex(g, index, neighbour);
-		int[] reversiIndeces = new int[6];
-		int nReversi = 0;
-		while (nIndex != -1 && nReversi < 6 && g[nIndex] == opponentType) {
-			reversiIndeces[nReversi] = nIndex;
-			nReversi++;
-			nIndex = getNeighbourIndex(g, nIndex, neighbour);			
-		}
-		if (nReversi > 0 && nIndex != -1 && g[nIndex] == type) {
-			for (int i = 0; i < nReversi; i++) g[reversiIndeces[i]] = type;
-		}
-	}
-	g[index] = type;
-}
-/* Evaluate the given compact model based on pawns distribution 
- * High means white has advantage. Below zero means black has advantage.
- */
-static int eval(byte[] g) {
-	int cntWhite = 0, cntBlack = 0, cntEmpty = 0;
-	int cntWhiteWallAdvantage = 0, cntBlackWallAdvantage = 0;
-	for (int i = 0; i < 64; i++) {
-		if (g[i] == WHITE) {
-			cntWhite++;
-			cntWhiteWallAdvantage += gameWallWeight[i];
-		}
-		else if (g[i] == BLACK) {
-			cntBlack++;
-			cntBlackWallAdvantage += gameWallWeight[i];
-		}
-		else if (g[i] == EMPTY) cntEmpty++;
-	}
-	if (cntEmpty == 0) {
-		if (cntWhite > cntBlack) return Integer.MAX_VALUE; /* White wins */
-		if (cntWhite < cntBlack) return Integer.MIN_VALUE; /* Black wins */
-		return 0; /* Stalemate */
-	}
-	return cntWhite + cntWhiteWallAdvantage - cntBlack - cntBlackWallAdvantage;
-}
-
-/* Recognize pawns protected by walls or borders 
- * TBD - note this should be called only once for each cell and stored
- * in a separate byte[] gWallGain
- * */
-static void initPawnBorders(byte[] g, int[] gameWallWeight) {
-	/* A pawn has 8 neighbours on 4 axes.
-	 * Strategic pawns have one side of each axis protected by a wall and the other
-	 * side not closed by a wall.
-	 * A pawn cannot be reversed when each of its 4 axes are protected by a wall on
-	 * one side. Pawns that have more than 4 walls are less interesting since they
-	 * are not open enough to the board.
-	 * 
-	 * Nbr walls, nbr axis covered, estimated value
-	 * 0 n/a 0
-	 * 1 1 2
-	 * 2 1 1
-	 * 2 2 6
-	 * 3 2 4
-	 * 4 2 2
-	 * 3 3 9
-	 * 4 3 8
-	 * 4 4 16
-	 * 5 4 14
-	 * 6 4 9
-	 * 7 4 6
-	 * 8 4 0
-	 */
-	int[] nTypes = new int[8];
-	for (int i = 0; i < 64; i++) {
-		int nWalls = 0;
-		int nAxis = 0;
-		for (int n = 0; n < 8; n++) {
-			int nIndex = getNeighbourIndex(g, i, n);
-			nTypes[n] = nIndex != -1 ? g[nIndex] : WALL;
-			if (nTypes[n] == WALL) nWalls++;
-		}
-		int score = nWalls;
-		if (nWalls > 0) {
-			if (nTypes[0] == WALL || nTypes[7] == WALL) nAxis++;
-			if (nTypes[1] == WALL || nTypes[6] == WALL) nAxis++;
-			if (nTypes[2] == WALL || nTypes[5] == WALL) nAxis++;
-			if (nTypes[4] == WALL || nTypes[3] == WALL) nAxis++;
-			switch (nAxis) {
-				case 4: switch (nWalls) { case 4: score = 16; break; case 5: score = 14; break; case 6: score = 9; case 7: score = 6; break; case 8: score = 0; break;}; break;
-				case 3: switch (nWalls) { case 3: score = 9; break; case 4: score = 8;}; break;
-				case 2: switch (nWalls) { case 2: score = 6; break; case 3: score = 4; break; case 4: score = 2; }; break;
-				case 1: switch (nWalls) { case 1: score = 2; break; case 2: score = 1; break;}; break;
-			};
-		}
-		gameWallWeight[i] = score;
-	}
-}
-
-/* Evaluate the best move for player type for the given board, doing a depth 1 search */
-static void evalBest(byte[] g, byte type, int depth, /* out [0] best move, [1] minimax */int[] result) {
-	byte[] tmp = new byte[64];
-	byte opponentType = type == WHITE ? BLACK : WHITE;
-	result[0] = -1; result[1] = Integer.MIN_VALUE;
-	for (int i = 0; i < 64; i++) {
-		if (g[i] == EMPTY) {
-			System.arraycopy(g, 0, tmp, 0, 64);
-			play(tmp, i, type);
-			int score = eval(tmp);
-			if (depth > 1) {
-				int[] tmpResult = new int[2];
-				evalBest(tmp, opponentType, depth - 1, tmpResult);
-				score = tmpResult[1];
-			}
-			if ((type == WHITE && score > result[1]) || (type == BLACK && score < result[1]) || result[0] == -1) {
-				result[0] = i;
-				result[1] = score;
-			}
-		}
-	}
-}
-}
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/views/BrowserDemoView.java b/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/views/BrowserDemoView.java
deleted file mode 100644
index 58a73ee..0000000
--- a/examples/org.eclipse.swt.examples.browser.demos/src/org/eclipse/swt/examples/browser/demos/views/BrowserDemoView.java
+++ /dev/null
@@ -1,238 +0,0 @@
-package org.eclipse.swt.examples.browser.demos.views;
-
-import org.eclipse.ui.part.*;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.swt.*;
-import org.eclipse.swt.browser.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.examples.browser.demos.*;
-
-public class BrowserDemoView extends ViewPart {
-	Browser browser = null;
-	ReversiListener reversiListener;
-
-	final static int TYPE_WELCOME = 1;
-	final static int TYPE_START = 2;
-	final static int TYPE_BOARD = 3;
-	final static int TYPE_BOARD_OVER = 4;
-
-	final static String URL = "http://www.org.eclipse.swt.examples.browser.demos.pawns/";
-	static String PLUGIN_PATH = BrowserDemoPlugin.PLUGIN_PATH;
-	static String CSS_FOLDER = "css1";
-	static String URL_CSS = PLUGIN_PATH+CSS_FOLDER+"/style.css";
-	static String URL_WELCOME =PLUGIN_PATH+CSS_FOLDER+"/welcome.html";
-
-	final static String ACTION_START_2_PLAYERS = "actionstart2players";
-	final static String ACTION_START_1_PLAYER = "actionstart1player";
-	final static String ACTION_WHITE = "actionwhite";
-	final static String ACTION_BLACK = "actionblack";
-	final static String ACTION_THEME = "actiontheme";
-
-	static byte[][] game = null;
-	static boolean isWhite = true;
-	static int cntWhite = 0, cntBlack = 0;
-	static boolean computer = false;
-	static int cx, cy;
-	final static byte EMPTY = 0;
-	final static byte WHITE = 1;
-	final static byte BLACK = 2;
-	final static byte WALL = 3;
-	
-	static Pawns ttr = null;
-	static int[] move = new int[2];
-	
-	public BrowserDemoView() {
-	}
-	public void createPartControl(Composite parent) {
-		try {
-			browser = new Browser(parent, SWT.NONE);
-		} catch (SWTError e) {
-			e.printStackTrace();
-			return;
-		}
-		reversiListener = new ReversiListener();
-		browser.addLocationListener(reversiListener);
-		browser.setUrl(URL_WELCOME);
-
-	}
-	private void showMessage(String message) {
-		MessageDialog.openInformation(
-			browser.getShell(),
-			"Browser Demo",
-			message);
-	}
-	public void setFocus() {
-		browser.setFocus();
-	}
-	
-	static String getHtml(int type) {
-		String html = null;
-		switch (type) {
-		case TYPE_BOARD:
-		case TYPE_BOARD_OVER: {
-			html = "<html><header><link rel=\"stylesheet\" type=\"text/css\" href=\""+URL_CSS+"\"></header><body><div class=\"board\"><table><tbody>";
-			String classPlayerWhite = "playerwhite", classPlayerBlack = "playerblack";
-			if (type == TYPE_BOARD_OVER) {
-				if (cntWhite > cntBlack) {
-					classPlayerWhite += " winner";
-					classPlayerBlack += " loser";
-				} else {
-					classPlayerWhite += " loser";
-					classPlayerBlack += " winner";
-				}
-			}
-			String white = "<td class=\"white\"/>";
-			String black = "<td class=\"black\"/>";
-			String wall = "<td class=\"wall\"/>";
-			for (int i = 0; i < game.length; i++) {
-				html += "<tr>";
-				for (int j = 0; j < game[0].length; j++) {
-					switch (game[i][j]) {
-						case EMPTY: {
-							String empty = "<td class=\""+(isWhite ? "whitelink" : "blacklink")+"\">"+ (isWhite || (!isWhite && !computer) ? "<a href=\""+URL+(isWhite ? ACTION_WHITE : ACTION_BLACK)+"/xx"+i+"yy"+j+"\" class=\"empty\"/>" : "<div class=\"empty\"/>")+"</td>";
-							html += empty; break;
-						}
-						case WHITE: html += white; break;
-						case BLACK: html += black; break;
-						case WALL: html += wall; break;
-					}
-				}
-				html +="</tr>";
-			}
-			html += "</tbody></table></div>";
-			html += "<div class=\""+classPlayerWhite+"\">"+cntWhite+"</div>";
-			html += "<div class=\""+classPlayerBlack+"\">"+cntBlack+"</div>";
-			html += "</body></html>";
-			break;
-		}
-		}
-		return html;
-	}
-
-	public class ReversiListener implements LocationListener {
-		public void changed(LocationEvent e) {
-		}
-		public void changing(LocationEvent e) {
-			try {
-			final Browser browser = (Browser)e.widget;
-			if (e.location.indexOf(ACTION_START_1_PLAYER) != -1 || e.location.indexOf(ACTION_START_2_PLAYERS) != -1) {
-				computer = e.location.indexOf(ACTION_START_1_PLAYER) != -1;
-				game = new byte[8][8];
-				if (computer) ttr = new Pawns();
-				for (int i = 0; i < 5; i++) game[(int)(Math.random()*game.length)][(int)(Math.random()*game[0].length)] = WALL;
-				e.display.asyncExec(new Runnable() {
-					public void run() {
-						browser.setText(getHtml(TYPE_BOARD));
-				}});
-				e.doit = false;
-				return;
-			}
-			if (e.location.indexOf(ACTION_THEME) != -1) {
-				int index = e.location.indexOf(ACTION_THEME) + ACTION_THEME.length() + 1;
-				CSS_FOLDER = e.location.substring(index, index + 4);
-				URL_CSS = PLUGIN_PATH+CSS_FOLDER+"/style.css";
-				URL_WELCOME = PLUGIN_PATH+CSS_FOLDER+"/welcome.html";
-				e.display.asyncExec(new Runnable() {
-					public void run() {
-						browser.setUrl(URL_WELCOME);
-				}});
-				e.doit = false;
-				return;
-			}
-			byte player = EMPTY;
-			if (e.location.indexOf(ACTION_WHITE) != -1) player = WHITE;
-			else if (e.location.indexOf(ACTION_BLACK) != -1) player = BLACK;
-			if (player != EMPTY) {
-				int index = e.location.indexOf("xx") + 2;
-				int x = Integer.parseInt(e.location.substring(index, index + 1));
-				index = e.location.indexOf("yy") + 2;
-				int y = Integer.parseInt(e.location.substring(index, index + 1));
-				boolean hasMore = add(x, y, player);
-				isWhite = player != WHITE;
-				browser.setText(getHtml(hasMore ? TYPE_BOARD : TYPE_BOARD_OVER));
-				if (computer && hasMore && !isWhite) play(e.display, browser, 5000);
-				e.doit = false;
-			}
-			}catch (Exception e1 ) {
-				e1.printStackTrace();
-			}
-		}
-	}
-
-	public static boolean add(int x, int y, byte color) {
-		game[x][y] = color;
-		int cnt = Math.min(x, y), n = 0;
-		int other_color = color == WHITE ? BLACK : WHITE;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x-d][y-d] == other_color) n++;
-			else if (game[x-d][y-d] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x-d][y-d] = color; break; }
-		}
-		cnt = Math.min(game.length - 1 - x, game[0].length - 1 - y); n = 0;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x+d][y+d] == other_color) n++;
-			else if (game[x+d][y+d] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x+d][y+d] = color; break; }
-		}
-		cnt = Math.min(game.length - 1 - x, y); n = 0;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x+d][y-d] == other_color) n++;
-			else if (game[x+d][y-d] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x+d][y-d] = color; break; }
-		}
-		cnt = Math.min(x, game[0].length - 1 - y); n = 0;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x-d][y+d] == other_color) n++;
-			else if (game[x-d][y+d] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x-d][y+d] = color; break; }
-		}
-		cnt = y; n = 0;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x][y-d] == other_color) n++;
-			else if (game[x][y-d] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x][y-d] = color; break; }
-		}
-		cnt = game[0].length - 1 - y; n = 0;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x][y+d] == other_color) n++;
-			else if (game[x][y+d] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x][y+d] = color; break; }
-		}
-		cnt = x; n = 0;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x-d][y] == other_color) n++;
-			else if (game[x-d][y] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x-d][y] = color; break; }
-		}
-		cnt = game.length - 1 - x; n = 0;
-		for (int d = 1; d <= cnt; d++) {
-			if (game[x+d][y] == other_color) n++;
-			else if (game[x+d][y] != color) break;
-			else { if (n > 0) for (d = 1; d <= n; d++) game[x+d][y] = color; break; }
-		}
-
-		boolean hasMore = false;
-		cntWhite = 0; cntBlack = 0;
-		for (int i = 0; i < game.length; i++)
-			for (int j = 0; j < game[0].length; j++) {
-				switch (game[i][j]) {
-					case EMPTY: hasMore = true; break;
-					case WHITE: cntWhite++; break;
-					case BLACK: cntBlack++; break;
-				}
-			}
-		return hasMore;
-	}
-	
-	public static void play(final Display display, final Browser browser, int delay) {
-		ttr.playRequest(game, BLACK);
-		display.timerExec(3000, new Runnable() {
-				public void run() {
-					ttr.getBestMove(move);
-					boolean hasMore = add(move[0], move[1], BLACK);
-					isWhite = true;
-					browser.setText(getHtml(hasMore ? TYPE_BOARD : TYPE_BOARD_OVER));
-				}
-		});
-	}
-}
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser/.classpath b/examples/org.eclipse.swt.examples.browser/.classpath
deleted file mode 100644
index 7b14e15..0000000
--- a/examples/org.eclipse.swt.examples.browser/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser/.cvsignore b/examples/org.eclipse.swt.examples.browser/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/examples/org.eclipse.swt.examples.browser/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser/.project b/examples/org.eclipse.swt.examples.browser/.project
deleted file mode 100644
index 6fd5ee5..0000000
--- a/examples/org.eclipse.swt.examples.browser/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples.browser</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.examples.browser/about.html b/examples/org.eclipse.swt.examples.browser/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.examples.browser/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.browser/build.properties b/examples/org.eclipse.swt.examples.browser/build.properties
deleted file mode 100644
index 818e483..0000000
--- a/examples/org.eclipse.swt.examples.browser/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = doc-html/,\
-               icons/,\
-               plugin.properties,\
-               plugin.xml,\
-               about.html,\
-	           *.jar
-
-src.includes = about.html
-	       
-source.browserexample.jar = src/
diff --git a/examples/org.eclipse.swt.examples.browser/doc-html/hglegal.htm b/examples/org.eclipse.swt.examples.browser/doc-html/hglegal.htm
deleted file mode 100644
index 6211156..0000000
--- a/examples/org.eclipse.swt.examples.browser/doc-html/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <LINK REL="stylesheet" HREF="../../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-  <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2004 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.browser/doc-html/ngibmcpy.gif b/examples/org.eclipse.swt.examples.browser/doc-html/ngibmcpy.gif
deleted file mode 100644
index c786e43..0000000
--- a/examples/org.eclipse.swt.examples.browser/doc-html/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser/doc-html/swt_browser_ex.html b/examples/org.eclipse.swt.examples.browser/doc-html/swt_browser_ex.html
deleted file mode 100644
index af4189e..0000000
--- a/examples/org.eclipse.swt.examples.browser/doc-html/swt_browser_ex.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - Controls Overview</title>
-</head>
-<body>
-
-<h2>SWT example - Browser</h2>
-
-<p>
-The Browser Example is a simple demonstration of the SWT Browser widget. 
-It consists of a composite containing a Browser widget to render HTML and some
-additional widgets to implement actions commonly found on browsers (toolbar
-with back, forward, refresh and stop buttons, status bar etc.).
-</p>
-
-<h3>Running the example</h3>
-<p>
-Follow the <a href="../../org.eclipse.swt.examples/doc-html/swt_manual_setup.html">SWT standalone examples setup</a> 
-instructions to install and run the example from your workspace.
-</p>
-<p>
-The "Main" class is <code>org.eclipse.swt.examples.browserexample.BrowserExample</code>.
-</p>
-<p>
-This example can also be run using the <a href="../../org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html">Example Launcher</a>.
-Select the <strong>Browser</strong> item from the <strong>Workbench Views</strong> category and click <strong>Run</strong>.
-</p>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.browser/icons/browser_example.gif b/examples/org.eclipse.swt.examples.browser/icons/browser_example.gif
deleted file mode 100644
index 895e221..0000000
--- a/examples/org.eclipse.swt.examples.browser/icons/browser_example.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.browser/plugin.properties b/examples/org.eclipse.swt.examples.browser/plugin.properties
deleted file mode 100644
index 032ebc0..0000000
--- a/examples/org.eclipse.swt.examples.browser/plugin.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-providerName = Eclipse.org
-plugin.SWTBrowserExample.name = SWT Browser Example Plugin
-category.SWTExamples.name = SWT Examples
-view.BrowserExample.name = Web Browser
-
-launchcategory.SWTViewExamples.name = Workbench Views
-launchcategory.SWTViewExamples.description = \
-	A collection of Standard Widget Toolkit examples that run as Views inside the Workbench.  \
-	These examples will create a new View in the current Perspective.
-
-launchitem.BrowserExample.name = Web Browser
-launchitem.BrowserExample.description = \
-	This example demonstrates how to integrate a Web Browser with the SWT Browser widget.\n\n\
-	It consists of a composite containing a Browser widget to render HTML. \
-	Additional widgets allow the user to perform typical browser actions (for example, navigate to a particular URL, go back, forward, refresh and stop).
-
diff --git a/examples/org.eclipse.swt.examples.browser/plugin.xml b/examples/org.eclipse.swt.examples.browser/plugin.xml
deleted file mode 100644
index ed246e6..0000000
--- a/examples/org.eclipse.swt.examples.browser/plugin.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.swt.examples.browser"
-   name="%plugin.SWTBrowserExample.name"
-   version="3.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.swt.examples.browserexample.BrowserPlugin">
-
-<!-- Runtime -->
-   <runtime>
-      <library name="browserexample.jar">
-         <packages prefixes="org.eclipse.swt.examples.browserexample"/>
-      </library>
-   </runtime>
-<!-- Required plugins -->
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.swt"/>
-      <import plugin="org.eclipse.swt.examples"/>
-   </requires>
-
-
-<!-- Extension points -->
-<!-- Extensions -->
-   <extension
-         point="org.eclipse.ui.views">
-      <view
-            name="%view.BrowserExample.name"
-            icon="icons/browser_example.gif"
-            category="org.eclipse.swt.examples.category"
-            class="org.eclipse.swt.examples.browserexample.BrowserView"
-            id="org.eclipse.swt.examples.browserexample.view">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.swt.examples.launcher.launchItems">
-      <category
-            name="%launchcategory.SWTViewExamples.name"
-            description="%launchcategory.SWTViewExamples.description"
-            id="org.eclipse.swt.examples.launchViewCategory">
-      </category>
-      <item
-            name="%launchitem.BrowserExample.name"
-            icon="icons/browser_example.gif"
-            category="org.eclipse.swt.examples.launchViewCategory"
-            description="%launchitem.BrowserExample.description"
-            id="org.eclipse.swt.examples.browserexample.viewlauncher">
-         <view
-               viewId="org.eclipse.swt.examples.browserexample.view">
-         </view>
-      </item>
-   </extension>
-
-</plugin>
diff --git a/examples/org.eclipse.swt.examples.browser/src/import.properties b/examples/org.eclipse.swt.examples.browser/src/import.properties
deleted file mode 100644
index 58344f0..0000000
--- a/examples/org.eclipse.swt.examples.browser/src/import.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# Persist project settings for later import 
-natures = org.eclipse.jdt.core.javanature; org.eclipse.pde.PluginNature
-builders = org.eclipse.jdt.core.javabuilder; org.eclipse.pde.ManifestBuilder; org.eclipse.pde.SchemaBuilder
-var.ECLIPSE_PLUGINS = <<ECLIPSE_PLUGINS>>
diff --git a/examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserPlugin.java b/examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserPlugin.java
deleted file mode 100644
index cb61fa3..0000000
--- a/examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserPlugin.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.browserexample;
-
-
-import org.eclipse.ui.plugin.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class BrowserPlugin extends AbstractUIPlugin {
-	/**
-	 * The constructor.
-	 */
-	public BrowserPlugin() {
-		super();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserView.java b/examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserView.java
deleted file mode 100644
index e7d2670..0000000
--- a/examples/org.eclipse.swt.examples.browser/src/org/eclipse/swt/examples/browserexample/BrowserView.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.browserexample;
-
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.part.*;
-
-/**
- * <code>BrowserView</code> is a simple demonstration
- * of the SWT Browser widget.  It consists of a workbench
- * view and tab folder where each tab in the folder allows the
- * user to interact with a control.
- * 
- * @see ViewPart
- */
-public class BrowserView extends ViewPart {
-	BrowserExample instance = null;
-	
-	/**
-	 * Create the example
-	 * 
-	 * @see ViewPart#createPartControl
-	 */
-	public void createPartControl(Composite frame) {
-		instance = new BrowserExample(frame, true);
-	}
-
-	/**
-	 * Called when we must grab focus.
-	 * 
-	 * @see org.eclipse.ui.part.ViewPart#setFocus
-	 */
-	public void setFocus() {
-		instance.focus();
-	}
-
-	/**
-	 * Called when the View is to be disposed
-	 */	
-	public void dispose() {
-		instance.dispose();
-		instance = null;
-		super.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.controls/.classpath b/examples/org.eclipse.swt.examples.controls/.classpath
deleted file mode 100755
index 065ac06..0000000
--- a/examples/org.eclipse.swt.examples.controls/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.examples.controls/.cvsignore b/examples/org.eclipse.swt.examples.controls/.cvsignore
deleted file mode 100755
index c5e82d7..0000000
--- a/examples/org.eclipse.swt.examples.controls/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.controls/.project b/examples/org.eclipse.swt.examples.controls/.project
deleted file mode 100644
index f8c68eb..0000000
--- a/examples/org.eclipse.swt.examples.controls/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples.controls</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.examples.controls/about.html b/examples/org.eclipse.swt.examples.controls/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.examples.controls/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.controls/build.properties b/examples/org.eclipse.swt.examples.controls/build.properties
deleted file mode 100755
index ca7f7ae..0000000
--- a/examples/org.eclipse.swt.examples.controls/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = doc-html/,\
-               icons/,\
-               plugin.properties,\
-               plugin.xml,\
-               about.html,\
-	           *.jar
-
-src.includes = about.html
-	       
-source.controls.jar = src/
diff --git a/examples/org.eclipse.swt.examples.controls/doc-html/hglegal.htm b/examples/org.eclipse.swt.examples.controls/doc-html/hglegal.htm
deleted file mode 100755
index 6211156..0000000
--- a/examples/org.eclipse.swt.examples.controls/doc-html/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <LINK REL="stylesheet" HREF="../../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-  <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2004 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.controls/doc-html/ngibmcpy.gif b/examples/org.eclipse.swt.examples.controls/doc-html/ngibmcpy.gif
deleted file mode 100755
index c786e43..0000000
--- a/examples/org.eclipse.swt.examples.controls/doc-html/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.controls/doc-html/swt_controls_ex.html b/examples/org.eclipse.swt.examples.controls/doc-html/swt_controls_ex.html
deleted file mode 100755
index 288fe2b..0000000
--- a/examples/org.eclipse.swt.examples.controls/doc-html/swt_controls_ex.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - Controls Overview</title>
-</head>
-<body>
-
-<h2>SWT example - Controls</h2>
-
-<p>
-The Controls Example is a simple demonstration of common SWT controls. 
-It consists of a tab folder where each tab in the folder allows the user 
-to interact with a different control.
-The user can change styles and settings and view how this affects each control.
-</p>
-
-<h3>Running the example</h3>
-<p>
-Follow the <a href="../../org.eclipse.swt.examples/doc-html/swt_manual_setup.html">SWT standalone examples setup</a> 
-instructions to install and run the example from your workspace.
-</p>
-<p>
-The "Main" class is <code>org.eclipse.swt.examples.controlexample.ControlExample</code>.
-</p>
-<p>
-This example can also be run using the <a href="../../org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html">Example Launcher</a>.
-Select the <strong>Controls</strong> item from the <strong>Workbench Views</strong> category and click <strong>Run</strong>.
-</p>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.controls/doc-html/swt_customcontrols_ex.html b/examples/org.eclipse.swt.examples.controls/doc-html/swt_customcontrols_ex.html
deleted file mode 100644
index c628539..0000000
--- a/examples/org.eclipse.swt.examples.controls/doc-html/swt_customcontrols_ex.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - Controls Overview</title>
-</head>
-<body>
-
-<h2>SWT example - Custom Controls</h2>
-
-<p>
-The Custom Controls example is a simple demonstration of emulated SWT controls. 
-It consists of a tab folder where each tab in the folder allows the user 
-to interact with a different emulated control.
-The user can change styles and settings and view how this affects each control.
-</p>
-
-<h3>Running the example</h3>
-<p>
-Follow the <a href="../../org.eclipse.swt.examples/doc-html/swt_manual_setup.html">SWT standalone examples setup</a> 
-instructions to install and run the example from your workspace.
-</p>
-<p>
-The "Main" class is <code>org.eclipse.swt.examples.controlexample.CustomControlExample</code>.
-</p>
-<p>
-This example can also be run using the <a href="../../org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html">Example Launcher</a>.
-Select the <strong>Custom Controls</strong> item from the <strong>Workbench Views</strong> category and click <strong>Run</strong>.
-</p>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.controls/icons/controls_example.gif b/examples/org.eclipse.swt.examples.controls/icons/controls_example.gif
deleted file mode 100755
index cbdee97..0000000
--- a/examples/org.eclipse.swt.examples.controls/icons/controls_example.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.controls/plugin.properties b/examples/org.eclipse.swt.examples.controls/plugin.properties
deleted file mode 100755
index ee2fea2..0000000
--- a/examples/org.eclipse.swt.examples.controls/plugin.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-providerName = Eclipse.org
-plugin.SWTControlsExample.name = SWT Controls Example Plugin
-category.SWTExamples.name = SWT Examples
-view.ControlsExample.name = SWT Controls
-view.CustomControlsExample.name = SWT Custom Controls
-
-launchcategory.SWTViewExamples.name = Workbench Views
-launchcategory.SWTViewExamples.description = \
-	A collection of Standard Widget Toolkit examples that run as Views inside the Workbench.  \
-	These examples will create a new View in the current Perspective.
-
-launchitem.ControlsExample.name = Controls
-launchitem.ControlsExample.description = \
-	This example is a simple demonstration of native SWT controls.\n\n\
-	It consists of a tab folder where each tab allows the user \
-	to interact with a different SWT control. \
-	The user can change styles and settings and view how this affects the control.
-	
-launchitem.CustomControlsExample.name = Custom Controls
-launchitem.CustomControlsExample.description = \
-	This example is a simple demonstration of custom SWT controls.\n\n\
-	It consists of a tab folder where each tab allows the user \
-	to interact with a different SWT custom control. \
-	The user can change styles and settings and view how this affects the control.
diff --git a/examples/org.eclipse.swt.examples.controls/plugin.xml b/examples/org.eclipse.swt.examples.controls/plugin.xml
deleted file mode 100755
index 1a11030..0000000
--- a/examples/org.eclipse.swt.examples.controls/plugin.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.swt.examples.controls"
-   name="%plugin.SWTControlsExample.name"
-   version="3.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.swt.examples.controls.ControlPlugin">
-
-<!-- Runtime -->
-<!-- Runtime -->
-   <runtime>
-      <library name="controls.jar">
-            <packages prefixes="org.eclipse.swt.examples.controls"/>
-      </library>
-   </runtime>
-<!-- Required plugins -->
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.swt"/>
-      <import plugin="org.eclipse.swt.examples"/>
-   </requires>
-
-
-<!-- Extension points -->
-<!-- Extensions -->
-   <extension
-         point="org.eclipse.ui.views">
-      <view
-            name="%view.ControlsExample.name"
-            icon="icons/controls_example.gif"
-            category="org.eclipse.swt.examples.category"
-            class="org.eclipse.swt.examples.controls.ControlView"
-            id="org.eclipse.swt.examples.controls.view">
-      </view>
-      <view
-            name="%view.CustomControlsExample.name"
-            icon="icons/controls_example.gif"
-            category="org.eclipse.swt.examples.category"
-            class="org.eclipse.swt.examples.controls.CustomControlView"
-            id="org.eclipse.swt.examples.customcontrols.view">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.swt.examples.launcher.launchItems">
-      <category
-            name="%launchcategory.SWTViewExamples.name"
-            description="%launchcategory.SWTViewExamples.description"
-            id="org.eclipse.swt.examples.launchViewCategory">
-      </category>
-      <item
-            name="%launchitem.ControlsExample.name"
-            icon="icons/controls_example.gif"
-            description="%launchitem.ControlsExample.description"
-            category="org.eclipse.swt.examples.launchViewCategory"
-            id="org.eclipse.swt.examples.controls.viewlauncher">
-         <view
-               viewId="org.eclipse.swt.examples.controls.view">
-         </view>
-      </item>
-      <item
-            name="%launchitem.CustomControlsExample.name"
-            icon="icons/controls_example.gif"
-            description="%launchitem.CustomControlsExample.description"
-            category="org.eclipse.swt.examples.launchViewCategory"
-            id="org.eclipse.swt.examples.customcontrols.viewlauncher">
-         <view
-               viewId="org.eclipse.swt.examples.customcontrols.view">
-         </view>
-      </item>
-   </extension>
-
-</plugin>
diff --git a/examples/org.eclipse.swt.examples.controls/src/import.properties b/examples/org.eclipse.swt.examples.controls/src/import.properties
deleted file mode 100644
index 58344f0..0000000
--- a/examples/org.eclipse.swt.examples.controls/src/import.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# Persist project settings for later import 
-natures = org.eclipse.jdt.core.javanature; org.eclipse.pde.PluginNature
-builders = org.eclipse.jdt.core.javabuilder; org.eclipse.pde.ManifestBuilder; org.eclipse.pde.SchemaBuilder
-var.ECLIPSE_PLUGINS = <<ECLIPSE_PLUGINS>>
diff --git a/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlPlugin.java b/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlPlugin.java
deleted file mode 100755
index d0a2a3a..0000000
--- a/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlPlugin.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.controls;
-
-
-import org.eclipse.ui.plugin.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class ControlPlugin extends AbstractUIPlugin {
-	/**
-	 * The constructor.
-	 */
-	public ControlPlugin() {
-		super();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlView.java b/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlView.java
deleted file mode 100755
index 5024641..0000000
--- a/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/ControlView.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.controls;
-
- 
-import org.eclipse.swt.examples.controlexample.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.part.*;
-
-/**
- * <code>Controls</code> is a simple demonstration
- * of the native controls defined by SWT.  It consists of a workbench
- * view and tab folder where each tab in the folder allows the
- * user to interact with a control.
- * 
- * @see ViewPart
- */
-public class ControlView extends ViewPart {
-	ControlExample instance = null;
-	
-	/**
-	 * Create the example
-	 * 
-	 * @see ViewPart#createPartControl
-	 */
-	public void createPartControl(Composite frame) {
-		instance = new ControlExample(frame);
-	}
-
-	/**
-	 * Called when we must grab focus.
-	 * 
-	 * @see org.eclipse.ui.part.ViewPart#setFocus
-	 */
-	public void setFocus() {
-		instance.setFocus();
-	}
-
-	/**
-	 * Called when the View is to be disposed
-	 */	
-	public void dispose() {
-		instance.dispose();
-		instance = null;
-		super.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/CustomControlView.java b/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/CustomControlView.java
deleted file mode 100644
index ec66fd4..0000000
--- a/examples/org.eclipse.swt.examples.controls/src/org/eclipse/swt/examples/controls/CustomControlView.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.controls;
-
-
-import org.eclipse.swt.examples.controlexample.*;
-import org.eclipse.swt.widgets.*;
-
-/**
- * <code>CustomControls</code> is a simple demonstration
- * of the custom controls defined by SWT.  It consists of a workbench
- * view and tab folder where each tab in the folder allows the
- * user to interact with a control.
- * 
- * @see ViewPart
- */
-public class CustomControlView extends ControlView {
-
-	/**
-	 * Create the example
-	 * 
-	 * @see ViewPart#createPartControl
-	 */
-	public void createPartControl(Composite frame) {
-		instance = new CustomControlExample(frame);
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.launcher/.classpath b/examples/org.eclipse.swt.examples.launcher/.classpath
deleted file mode 100755
index 065ac06..0000000
--- a/examples/org.eclipse.swt.examples.launcher/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.examples.launcher/.cvsignore b/examples/org.eclipse.swt.examples.launcher/.cvsignore
deleted file mode 100755
index c5e82d7..0000000
--- a/examples/org.eclipse.swt.examples.launcher/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.launcher/.project b/examples/org.eclipse.swt.examples.launcher/.project
deleted file mode 100644
index 08cc7ff..0000000
--- a/examples/org.eclipse.swt.examples.launcher/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples.launcher</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.examples.launcher/about.html b/examples/org.eclipse.swt.examples.launcher/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.examples.launcher/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.launcher/build.properties b/examples/org.eclipse.swt.examples.launcher/build.properties
deleted file mode 100755
index 2ca3829..0000000
--- a/examples/org.eclipse.swt.examples.launcher/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = doc/,\
-               doc-html/,\
-               icons/,\
-               schema/,\
-               plugin.properties,\
-               plugin.xml,\
-               about.html,\
-	           *.jar
-	           
-src.includes = about.html
-
-source.launcher.jar = src/
diff --git a/examples/org.eclipse.swt.examples.launcher/doc-html/hglegal.htm b/examples/org.eclipse.swt.examples.launcher/doc-html/hglegal.htm
deleted file mode 100755
index 6211156..0000000
--- a/examples/org.eclipse.swt.examples.launcher/doc-html/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <LINK REL="stylesheet" HREF="../../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-  <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2004 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.launcher/doc-html/ngibmcpy.gif b/examples/org.eclipse.swt.examples.launcher/doc-html/ngibmcpy.gif
deleted file mode 100755
index c786e43..0000000
--- a/examples/org.eclipse.swt.examples.launcher/doc-html/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html b/examples/org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html
deleted file mode 100755
index eaa0c22..0000000
--- a/examples/org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - Example Launcher</title>
-</head>
-<body>
-
-<h2>SWT Example Launcher</h2>
-
-<p>
-The Example Launcher is used to launch SWT examples, which can either be Workbench views 
-or standalone applications.
-</p>
-
-<ul>
-<li>Workbench views are examples that are integrated into Eclipse.  When the launcher
-starts a Workbench view, it is opened in the currently active perspective.
-<li>Standalone applications are launched in a separate window.
-</ul>
-
-<p>
-For information on how to run the standalone examples without the SWT Example Launcher, 
-refer to <a href="../../org.eclipse.swt.examples/doc-html/swt_manual_setup.html">SWT standalone examples setup</a>.
-</p>
-<p>
-The SWT Workbench view examples can also be launched directly without using the SWT Example 
-Launcher.  SWT Workbench view examples can be found under the <strong>SWT Examples</strong> category of the 
-<strong>Show Views</strong> dialog.
-</p>
-
-<h3>Running the Example Launcher</h3>
-
-<p>
-From Eclipse's <strong>Window</strong> menu, select <strong>Show View &gt; Other</strong>. 
-In the <strong>Show View</strong> dialog, expand <strong>SWT Examples</strong> and select the <strong>SWT Example Launcher</strong> view. 
-A view containing a list of examples will appear in your current perspective.
-When you select an example from the list a brief description of the example is displayed.
-Click on the <strong>Run</strong> button to launch the example.
-</p>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.launcher/doc/org.eclipse.swt.examples.launcher.launchItems.html b/examples/org.eclipse.swt.examples.launcher/doc/org.eclipse.swt.examples.launcher.launchItems.html
deleted file mode 100755
index 3edf918..0000000
--- a/examples/org.eclipse.swt.examples.launcher/doc/org.eclipse.swt.examples.launcher.launchItems.html
+++ /dev/null
@@ -1,60 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HEAD>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</HEAD>
-<HTML>
-<BODY>
-<H1><CENTER>Launch Items</CENTER></H1>
-<H2>Identifier</H2>
-org.eclipse.swt.examples.launcher.launchItems<H2>Description</H2>
-This extension point is used to add 'standalone program' and
-'Workbench view'
-launch items to the Launcher, optionally grouping them into
-categories so as to form a multi-tiered hierarchy.
-Standalone programs are executed using the platform's event loop.
-Workbench views are created within the active Workbench Perspective.<H2>Markup</H2>
-<p><samp>&nbsp;&nbsp; &lt;!ELEMENT extension EMPTY&gt;</samp>
-<br><samp>&nbsp;&nbsp; &lt;!ATTLIST extension</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;id&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp;CDATA #IMPLIED</samp>
-<br><samp>&nbsp;&nbsp; &gt;</samp>
-<ul>
-<li><b>point</b> - </li><li><b>id</b> - </li><li><b>name</b> - </li></ul>
-<p><samp>&nbsp;&nbsp; &lt;!ELEMENT program EMPTY&gt;</samp>
-<br><samp>&nbsp;&nbsp; &lt;!ATTLIST program</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mainClass&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pluginId&nbsp;&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp; &gt;</samp>
-<ul>
-<li><b>mainClass</b> - The fully-qualified name of the class whose main() method is to be launched.</li><li><b>pluginId</b> - The unique id of the Eclipse Platform plugin containing the program.</li></ul>
-<p><samp>&nbsp;&nbsp; &lt;!ELEMENT view EMPTY&gt;</samp>
-<br><samp>&nbsp;&nbsp; &lt;!ATTLIST view</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;viewId&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp; &gt;</samp>
-<ul>
-<li><b>viewId</b> - The unique id of the Workbench View to be activated when the item is launched.</li></ul>
-<p><samp>&nbsp;&nbsp; &lt;!ELEMENT category EMPTY&gt;</samp>
-<br><samp>&nbsp;&nbsp; &lt;!ATTLIST category</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;category&nbsp;CDATA #IMPLIED</samp>
-<br><samp>&nbsp;&nbsp; &gt;</samp>
-<ul>
-<li><b>name</b> - The localized name of this category.</li><li><b>id</b> - The unique id of this category.  Categories with duplicate id's will be discarded.</li><li><b>category</b> - The unique id of the parent category.</li></ul>
-<p><samp>&nbsp;&nbsp; &lt;!ELEMENT item EMPTY&gt;</samp>
-<br><samp>&nbsp;&nbsp; &lt;!ATTLIST item</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;category&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;icon&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enabled&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(true | false) "false""true"</samp>
-<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description&nbsp;CDATA #IMPLIED</samp>
-<br><samp>&nbsp;&nbsp; &gt;</samp>
-<ul>
-<li><b>name</b> - The localized name of this launch item.</li><li><b>id</b> - The unique id of this launch item. Launch items with duplicate id's will be discarded.</li><li><b>category</b> - The unique id of the category this launch item belongs to.</li><li><b>icon</b> - The declaring plugin relative path of an icon to display with this launch item in the Launcher.</li><li><b>enabled</b> - Set to "false" to disable this launch item, or to "true" to enable it (default).</li><li><b>description</b> - The localized plain-text description of this launch item.</li></ul>
-<H2>Example</H2>
-<H2>API Information</H2>
-<H2>Supplied Implementation</H2>
-</BODY>
-</HTML>
diff --git a/examples/org.eclipse.swt.examples.launcher/icons/closedFolder.gif b/examples/org.eclipse.swt.examples.launcher/icons/closedFolder.gif
deleted file mode 100755
index beb6ed1..0000000
--- a/examples/org.eclipse.swt.examples.launcher/icons/closedFolder.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.launcher/icons/generic_example.gif b/examples/org.eclipse.swt.examples.launcher/icons/generic_example.gif
deleted file mode 100755
index f9fb6b0..0000000
--- a/examples/org.eclipse.swt.examples.launcher/icons/generic_example.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.launcher/icons/launcher_example.gif b/examples/org.eclipse.swt.examples.launcher/icons/launcher_example.gif
deleted file mode 100755
index 3ab4d32..0000000
--- a/examples/org.eclipse.swt.examples.launcher/icons/launcher_example.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.launcher/icons/openFolder.gif b/examples/org.eclipse.swt.examples.launcher/icons/openFolder.gif
deleted file mode 100755
index a9c77734..0000000
--- a/examples/org.eclipse.swt.examples.launcher/icons/openFolder.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.launcher/plugin.properties b/examples/org.eclipse.swt.examples.launcher/plugin.properties
deleted file mode 100755
index 7b0f95c..0000000
--- a/examples/org.eclipse.swt.examples.launcher/plugin.properties
+++ /dev/null
@@ -1,49 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-providerName = Eclipse.org
-plugin.SWTLauncherExample.name = SWT Launcher Example Plugin
-category.SWTExamples.name = SWT Examples
-view.LauncherExample.name = SWT Example Launcher
-
-extension-point.launchItems.name = Launch Items
-
-launchcategory.SWTViewExamples.name = Workbench Views
-launchcategory.SWTViewExamples.description = \
-	A collection of Standard Widget Toolkit examples that run as Views inside the Workbench.  \
-	These examples will create a new View in the current Perspective.
-
-launchitem.LauncherExample.name = Launcher
-launchitem.LauncherExample.description = \
-	The Example Launcher is used to launch SWT examples which can either be \
-	Workbench Views, or Standalone applications.\n\n\
-	Workbench Views are examples that are integrated into Eclipse.  When the Launcher \
-	starts a Workbench View, it is opened in the currently active perspective.\n\n\
-	Standalone applications are launched in a separate window.
-
-error.CouldNotLoadResources = Unable to load resources
-error.CouldNotFindRegisteredExtensions = Could Not Find Registered Extensions
-error.IncompleteProgramLaunchItem = Incomplete XML ProgramLaunchItem definition, id = {0}
-error.IncompleteViewLaunchItem = Incomplete XML ViewLaunchItem definition, id = {0}
-error.IncompleteLaunchItem = Incomplete or unrecognized XML LaunchItem definition, id = {0}
-
-launchitem.Null.description = <<no item selected>>
-
-launchitem.Missing.name = <<unnamed>>
-launchitem.Missing.description = <<no description available>>
-
-view.launchGroup.text = Examples
-view.launchButton.text = Run
-view.descriptionGroup.text = Description
-
-run.error.Invocation = A fatal error occurred while launching the program.
-run.error.DoesNotImplementMethod = The class does not implement the open() method.
-run.error.CouldNotFindClass = Could not find the class to run.
-run.error.CouldNotInstantiateClass = Could not instantiate the class to run.
diff --git a/examples/org.eclipse.swt.examples.launcher/plugin.xml b/examples/org.eclipse.swt.examples.launcher/plugin.xml
deleted file mode 100755
index 9cb2d6f..0000000
--- a/examples/org.eclipse.swt.examples.launcher/plugin.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.swt.examples.launcher"
-   name="%plugin.SWTLauncherExample.name"
-   version="3.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.swt.examples.launcher.LauncherPlugin">
-
-<!-- Runtime -->
-<!-- Runtime -->
-<!-- Runtime -->
-<!-- Runtime -->
-   <runtime>
-      <library name="launcher.jar">
-            <packages prefixes="org.eclipse.swt.examples.launcher"/>
-      </library>
-   </runtime>
-<!-- Required plugins -->
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.swt"/>
-      <import plugin="org.eclipse.jdt.launching"/>
-      <import plugin="org.eclipse.debug.core"/>
-      <import plugin="org.eclipse.core.boot"/>
-      <import plugin="org.eclipse.jdt.core"/>
-      <import plugin="org.eclipse.swt.examples"/>
-   </requires>
-
-
-<!-- Extension points -->
-   <extension-point id="launchItems" name="%extension-point.launchItems.name" schema="schema/org.eclipse.swt.examples.launcher.launchItems.exsd"/>
-
-<!-- Extensions -->
-   <extension
-         id="application"
-         point="org.eclipse.core.runtime.applications">
-   </extension>
-   <extension
-         point="org.eclipse.ui.views">
-      <category
-            name="%category.SWTExamples.name"
-            id="org.eclipse.swt.examples.category">
-      </category>
-      <view
-            name="%view.LauncherExample.name"
-            icon="icons/launcher_example.gif"
-            category="org.eclipse.swt.examples.category"
-            class="org.eclipse.swt.examples.launcher.LauncherView"
-            id="org.eclipse.swt.examples.launcher.view">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.swt.examples.launcher.launchItems">
-      <category
-            name="%launchcategory.SWTViewExamples.name"
-            description="%launchcategory.SWTViewExamples.description"
-            id="org.eclipse.swt.examples.launchViewCategory">
-      </category>
-      <item
-            name="%launchitem.LauncherExample.name"
-            enabled="false"
-            icon="icons/launcher_example.gif"
-            description="%launchitem.LauncherExample.description"
-            category="org.eclipse.swt.examples.launchViewCategory"
-            id="org.eclipse.swt.examples.launcher.viewlauncher">
-         <view
-               viewId="org.eclipse.swt.examples.launcher.view">
-         </view>
-      </item>
-   </extension>
-
-</plugin>
diff --git a/examples/org.eclipse.swt.examples.launcher/schema/org.eclipse.swt.examples.launcher.launchItems.exsd b/examples/org.eclipse.swt.examples.launcher/schema/org.eclipse.swt.examples.launcher.launchItems.exsd
deleted file mode 100644
index 3813c9d..0000000
--- a/examples/org.eclipse.swt.examples.launcher/schema/org.eclipse.swt.examples.launcher.launchItems.exsd
+++ /dev/null
@@ -1,210 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.swt.examples.launcher">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.swt.examples.launcher" id="launchItems" name="Launch Items"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to add &apos;standalone program&apos; and
-&apos;Workbench view&apos;
-launch items to the Launcher, optionally grouping them into
-categories so as to form a multi-tiered hierarchy.
-Standalone programs are executed using the platform&apos;s event loop.
-Workbench views are created within the active Workbench Perspective.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <choice minOccurs="0" maxOccurs="unbounded">
-            <element ref="category"/>
-            <element ref="item"/>
-         </choice>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="program">
-      <annotation>
-         <documentation>
-            Specifies a &quot;Standalone Program&quot; for a launch item to run.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="mainClass" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The fully-qualified name of the class whose main() method is to be launched.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="pluginId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The unique id of the Eclipse Platform plugin containing the program.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="view">
-      <annotation>
-         <documentation>
-            Specifies a &quot;Workbench View&quot; for a launch item to activate.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="viewId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The unique id of the Workbench View to be activated when the item is launched.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="category">
-      <annotation>
-         <documentation>
-            Specifies a launch item category heading.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The localized name of this category.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The unique id of this category.  Categories with duplicate id&apos;s will be discarded.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="category" type="string">
-            <annotation>
-               <documentation>
-                  The unique id of the parent category.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="description" type="string">
-            <annotation>
-               <documentation>
-                  Specifies a launch item category description.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="item">
-      <annotation>
-         <documentation>
-            Specifies a launch item.
-         </documentation>
-      </annotation>
-      <complexType>
-         <choice>
-            <element ref="view"/>
-            <element ref="program"/>
-         </choice>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The localized name of this launch item.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The unique id of this launch item. Launch items with duplicate id&apos;s will be discarded.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="category" type="string">
-            <annotation>
-               <documentation>
-                  The unique id of the category this launch item belongs to.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="icon" type="string">
-            <annotation>
-               <documentation>
-                  The declaring plugin relative path of an icon to display with this launch item in the Launcher.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="enabled" type="boolean" use="default" value="true">
-            <annotation>
-               <documentation>
-                  Set to &quot;false&quot; to disable this launch item, or to &quot;true&quot; to enable it (default).
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="description" type="string">
-            <annotation>
-               <documentation>
-                  The localized plain-text description of this launch item.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/examples/org.eclipse.swt.examples.launcher/src/import.properties b/examples/org.eclipse.swt.examples.launcher/src/import.properties
deleted file mode 100644
index 58344f0..0000000
--- a/examples/org.eclipse.swt.examples.launcher/src/import.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# Persist project settings for later import 
-natures = org.eclipse.jdt.core.javanature; org.eclipse.pde.PluginNature
-builders = org.eclipse.jdt.core.javabuilder; org.eclipse.pde.ManifestBuilder; org.eclipse.pde.SchemaBuilder
-var.ECLIPSE_PLUGINS = <<ECLIPSE_PLUGINS>>
diff --git a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemDescriptor.java b/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemDescriptor.java
deleted file mode 100755
index 7ec1019..0000000
--- a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemDescriptor.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.launcher;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * ItemDescriptor collects information about a launch item.
- */
-class ItemDescriptor {
-	private String id;
-	private String name;
-	private String description;
-	private Image  icon;
-	private String view;
-	private String mainType;
-	private String pluginId;
-	
-	
-	/**
-	 * Constructs an ItemDescriptor.
-	 *
-	 * @param id the id
-	 * @param name the name
-	 * @param description the description
-	 * @param icon the icon
-	 * @param view the host view may be null if it is a standalone application
-	 * @param mainType the fully qualified class name to run may be null if it is a view
-	 * @param pluginId the name of the plugin which contains the main class
-	 */
-	public ItemDescriptor(String id, String name, String description,
-		Image icon, String view, String mainType, String pluginId) {
-		this.id = id;
-		this.name = name;
-		this.description = description;
-		this.icon = icon;
-		this.view = view;
-		this.mainType = mainType;
-		this.pluginId = pluginId;
-	}
-
-	/**
-	 * Returns the ID for this program.
-	 *
-	 * @return the user-specified ID for this program
-	 */
-	public String getId() {
-		return id;
-	}
-	
-	/**
-	 * Returns the translated name for the program.
-	 * 
-	 * @return the name of the program
-	 */
-	public String getName() {
-		return name;
-	}
-	
-	/**
-	 * Returns a short description for the program.
-	 * 
-	 * @return a newline-delimited string describing the program, null if no description is available
-	 */
-	public String getDescription() {
-		return description;
-	}
-
-	/**
-	 * Returns an icon for this descriptor
-	 * 
-	 * @returns an icon, null if the item is a folder
-	 */
-	public Image getIcon() {
-		return icon;
-	}
-	
-	/**
-	 * Returns the host view for the program.
-	 * 
-	 * @return the host view, null if the item is a standalone program.
-	 */
-	public String getView () {
-		return view;
-	}
-	
-	/**
-	 * Returns the fully qualified class to run
-	 * for the program.
-	 * 
-	 * @return the class to run for the program.
-	 */
-	public String getMainType () {
-		return mainType;
-	}
-	
-	/**
-	 * Returns the name of the plugin that contains the program.
-	 * 
-	 * @return the name of the plugin that contains the program.
-	 */
-	public String getPluginId () {
-		return pluginId;
-	}
-	
-	/**
-	 * Determines if an item is a folder.
-	 *
-	 * @return true if the item is a folder
-	 */
-	public boolean isFolder() {
-		return (mainType == null && view == null);
-	}
-	
-	/**
-	 * Determines the equality of descriptors.
-	 * 
-	 * @return true if this.getId().equalsIgnoreCase(other.getId())
-	 */
-	public boolean equals(Object other) {
-		if (other instanceof ItemDescriptor) {
-			ItemDescriptor otherDescriptor = (ItemDescriptor) other;
-			return getId().equalsIgnoreCase(otherDescriptor.getId());
-		}
-		return false;
-	}
-	
-	/**
-	 * Produces a hashcode.
-	 * 
-	 * @return the hashcode
-	 */
-	public int hashCode() {
-		return id.toUpperCase().hashCode();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemTreeNode.java b/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemTreeNode.java
deleted file mode 100755
index 6088090..0000000
--- a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/ItemTreeNode.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.launcher;
-
-
-/**
- * Internal class used to store tree structures of ItemDescriptors
- */
-class ItemTreeNode {
-	private ItemTreeNode nextSibling;
-	private ItemTreeNode firstChild;
-	private ItemDescriptor descriptor;
-
-	/**
-	 * Constructs a leaf ItemTreeNode with a given descriptor.
-	 * 
-	 * @param descriptor the descriptor
-	 */
-	public ItemTreeNode(ItemDescriptor descriptor) {
-		this.descriptor = descriptor;
-	}
-
-	/**
-	 * Adds a node to the Tree in sorted order by name.
-	 * 
-	 * @param node the node to add. Note that node.nextSibling must be null
-	 */
-	public void addSortedNode(ItemTreeNode node) {
-		if (firstChild == null) {
-			firstChild = node;
-		} else if (firstChild.descriptor.getName().compareTo(node.descriptor.getName()) > 0) {
-			node.nextSibling = firstChild;
-			firstChild = node;
-		} else {
-			ItemTreeNode cursor;
-			for (cursor = firstChild; cursor.nextSibling != null; cursor = cursor.nextSibling) {
-				ItemTreeNode sibling = cursor.nextSibling;
-				if (sibling.descriptor.getName().compareTo(node.descriptor.getName()) > 0) break;
-			}
-			node.nextSibling = cursor.nextSibling;
-			cursor.nextSibling = node;
-		}
-	}
-	
-	/**
-	 * Returns the descriptor for this node.
-	 * 
-	 * @return the descriptor
-	 */
-	public ItemDescriptor getDescriptor() {
-		return descriptor;
-	}
-
-	/**
-	 * Returns the next sibling of this node.
-	 * 
-	 * @return the next sibling, or null if none
-	 */
-	public ItemTreeNode getNextSibling() {
-		return nextSibling;
-	}
-
-	/**
-	 * Returns the first child of this node.
-	 * 
-	 * @return the first child, or null if none
-	 */
-	public ItemTreeNode getFirstChild() {
-		return firstChild;
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherPlugin.java b/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherPlugin.java
deleted file mode 100755
index c5e1f31..0000000
--- a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherPlugin.java
+++ /dev/null
@@ -1,396 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.launcher;
-
-
-import java.io.*;
-import java.net.*;
-import java.text.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class LauncherPlugin extends AbstractUIPlugin {
-	//The shared instance.
-	private static LauncherPlugin plugin;
-	private static ResourceBundle resourceBundle;
-
-	private static final String
-		LAUNCH_ITEMS_POINT_ID = "org.eclipse.swt.examples.launcher.launchItems",
-		LAUNCH_ITEMS_XML_CATEGORY = "category",
-		LAUNCH_ITEMS_XML_ITEM = "item",
-		LAUNCH_ITEMS_XML_ITEM_ICON = "icon",
-		LAUNCH_ITEMS_XML_ITEM_DESCRIPTION = "description",
-		LAUNCH_ITEMS_XML_PROGRAM = "program",
-		LAUNCH_ITEMS_XML_PROGRAM_PLUGIN = "pluginId",
-		LAUNCH_ITEMS_XML_PROGRAM_CLASS = "mainClass",
-		LAUNCH_ITEMS_XML_VIEW = "view",
-		LAUNCH_ITEMS_XML_VIEW_VIEWID = "viewId",
-		LAUNCH_ITEMS_XML_ATTRIB_ID = "id",
-		LAUNCH_ITEMS_XML_ATTRIB_NAME = "name",
-		LAUNCH_ITEMS_XML_ATTRIB_ENABLED = "enabled",
-		LAUNCH_ITEMS_XML_ATTRIB_CATEGORY = "category",
-		LAUNCH_ITEMS_XML_VALUE_TRUE = "true",
-		LAUNCH_ITEMS_XML_VALUE_FALSE = "false";		
-
-	static final int
-		liClosedFolder = 0,
-		liOpenFolder = 1,
-		liGenericExample = 2;
-	static final String[] imageLocations = {
-		"icons/closedFolder.gif",
-		"icons/openFolder.gif",
-		"icons/generic_example.gif" };
-	static Image images[];
-
-	/**
-	 * Constructs the LauncherPlugin.
-	 */
-	public LauncherPlugin() {
-		super();
-		plugin = this;
-	}
-
-    public void start(BundleContext context) throws Exception {
-        super.start(context);
-        resourceBundle = Platform.getResourceBundle(getBundle());
-    }
-    
-	/**
-	 * Clean up
-	 */
-	public void stop(BundleContext context) throws Exception {
-		freeResources();
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static LauncherPlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Loads the resources
-	 */
-	public static void initResources() {
-		if (images == null) {
-			images = new Image[imageLocations.length];
-				
-			for (int i = 0; i < imageLocations.length; ++i) {
-				images[i] = getImageFromPlugin(plugin.getBundle(), imageLocations[i]);
-				if (images[i] == null) {
-					freeResources();
-					logError(getResourceString("error.CouldNotLoadResources"), null);
-					throw new IllegalStateException();
-				}
-			}
-		}	
-	}
-
-	/**
-	 * Frees the resources
-	 */
-	public static void freeResources() {
-		if (images != null) {
-			for (int i = 0; i < images.length; ++i) {
-				final Image image = images[i];
-				if (image != null) image.dispose();
-			}
-			images = null;
-		}
-	}
-
-	/**
-	 * Log an error to the ILog for this plugin
-	 * 
-	 * @param message the localized error message text
-	 * @param exception the associated exception, or null
-	 */
-	public static void logError(String message, Throwable exception) {
-		plugin.getLog().log(new Status(
-			IStatus.ERROR, plugin.getBundle().getSymbolicName(), 0, message, exception));
-	}
-
-	/**
-	 * Returns a string from the resource bundle.
-	 * We don't want to crash because of a missing String.
-	 * Returns the key if not found.
-	 */
-	public static String getResourceString(String key) {
-		try {
-			return resourceBundle.getString(key);
-		} catch (MissingResourceException e) {
-			return key;
-		} catch (NullPointerException e) {
-			return "!" + key + "!";
-		}			
-	}
-
-	/**
-	 * Returns a string from the resource bundle and binds it
-	 * with the given arguments. If the key is not found,
-	 * return the key.
-	 */
-	public static String getResourceString(String key, Object[] args) {
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (MissingResourceException e) {
-			return key;
-		} catch (NullPointerException e) {
-			return "!" + key + "!";
-		}
-	}
-
-	/**
-     * Constructs a list of available programs from registered extensions.
-     * 
-     * @return an ItemTreeNode representing the root of a tree of items (the root is not to be displayed)
-	 */
-	public static ItemTreeNode getLaunchItemTree() {
-		ItemTreeNode categoryTree =
-			new ItemTreeNode(new ItemDescriptor("<<Root>>", "<<Root>>", null, null, null, null, null));
-
-		// get the platform's public plugin registry
-		IExtensionRegistry extensionRegistry = Platform.getExtensionRegistry();
-		// retrieve all configuration elements registered at our launchItems extension-point
-		IConfigurationElement[] configurationElements =
-			extensionRegistry.getConfigurationElementsFor(LAUNCH_ITEMS_POINT_ID);
-			
-		if (configurationElements == null || configurationElements.length == 0) {
-			logError(getResourceString("error.CouldNotFindRegisteredExtensions"), null);
-			return categoryTree;
-		}
-		
-		/* Collect all launch categories -- coalesce those with same ID */
-		HashMap idMap = new HashMap();
-		for (int i = 0; i < configurationElements.length; ++i) {
-			final IConfigurationElement ce = configurationElements[i];
-			final String ceName = ce.getName();
-			final String attribId = getItemAttribute(ce, LAUNCH_ITEMS_XML_ATTRIB_ID, null);
-			
-			if (idMap.containsKey(attribId)) continue;
-			if (ceName.equalsIgnoreCase(LAUNCH_ITEMS_XML_CATEGORY)) {
-				final String attribName = getItemName(ce); 
-				ItemDescriptor theDescriptor = new ItemDescriptor(attribId, attribName,
-					getItemDescription(ce), null, null, null, null);
-				idMap.put(attribId, new ItemTreeNode(theDescriptor));
-			}
-		}
-		
-		/* Generate launch category hierarchy */
-		Set tempIdSet = new HashSet(); // used to prevent duplicates from being entered into the tree
-		for (int i = 0; i < configurationElements.length; ++i) {
-			final IConfigurationElement ce = configurationElements[i];
-			final String ceName = ce.getName();
-			final String attribId = getItemAttribute(ce, LAUNCH_ITEMS_XML_ATTRIB_ID, null);
-			
-			if (tempIdSet.contains(attribId)) continue;
-			if (ceName.equalsIgnoreCase(LAUNCH_ITEMS_XML_CATEGORY)) {
-				final ItemTreeNode theNode = (ItemTreeNode) idMap.get(attribId);
-				addItemByCategory(ce, categoryTree, theNode, idMap);
-				tempIdSet.add(attribId);
-			}
-		}
-		
-		/* Generate program tree */
-		for (int i = 0; i < configurationElements.length; ++i) {
-			final IConfigurationElement ce = configurationElements[i];
-			final String ceName = ce.getName();
-			final String attribId = getItemAttribute(ce, LAUNCH_ITEMS_XML_ATTRIB_ID, null);
-
-			if (idMap.containsKey(attribId)) continue;
-			if (ceName.equalsIgnoreCase(LAUNCH_ITEMS_XML_CATEGORY)) {
-				// ignore
-			} else if (ceName.equalsIgnoreCase(LAUNCH_ITEMS_XML_ITEM)) {
-				final String enabled = getItemAttribute(ce, LAUNCH_ITEMS_XML_ATTRIB_ENABLED, 
-					LAUNCH_ITEMS_XML_VALUE_TRUE);
-				if (enabled.equalsIgnoreCase(LAUNCH_ITEMS_XML_VALUE_FALSE)) continue;
-				ItemDescriptor theDescriptor = createItemDescriptor(ce, attribId);				
-			
-				if (theDescriptor != null) {
-					final ItemTreeNode theNode = new ItemTreeNode(theDescriptor);
-					addItemByCategory(ce, categoryTree, theNode, idMap);
-					idMap.put(attribId, theNode);
-				}
-			}
-		}
-		return categoryTree;
-	}
-
-				
-	/**
-	 * Adds an item to the category tree.
-	 */
-	private static void addItemByCategory(IConfigurationElement ce, ItemTreeNode root,
-		ItemTreeNode theNode, HashMap idMap) {
-		final String attribCategory = getItemAttribute(ce, LAUNCH_ITEMS_XML_ATTRIB_CATEGORY, null);
-				
-		// locate the parent node
-		ItemTreeNode parentNode = null;
-		if (attribCategory != null) {
-			parentNode = (ItemTreeNode) idMap.get(attribCategory);
-		}
-		if (parentNode == null) parentNode = root;
-				
-		// add the item
-		parentNode.addSortedNode(theNode);
-	}
-
-	/**
-	 * Creates an ItemDescriptor from an XML definition.
-	 * 
-	 * @param ce the IConfigurationElement describing the item
-	 * @param attribId the attribute id
-	 * @return a new ItemDescriptor, or null if an error occurs
-	 */
-	private static ItemDescriptor createItemDescriptor(IConfigurationElement ce, String attribId) {
-		final String attribName = getItemName(ce);
-		final Image  attribIcon = getItemIcon(ce);
-		final String attribDescription = getItemDescription(ce);
-
-		IConfigurationElement viewCE = getItemElement(ce, LAUNCH_ITEMS_XML_VIEW);
-		if (viewCE != null) {
-			//Item is a view
-			final String attribView = getItemAttribute(viewCE, LAUNCH_ITEMS_XML_VIEW_VIEWID, null);		
-			if (attribView == null) {
-				logError(getResourceString("error.IncompleteViewLaunchItem",
-					new Object[] { attribId } ), null);
-				return null;
-			}
-			return new ItemDescriptor(attribId, attribName, attribDescription,
-					attribIcon, attribView, null, null);
-		} else {
-			//Item is a standalone
-			IConfigurationElement programCE = getItemElement(ce, LAUNCH_ITEMS_XML_PROGRAM);
-			if (programCE != null) {
-				final String attribPluginId = getItemAttribute(programCE, LAUNCH_ITEMS_XML_PROGRAM_PLUGIN, null);
-				final String attribClass    = getItemAttribute(programCE, LAUNCH_ITEMS_XML_PROGRAM_CLASS, null);
-				if (attribClass == null || attribPluginId == null) {
-					logError(getResourceString("error.IncompleteProgramLaunchItem",
-					new Object[] { attribId } ), null);
-					return null;
-				}
-				return new ItemDescriptor(attribId, attribName, attribDescription,
-					attribIcon, null, attribClass, attribPluginId);
-			} else {
-				logError(getResourceString("error.IncompleteLaunchItem",
-					new Object[] { attribId } ), null);
-				return null;
-			}
-		}
-	}
-
-	/**
-	 * Returns the first instance of a particular child XML element.
-	 * 
-	 * @param ce the IConfigurationElement parent
-	 * @param element the name of the element to fetch
-	 * @return the element's IConfigurationElement, or null if not found
-	 */
-	private static IConfigurationElement getItemElement(IConfigurationElement ce, String element) {
-		IConfigurationElement[] elementCEs = ce.getChildren(element);
-		return (elementCEs != null && elementCEs.length != 0) ? elementCEs[0] : null;
-	}
-
-	/**
-	 * Returns the value of an XML attribute for an item.
-	 * 
-	 * @param ce the IConfigurationElement describing the item
-	 * @param attribute the attribute to fetch
-	 * @param defaultValue the value to return if the attribute is not found
-	 * @return the attribute value
-	 */
-	private static String getItemAttribute(IConfigurationElement ce, String attribute, String defaultValue) {
-		String value = ce.getAttribute(attribute);
-		return (value != null) ? value : defaultValue;
-	}
-
-	/**
-	 * Returns the description string given the IConfigurationElement for an item.
-	 * 
-	 * @param ce the IConfigurationElement describing the item
-	 * @return a newline-delimited string that describes this item, or null if none
-	 */
-	private static String getItemDescription(IConfigurationElement ce) {
-		String description = getItemAttribute(ce, LAUNCH_ITEMS_XML_ITEM_DESCRIPTION, "");
-		return (description.length() == 0) ? null : description;
-	}
-
-	/**
-	 * Returns the name of an item.
-	 * 
-	 * @param ce the IConfigurationElement describing the item
-	 * @return the attribute value
-	 */
-	private static String getItemName(IConfigurationElement ce) {
-		return getItemAttribute(ce, LAUNCH_ITEMS_XML_ATTRIB_NAME,
-			getResourceString("launchitem.Missing.name"));
-	}
-
-
-	/**
-	 * Returns the icon for an item.
-	 * 
-	 * @param ce the IConfigurationElement describing the item
-	 * @return an icon
-	 */
-	private static Image getItemIcon(IConfigurationElement ce) {
-		String iconPath = getItemAttribute(ce, LAUNCH_ITEMS_XML_ITEM_ICON, "");
-		if (iconPath.length() != 0) {
-			String symbolicName = ce.getDeclaringExtension().getNamespace();
-			Bundle bundle = Platform.getBundle(symbolicName);
-			Image icon = getImageFromPlugin(bundle, iconPath);
-			if (icon != null) {
-				Image[] newImages = new Image[images.length + 1];
-				System.arraycopy(images, 0, newImages, 0, images.length);
-				newImages[images.length] = icon;
-				images = newImages;
-				return icon;
-			}
-		}
-		return images[liGenericExample];
-	}
-
-	/**
-	 * Gets an image from a path relative to the plugin install directory.
-	 *
-	 * @param bundle the plugin descriptor for the plugin with the image
-	 * @param iconPath the path relative to the install directory
-	 * @return the image, or null if not found
-	 */
-	private static Image getImageFromPlugin(Bundle bundle, String iconPath) {
-		InputStream is = null;
-		try {
-			URL installUrl = bundle.getEntry("/");
-			URL url = new URL(installUrl, iconPath);
-			is = url.openConnection().getInputStream();
-			ImageData source = new ImageData(is);
-			ImageData mask = source.getTransparencyMask();
-			Image image = new Image(null, source, mask);
-			return image;
-		} catch (Throwable ex) {
-			return null;
-		} finally {
-			try {
-				if (is != null) is.close();
-			} catch (IOException e) {
-			}
-		}
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherView.java b/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherView.java
deleted file mode 100755
index 663dfd6..0000000
--- a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherView.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.launcher;
-
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.*;
-import org.eclipse.ui.part.*;
-import java.lang.reflect.*;
-
-/**
- * Launcher uses <code>org.eclipse.swt</code> 
- * to launch the other registered examples.
- * 
- * @see ViewPart
- */
-public class LauncherView extends ViewPart {
-	private Shell workbenchShell;
-	
-	private Tree launchTree;
-	private Text descriptionText;
-	private Button runButton;
-
-	/**
-	 * Constructs a LauncherView.
-	 */
-	public LauncherView() {
-		LauncherPlugin.initResources();
-	}
-
-	/**
-	 * Creates the example.
-	 * 
-	 * @see ViewPart#createPartControl
-	 */
-	public void createPartControl(Composite parent) {
-		workbenchShell = getSite().getShell();
-		parent.setLayout(new SplitLayout());
-				
-		Group launchGroup = new Group(parent, SWT.NULL);
-		launchGroup.setText(LauncherPlugin.getResourceString("view.launchGroup.text"));
-		
-		GridLayout gridLayout = new GridLayout();
-		gridLayout.numColumns = 2;
-		launchGroup.setLayout(gridLayout);
-
-		launchTree = new Tree(launchGroup, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-		GridData gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.FILL_VERTICAL);
-		gridData.horizontalSpan = 2;
-		launchTree.setLayoutData(gridData);
-		launchTree.addSelectionListener(new SelectionListener() {
-			public void widgetSelected(SelectionEvent event) {
-				final ItemDescriptor item = getSelectedItem();
-				setDescriptionByItem(item);
-			}
-			public void widgetDefaultSelected(SelectionEvent event) {
-				final ItemDescriptor item = getSelectedItem();
-				setDescriptionByItem(item);
-				launchItem(getSelectedItem());
-			}
-		});
-		launchTree.addTreeListener(new TreeListener() {
-			public void treeCollapsed(TreeEvent event) {
-				final TreeItem item = (TreeItem) event.item;
-				if (item == null) return;
-				item.setImage(LauncherPlugin.images[LauncherPlugin.liClosedFolder]);
-			}
-			public void treeExpanded(TreeEvent event) {
-				final TreeItem item = (TreeItem) event.item;
-				if (item == null) return;
-				item.setImage(LauncherPlugin.images[LauncherPlugin.liOpenFolder]);
-			}
-		});
-
-		runButton = new Button(launchGroup, SWT.PUSH);
-		runButton.setText(LauncherPlugin.getResourceString("view.launchButton.text"));
-		runButton.addSelectionListener(new SelectionListener() {
-			public void widgetSelected(SelectionEvent event) {
-				launchItem(getSelectedItem());
-			}
-			public void widgetDefaultSelected(SelectionEvent event) {
-			}
-		});
-
-		Group descriptionGroup = new Group(parent, SWT.NULL);
-		descriptionGroup.setText(LauncherPlugin.getResourceString("view.descriptionGroup.text"));
-		descriptionGroup.setLayout(new FillLayout());
-		
-		descriptionText = new Text(descriptionGroup, SWT.MULTI | SWT.BORDER |
-			SWT.WRAP | SWT.V_SCROLL | SWT.READ_ONLY);
-
-		setDescriptionByItem(null);
-		setItemDescriptors(LauncherPlugin.getLaunchItemTree());
-	}
-
-	/**
-	 * Called when we must grab focus.
-	 * 
-	 * @see org.eclipse.ui.part.ViewPart#setFocus
-	 */
-	public void setFocus()  {
-		launchTree.setFocus();
-		runButton.getShell().setDefaultButton(runButton);
-	}
-
-	/**
-	 * Called when the View is to be disposed
-	 */	
-	public void dispose() {
-		workbenchShell = null;
-		launchTree = null;
-		descriptionText = null;
-		runButton = null;		
-		super.dispose();
-	}
-
-	/**
-	 * Installs a new launch list.
-	 * 
-	 * @param newRoot the new tree of launch items for the UI
-	 */
-	public void setItemDescriptors(final ItemTreeNode newRoot) {
-		if (workbenchShell == null) return;
-		workbenchShell.getDisplay().syncExec(new Runnable() {
-			public void run() {
-				if ((launchTree == null) || (launchTree.isDisposed())) return;
-				launchTree.removeAll();
-			
-				for (ItemTreeNode node = newRoot.getFirstChild(); node != null;
-					node = node.getNextSibling()) {
-					doNode(node, new TreeItem(launchTree, SWT.NONE)); // top-level TreeItem
-				}
-			}
-			private void addGroup(TreeItem parent, ItemTreeNode node) {
-				for (;node != null; node = node.getNextSibling()) {
-					doNode(node, new TreeItem(parent, SWT.NONE)); // TreeItem at depth > 0
-				}
-			}
-			private void doNode(ItemTreeNode node, TreeItem treeItem) {
-				final ItemDescriptor item = node.getDescriptor();
-				treeItem.setText(item.getName());
-				treeItem.setData(item);
-				if (node.getDescriptor().isFolder()) {
-					treeItem.setExpanded(false);
-					treeItem.setImage(LauncherPlugin.images[LauncherPlugin.liClosedFolder]);
-				} else {
-					treeItem.setImage(node.getDescriptor().getIcon());
-				}
-				addGroup(treeItem, node.getFirstChild());
-			}
-		});
-	}
-
-	/**
-	 * Runs the specified launch item.
-	 * 
-	 * @param itemDescriptor the launch item to execute
-	 */
-	private void launchItem(ItemDescriptor itemDescriptor) {
-		/* Case 1: The launch item is a view */
-		String pluginViewId = itemDescriptor.getView ();
-		if (pluginViewId != null) {
-			final IWorkbenchPart workbenchPart = this;
-			final IWorkbenchPartSite workbenchPartSite = workbenchPart.getSite();
-			final IWorkbenchPage workbenchPage = workbenchPartSite.getPage();
-			try {
-				workbenchPage.showView(pluginViewId);
-			} catch (PartInitException e) {
-				LauncherPlugin.logError(LauncherPlugin.getResourceString("run.error.Invocation"), e);
-			}
-			return;
-		}
-		/* Case 2: The launch item is a standalone program */
-		if (workbenchShell == null) return;
-		try {
-			Class cl = Class.forName(itemDescriptor.getMainType());
-			Display display = workbenchShell.getDisplay();
-			Object exampleInstance = cl.newInstance();
-			Method openMethod = cl.getDeclaredMethod("open", new Class[] {Display.class});
-			openMethod.invoke(exampleInstance, new Object[] {display});
-		} catch (NoSuchMethodException e) {
-			LauncherPlugin.logError(LauncherPlugin.getResourceString("run.error.DoesNotImplementMethod"), null);
-		} catch (ClassNotFoundException e) {
-			LauncherPlugin.logError(LauncherPlugin.getResourceString("run.error.CouldNotFindClass"), e);
-		} catch (Exception e) {
-			LauncherPlugin.logError(LauncherPlugin.getResourceString("run.error.CouldNotInstantiateClass"), e);
-		}		
-	}
-
-	/**
-	 * Obtains the selected launch item.
-	 * 
-	 * @return the currently selected ItemDescriptor
-	 */
-	private ItemDescriptor getSelectedItem() {
-		final TreeItem[] selections = launchTree.getSelection();
-		if (selections.length == 0) return null;
-		final ItemDescriptor itemDescriptor = (ItemDescriptor) selections[0].getData();
-		return itemDescriptor;
-	}
-	
-	/**
-	 * Sets the currently visible description text to reflect that of a particular ItemDescriptor.
-	 *
-	 * @param itemDescriptor the launch item whose description is to be displayed, or null if none
-	 */
-	private void setDescriptionByItem(ItemDescriptor itemDescriptor) {
-		String description;
-		if (itemDescriptor == null) {
-			description = LauncherPlugin.getResourceString("launchitem.Null.description");
-			if (runButton != null) runButton.setEnabled(false);
-		} else {
-			description = itemDescriptor.getDescription();
-			if (description == null)
-				description = LauncherPlugin.getResourceString("launchitem.Missing.description");
-			if (runButton != null) {
-				runButton.setEnabled(itemDescriptor.getView() != null || itemDescriptor.getMainType() != null);
-			}
-		}
-		descriptionText.setText(description);
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/SplitLayout.java b/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/SplitLayout.java
deleted file mode 100755
index 47dbfdd..0000000
--- a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/SplitLayout.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.launcher;
-
- 
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-/**
- * A Layout class that automatically switches from a horizontal split to a vertical
- * split layout to accomodate changing size conditions.
- * 
- * Later on we might improve this class to take into account the "preferred" size of
- * the widgets.
- */
-public class SplitLayout extends Layout {
-	private static final int
-		splitHorizontally = 0,
-		splitVertically = 1;
-	private int splitDirection = splitHorizontally;
-
-	public int spacing = 3;
-	public int marginTop = 3;
-	public int marginLeft = 3;
-	public int marginRight = 3;
-	public int marginBottom = 3;
-
-	/**
-	 * Creates a new layout
-	 */
-	public SplitLayout() {
-	}
-
-	/**
-	 * @see Layout#computeSize(Composite, int, int, boolean)
-	 */
-	protected Point computeSize(Composite composite, int wHint, int hHint, boolean flushCache) {
-		if (wHint == SWT.DEFAULT) {
-			if (hHint == SWT.DEFAULT) {
-				Point hSplitSize = computeHSplitSize(composite, wHint, hHint, flushCache);
-				Point vSplitSize = computeVSplitSize(composite, wHint, hHint, false);
-				int hSplitArea = hSplitSize.x * hSplitSize.y;
-				int vSplitArea = vSplitSize.x * vSplitSize.y;
-				// Choose direction consuming least area
-				if (hSplitArea < vSplitArea) {
-					splitDirection = splitHorizontally;
-					return hSplitSize;
-				} else {
-					splitDirection = splitVertically;
-					return vSplitSize;
-				}
-			} else {
-				// Constrained in height: split vertically
-				splitDirection = splitVertically;
-				return computeVSplitSize(composite, wHint, hHint, flushCache);
-			}
-		} else {
-			if (hHint == SWT.DEFAULT) {
-				// Constrained in width: split horizontally
-				splitDirection = splitHorizontally;
-				return computeHSplitSize(composite, wHint, hHint, flushCache);
-			} else {
-				if (hHint < wHint) {
-					splitDirection = splitVertically;
-					return computeVSplitSize(composite, wHint, hHint, flushCache);
-				} else {
-					splitDirection = splitHorizontally;
-					return computeHSplitSize(composite, wHint, hHint, flushCache);
-				}					
-			}
-		}
-	}
-	/**
-	 * @see Layout#layout(Composite, boolean)
-	 */
-	protected void layout(Composite composite, boolean flushCache) {
-		Rectangle clientArea = composite.getClientArea();
-		computeSize(composite, clientArea.width, clientArea.height, false);
-		
-		Control[] children = composite.getChildren();
-		clientArea.x += marginLeft;
-		clientArea.y += marginTop;
-		clientArea.width -= marginRight + marginLeft;
-		clientArea.height -= marginBottom + marginTop;
-		Point position = new Point(clientArea.x, clientArea.y);
-
-		for (int i = 0; i < children.length; ++i) {
-			final Control child = children[i];
-			final Rectangle bounds;
-			if (splitDirection == splitHorizontally) {
-				int height = clientArea.height / children.length;
-				bounds = new Rectangle(position.x, position.y, clientArea.width, height);
-				position.y += height + spacing;
-			} else {
-				int width = clientArea.width / children.length;
-				bounds = new Rectangle(position.x, position.y, width, clientArea.height);
-				position.x += width + spacing;
-			}
-			bounds.width = Math.max(bounds.width, 0);
-			bounds.height = Math.max(bounds.height, 0);
-			child.setBounds(bounds);
-		}
-	}
-
-	private Point computeHSplitSize(Composite composite, int wHint, int hHint, boolean flushCache) {
-		Point size = new Point(marginLeft + marginRight, marginTop + marginBottom);
-		Control[] children = composite.getChildren();
-		for (int i = 0; i < children.length; ++i) {
-			final Control child = children[i];
-
-			Point childSize = child.computeSize(wHint, hHint, flushCache);
-			size.x = Math.max(size.x, childSize.x);
-			size.y += childSize.y + spacing;
-		}
-		return size;
-	}
-
-	private Point computeVSplitSize(Composite composite, int wHint, int hHint, boolean flushCache) {
-		Point size = new Point(marginLeft + marginRight, marginTop + marginBottom);
-		Control[] children = composite.getChildren();
-		for (int i = 0; i < children.length; ++i) {
-			final Control child = children[i];
-
-			Point childSize = child.computeSize(wHint, hHint, flushCache);
-			size.x += childSize.x + spacing;
-			size.y = Math.max(size.y, childSize.y);
-		}
-		return size;
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.layouts/.classpath b/examples/org.eclipse.swt.examples.layouts/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/examples/org.eclipse.swt.examples.layouts/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.examples.layouts/.cvsignore b/examples/org.eclipse.swt.examples.layouts/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/examples/org.eclipse.swt.examples.layouts/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.layouts/.project b/examples/org.eclipse.swt.examples.layouts/.project
deleted file mode 100644
index a6fc2cb..0000000
--- a/examples/org.eclipse.swt.examples.layouts/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples.layouts</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.examples.layouts/about.html b/examples/org.eclipse.swt.examples.layouts/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.examples.layouts/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.layouts/build.properties b/examples/org.eclipse.swt.examples.layouts/build.properties
deleted file mode 100644
index 1c236e8..0000000
--- a/examples/org.eclipse.swt.examples.layouts/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = doc-html/,\
-               icons/,\
-               plugin.properties,\
-               plugin.xml,\
-               about.html,\
-               *.jar
-
-src.includes = about.html
-
-source.layouts.jar = src/
diff --git a/examples/org.eclipse.swt.examples.layouts/doc-html/hglegal.htm b/examples/org.eclipse.swt.examples.layouts/doc-html/hglegal.htm
deleted file mode 100644
index 6211156..0000000
--- a/examples/org.eclipse.swt.examples.layouts/doc-html/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <LINK REL="stylesheet" HREF="../../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-  <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2004 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.layouts/doc-html/ngibmcpy.gif b/examples/org.eclipse.swt.examples.layouts/doc-html/ngibmcpy.gif
deleted file mode 100644
index c786e43..0000000
--- a/examples/org.eclipse.swt.examples.layouts/doc-html/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.layouts/doc-html/swt_layout_ex.html b/examples/org.eclipse.swt.examples.layouts/doc-html/swt_layout_ex.html
deleted file mode 100644
index 9857c59..0000000
--- a/examples/org.eclipse.swt.examples.layouts/doc-html/swt_layout_ex.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - Layout Example</title>
-</head>
-<body>
-
-<h2>SWT example - Layouts</h2>
-
-<p>
-This example is a simple demonstration of common SWT layouts. 
-It consists of a tab folder where each tab in the folder allows the 
-user to interact with a different SWT layout.
-The user can insert widgets into a layout and set the values of the layout data
-using a property sheet.  When the user has a suitable arrangement, the underlying
-code can be generated by clicking on the <strong>Code</strong> button.
-</p>
-
-<h3>Running the example</h3>
-<p>
-Follow the <a href="../../org.eclipse.swt.examples/doc-html/swt_manual_setup.html">SWT standalone examples setup</a> 
-instructions to install and run the example from your workspace.
-</p>
-<p>
-The "Main" class is <code>org.eclipse.swt.examples.layoutexample.LayoutExample</code>.
-</p>
-<p>
-This example can also be run using the <a href="../../org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html">Example Launcher</a>.
-Select the <strong>Layouts</strong> item from the <strong>Workbench Views</strong> category and click <strong>Run</strong>.
-</p>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.layouts/icons/layouts_example.gif b/examples/org.eclipse.swt.examples.layouts/icons/layouts_example.gif
deleted file mode 100644
index d945dde..0000000
--- a/examples/org.eclipse.swt.examples.layouts/icons/layouts_example.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.layouts/plugin.properties b/examples/org.eclipse.swt.examples.layouts/plugin.properties
deleted file mode 100644
index 59ffc92..0000000
--- a/examples/org.eclipse.swt.examples.layouts/plugin.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-providerName = Eclipse.org
-plugin.SWTLayoutExample.name = SWT Layout Example Plugin
-category.SWTExamples.name = SWT Examples
-view.LayoutExample.name = SWT Layouts
-
-launchcategory.SWTViewExamples.name = Workbench Views
-launchcategory.SWTViewExamples.description = \
-	A collection of Standard Widget Toolkit examples that run as Views inside the Workbench.  \
-	These examples will create a new View in the current Perspective.
-
-launchitem.LayoutExample.name = Layouts
-launchitem.LayoutExample.description = \
-	This example is a simple demonstration of common SWT layouts. \n\n\
-	It consists of a tab folder where each tab allows the \
-	user to interact with a different SWT layout.\
-	The user can insert widgets into a layout and set the values of the layout data \
-	using a property sheet.  When the user has a suitable arrangement, code can be \
-	generated by clicking on the Code button.
diff --git a/examples/org.eclipse.swt.examples.layouts/plugin.xml b/examples/org.eclipse.swt.examples.layouts/plugin.xml
deleted file mode 100644
index 3cac276..0000000
--- a/examples/org.eclipse.swt.examples.layouts/plugin.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.swt.examples.layouts"
-   name="%plugin.SWTLayoutExample.name"
-   version="3.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.swt.examples.layouts.LayoutPlugin">
-
-<!-- Runtime -->
-<!-- Runtime -->
-   <runtime>
-      <library name="layouts.jar">
-            <packages prefixes="org.eclipse.swt.examples.layouts"/>
-      </library>
-   </runtime>
-<!-- Required plugins -->
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.swt"/>
-      <import plugin="org.eclipse.swt.examples"/>
-   </requires>
-
-
-<!-- Extension points -->
-<!-- Extensions -->
-   <extension
-         point="org.eclipse.ui.views">
-      <view
-            name="%view.LayoutExample.name"
-            icon="icons/layouts_example.gif"
-            category="org.eclipse.swt.examples.category"
-            class="org.eclipse.swt.examples.layouts.LayoutView"
-            id="org.eclipse.swt.examples.layouts.view">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.swt.examples.launcher.launchItems">
-      <category
-            name="%launchcategory.SWTViewExamples.name"
-            description="%launchcategory.SWTViewExamples.description"
-            id="org.eclipse.swt.examples.launchViewCategory">
-      </category>
-      <item
-            name="%launchitem.LayoutExample.name"
-            icon="icons/layouts_example.gif"
-            description="%launchitem.LayoutExample.description"
-            category="org.eclipse.swt.examples.launchViewCategory"
-            id="org.eclipse.swt.examples.layouts.viewlauncher">
-         <view
-               viewId="org.eclipse.swt.examples.layouts.view">
-         </view>
-      </item>
-   </extension>
-
-</plugin>
diff --git a/examples/org.eclipse.swt.examples.layouts/src/import.properties b/examples/org.eclipse.swt.examples.layouts/src/import.properties
deleted file mode 100644
index 58344f0..0000000
--- a/examples/org.eclipse.swt.examples.layouts/src/import.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# Persist project settings for later import 
-natures = org.eclipse.jdt.core.javanature; org.eclipse.pde.PluginNature
-builders = org.eclipse.jdt.core.javabuilder; org.eclipse.pde.ManifestBuilder; org.eclipse.pde.SchemaBuilder
-var.ECLIPSE_PLUGINS = <<ECLIPSE_PLUGINS>>
diff --git a/examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutPlugin.java b/examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutPlugin.java
deleted file mode 100644
index 2f97633..0000000
--- a/examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutPlugin.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.layouts;
-
-
-import org.eclipse.ui.plugin.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class LayoutPlugin extends AbstractUIPlugin {
-	/**
-	 * The constructor.
-	 */
-	public LayoutPlugin() {
-		super();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutView.java b/examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutView.java
deleted file mode 100644
index a765800..0000000
--- a/examples/org.eclipse.swt.examples.layouts/src/org/eclipse/swt/examples/layouts/LayoutView.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.layouts;
-
- 
-import org.eclipse.swt.examples.layoutexample.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.part.*;
-
-/**
- * <code>Layouts</code> is a simple demonstration
- * of the layouts defined by SWT.  It consists of a workbench
- * view and tab folder where each tab in the folder allows the
- * user to interact with a layout.
- * 
- * @see ViewPart
- */
-public class LayoutView extends ViewPart {
-	LayoutExample instance = null;
-	
-	/**
-	 * Create the example
-	 * 
-	 * @see ViewPart#createPartControl
-	 */
-	public void createPartControl(Composite frame) {
-		instance = new LayoutExample(frame);
-	}
-
-	/**
-	 * Called when we must grab focus.
-	 * 
-	 * @see org.eclipse.ui.part.ViewPart#setFocus
-	 */
-	public void setFocus() {
-		instance.setFocus();
-	}
-
-	/**
-	 * Called when the View is to be disposed
-	 */	
-	public void dispose() {
-		instance.dispose();
-		instance = null;
-		super.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.ole.win32/.classpath b/examples/org.eclipse.swt.examples.ole.win32/.classpath
deleted file mode 100755
index 065ac06..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.examples.ole.win32/.cvsignore b/examples/org.eclipse.swt.examples.ole.win32/.cvsignore
deleted file mode 100755
index c5e82d7..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.ole.win32/.project b/examples/org.eclipse.swt.examples.ole.win32/.project
deleted file mode 100644
index ff00f68..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples.ole.win32</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.examples.ole.win32/about.html b/examples/org.eclipse.swt.examples.ole.win32/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.ole.win32/build.properties b/examples/org.eclipse.swt.examples.ole.win32/build.properties
deleted file mode 100755
index c30cc18..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = doc-html/,\
-               icons/,\
-               plugin.properties,\
-               plugin.xml,\
-               about.html,\
-               *.jar
-
-src.includes = about.html
-            
-source.olewin32.jar = src/
diff --git a/examples/org.eclipse.swt.examples.ole.win32/doc-html/hglegal.htm b/examples/org.eclipse.swt.examples.ole.win32/doc-html/hglegal.htm
deleted file mode 100755
index 6211156..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/doc-html/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <LINK REL="stylesheet" HREF="../../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-  <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2004 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.ole.win32/doc-html/ngibmcpy.gif b/examples/org.eclipse.swt.examples.ole.win32/doc-html/ngibmcpy.gif
deleted file mode 100755
index c786e43..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/doc-html/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/doc-html/swt_ole_ex.html b/examples/org.eclipse.swt.examples.ole.win32/doc-html/swt_ole_ex.html
deleted file mode 100755
index 55fa8f9..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/doc-html/swt_ole_ex.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - OLE Web Browser</title>
-</head>
-<body>
-
-<h2>SWT example - OLE Web Browser</h2>
-
-<p>
-This example shows how to embed an Active X control into an SWT application or an Eclipse view.
-<p>
-</p>
-When the view is opened, it will create an instance of the Windows Internet Explorer
-control.  The OLE web browser has
-<strong>Back</strong> and <strong>Forward</strong> buttons to take you to recently visited pages.  The browser also contains
-a <strong>Home</strong> button to take you to the web browser's home page, a <strong>Stop</strong> button which stops the 
-current transfer, a <strong>Search</strong> button which will search for text typed in the <strong>Address</strong> text field, and
-a <strong>Refresh</strong> button which re-draws the contents of the currently displayed page. There is also a
-<strong>Go</strong> button which, when clicked, will attempt to load the page specified in the <strong>Address</strong> field.
-</p>
-
-<h3>Running the example</h3>
-
-<p>
-From Eclipse's <strong>Window</strong> menu select <strong>Show View</strong> &gt; <strong>Other</strong>.  
-In the <strong>Show View</strong> dialog, expand <strong>SWT Examples</strong> and select
-the view named <strong>OLE Web Browser (win32)</strong>. A view containing a web browser will appear.
-</p>
-<p>
-This example can also be run using the <a href="../../org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html">Example Launcher</a>.
-Select the <strong>OLE Web Browser</strong> item from the <strong>Win32 only</strong> category and click <strong>Run</strong>.
-</p>
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.ole.win32/icons/backward_nav.gif b/examples/org.eclipse.swt.examples.ole.win32/icons/backward_nav.gif
deleted file mode 100755
index 5fcf41b..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/icons/backward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/icons/forward_nav.gif b/examples/org.eclipse.swt.examples.ole.win32/icons/forward_nav.gif
deleted file mode 100755
index 3b9b6af..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/icons/forward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/icons/home_nav.gif b/examples/org.eclipse.swt.examples.ole.win32/icons/home_nav.gif
deleted file mode 100755
index 77a2306..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/icons/home_nav.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/icons/refresh_nav.gif b/examples/org.eclipse.swt.examples.ole.win32/icons/refresh_nav.gif
deleted file mode 100755
index e270e18..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/icons/refresh_nav.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/icons/search_nav.gif b/examples/org.eclipse.swt.examples.ole.win32/icons/search_nav.gif
deleted file mode 100755
index 73ac91b..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/icons/search_nav.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/icons/stop_nav.gif b/examples/org.eclipse.swt.examples.ole.win32/icons/stop_nav.gif
deleted file mode 100755
index 653d347..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/icons/stop_nav.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/icons/webbrowser_example.gif b/examples/org.eclipse.swt.examples.ole.win32/icons/webbrowser_example.gif
deleted file mode 100755
index 895e221..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/icons/webbrowser_example.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.ole.win32/plugin.properties b/examples/org.eclipse.swt.examples.ole.win32/plugin.properties
deleted file mode 100755
index f7fa735..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/plugin.properties
+++ /dev/null
@@ -1,60 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-providerName = Eclipse.org
-plugin.SWTOLEExample.name = SWT OLE Example Plugin (Win32)
-category.SWTExamples.name = SWT Examples
-view.OLEWebBrowserExample.name = OLE Web Browser (Win32)
-
-launchcategory.SWTWin32OnlyExamples.name = Win32 only
-launchcategory.SWTWin32OnlyExamples.description = \
-	A collection of Standard Widget Toolkit examples for Windows systems only.
-
-launchitem.OLEWebBrowserExample.name = OLE Web Browser
-launchitem.OLEWebBrowserExample.description = \
-	This example demonstrates how to embed an Active X control into an SWT application or an Eclipse view.\n\n\
-	When the view is opened, it will create an instance of the Windows Internet Explorer \
-	control.  The OLE Web Browser has \
-	Back and Forward buttons to take you to recently visited pages.  The browser also contains \
-	a Home button to take you to the web browser's home page, a Stop button which stops the \
-	current transfer, a Search button which will search for text typed in the Address text field, and \
-	a Refresh button which re-draws the contents of the currently displayed page. There is also a \
-	Go button which, when clicked, will attempt to load the page specified in the Address field.
-
-browser.Back.text = Backward
-browser.Back.tooltip = Go to previous Web site in the history list
-
-browser.Forward.text = Forward
-browser.Forward.tooltip = Go to next Web site in the history list
-
-browser.Home.text = Home
-browser.Home.tooltip = Go to home Web site
-
-browser.Stop.text = Stop
-browser.Stop.tooltip = Stop loading current Web site
-
-browser.Refresh.text = Refresh
-browser.Refresh.tooltip = Refresh current Web site
-
-browser.Search.text = Search
-browser.Search.tooltip = Search the Web
-
-browser.Address.label = Address :
-
-browser.Go.text = Go
-
-browser.State.Uninitialized.text = Not ready.
-browser.State.Loading.text = Loading Web site...
-browser.State.Loaded.text = Ready.
-browser.State.Interactive.text = Loading Web site...
-browser.State.Complete.text = Done.
-
-error.CouldNotLoadResources = Unable to load resources
-error.CouldNotCreateBrowserControl = Unable to create <<Browser Control>>
diff --git a/examples/org.eclipse.swt.examples.ole.win32/plugin.xml b/examples/org.eclipse.swt.examples.ole.win32/plugin.xml
deleted file mode 100755
index d7a9dcc..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/plugin.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<!-- File written by PDE 1.0 -->
-<plugin
-   id="org.eclipse.swt.examples.ole.win32"
-   name="%plugin.SWTOLEExample.name"
-   version="3.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.swt.examples.ole.win32.OlePlugin">
-<!-- Required plugins -->
-<requires>
-   <import plugin="org.eclipse.ui.ide"/>
-   <import plugin="org.eclipse.ui.views"/>
-   <import plugin="org.eclipse.jface.text"/>
-   <import plugin="org.eclipse.ui.workbench.texteditor"/>
-   <import plugin="org.eclipse.ui.editors"/>
-   <import plugin="org.eclipse.core.runtime"/>
-   <import plugin="org.eclipse.core.resources"/>
-   <import plugin="org.eclipse.ui"/>
-   <import plugin="org.eclipse.swt"/>
-</requires>
-
-<!-- Runtime -->
-<!-- Runtime -->
-<runtime>
-   <library name="olewin32.jar">
-      <packages prefixes="org.eclipse.swt.examples.ole"/>
-   </library>
-</runtime>
-
-<!-- Extensions -->
-<!-- Extension points -->
-<extension
-      point="org.eclipse.ui.views">
-   <view
-         name="%view.OLEWebBrowserExample.name"
-         icon="icons/webbrowser_example.gif"
-         category="org.eclipse.swt.examples.category"
-         class="org.eclipse.swt.examples.ole.win32.OleBrowserView"
-         id="org.eclipse.swt.examples.ole.win32.browserView">
-   </view>
-</extension>
-<extension
-      point="org.eclipse.swt.examples.launcher.launchItems">
-   <category
-         name="%launchcategory.SWTWin32OnlyExamples.name"
-         description="%launchcategory.SWTWin32OnlyExamples.description"
-         id="org.eclipse.swt.examples.launchWin32OnlyCategory">
-   </category>
-   <item
-         name="%launchitem.OLEWebBrowserExample.name"
-         icon="icons/webbrowser_example.gif"
-         description="%launchitem.OLEWebBrowserExample.description"
-         category="org.eclipse.swt.examples.launchWin32OnlyCategory"
-         id="org.eclipse.swt.examples.ole.win32.viewlauncher">
-      <view
-            viewId="org.eclipse.swt.examples.ole.win32.browserView">
-      </view>
-   </item>
-</extension>
-</plugin>
diff --git a/examples/org.eclipse.swt.examples.ole.win32/src/import.properties b/examples/org.eclipse.swt.examples.ole.win32/src/import.properties
deleted file mode 100644
index 58344f0..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/src/import.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# Persist project settings for later import 
-natures = org.eclipse.jdt.core.javanature; org.eclipse.pde.PluginNature
-builders = org.eclipse.jdt.core.javabuilder; org.eclipse.pde.ManifestBuilder; org.eclipse.pde.SchemaBuilder
-var.ECLIPSE_PLUGINS = <<ECLIPSE_PLUGINS>>
diff --git a/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleBrowserView.java b/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleBrowserView.java
deleted file mode 100755
index 84323f8..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleBrowserView.java
+++ /dev/null
@@ -1,370 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.ole.win32;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.ole.win32.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.part.*;
-
-/**
- * Ole uses <code>org.eclipse.swt</code> to demonstrate Win32 OLE / ActiveX
- * integration.
- * 
- * @see ViewPart
- */
-public class OleBrowserView extends ViewPart {
-
-	private Composite      displayArea;
-
-	private OleFrame       webFrame;
-	private OleWebBrowser  webBrowser;
-	private Text           webUrl;
-	private OleControlSite webControlSite;
-	private ProgressBar    webProgress;
-	private Label          webStatus;
-	private Button         webNavigateButton;
-	
-	private ToolItem webCommandBackward;
-	private ToolItem webCommandForward;
-	private ToolItem webCommandHome;
-	private ToolItem webCommandStop;
-	private ToolItem webCommandRefresh;
-	private ToolItem webCommandSearch;
-	
-	private boolean activated = false;
-
-	private static final int DISPID_AMBIENT_DLCONTROL = -5512;
-	private static final int DLCTL_NO_SCRIPTS = 0x80;
-	
-	/**
-	 * Constructs the OLE browser view.
-	 */
-	public OleBrowserView() {
-		OlePlugin.initResources();
-	}
-
-	/**
-	 * Creates the example.
-	 * 
-	 * @see ViewPart#createPartControl
-	 */
-	public void createPartControl(Composite parent) {
-		displayArea = new Composite(parent, SWT.NONE);
-
-		GridLayout gridLayout = new GridLayout();
-		gridLayout.numColumns = 3;
-		displayArea.setLayout(gridLayout);
-		
-		createToolbar();
-		createBrowserFrame();		
-		createStatusArea();
-		createBrowserControl();	
-	}
-	
-	/**
-	 * Cleanup
-	 */
-	public void dispose() {
-		if (activated) {
-			webControlSite.deactivateInPlaceClient();
-			activated = false;
-		}
-		if (webBrowser != null) webBrowser.dispose();
-		webBrowser = null;
-		super.dispose();
-	}
-	
-	/**
-	 * Called when we must grab focus.
-	 * 
-	 * @see org.eclipse.ui.part.ViewPart#setFocus
-	 */
-	public void setFocus()  {
-		webUrl.setFocus();
-	}
-
-	/**
-	 * Creates the Web browser toolbar.
-	 */
-	private void createToolbar() {
-		// Add a toolbar
-		ToolBar bar = new ToolBar(displayArea, SWT.NONE);
-		GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
-		gridData.horizontalSpan = 3;
-		bar.setLayoutData(gridData);
-		
-		// Add a button to navigate backwards through previously visited web sites
-		webCommandBackward = new ToolItem(bar, SWT.NONE);
-		webCommandBackward.setToolTipText(OlePlugin.getResourceString("browser.Back.tooltip"));
-		webCommandBackward.setText(OlePlugin.getResourceString("browser.Back.text"));
-		webCommandBackward.setImage(OlePlugin.images[OlePlugin.biBack]);
-		webCommandBackward.setEnabled(false);
-		webCommandBackward.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (webBrowser == null) return;
-				webBrowser.GoBack();
-			}
-		});
-	
-		// Add a button to navigate forward through previously visited web sites
-		webCommandForward = new ToolItem(bar, SWT.NONE);
-		webCommandForward.setToolTipText(OlePlugin.getResourceString("browser.Forward.tooltip"));
-		webCommandForward.setText(OlePlugin.getResourceString("browser.Forward.text"));
-		webCommandForward.setImage(OlePlugin.images[OlePlugin.biForward]);
-		webCommandForward.setEnabled(false);
-		webCommandForward.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (webBrowser == null) return;
-				webBrowser.GoForward();
-			}
-		});
-
-		// Add a separator
-		new ToolItem(bar, SWT.SEPARATOR);
-		
-		// Add a button to navigate to the Home page
-		webCommandHome = new ToolItem(bar, SWT.NONE);
-		webCommandHome.setToolTipText(OlePlugin.getResourceString("browser.Home.tooltip"));
-		webCommandHome.setText(OlePlugin.getResourceString("browser.Home.text"));
-		webCommandHome.setImage(OlePlugin.images[OlePlugin.biHome]);
-		webCommandHome.setEnabled(false);
-		webCommandHome.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (webBrowser == null) return;
-				webBrowser.GoHome();
-			}
-		});
-
-		// Add a button to abort web page loading
-		webCommandStop = new ToolItem(bar, SWT.NONE);
-		webCommandStop.setToolTipText(OlePlugin.getResourceString("browser.Stop.tooltip"));
-		webCommandStop.setText(OlePlugin.getResourceString("browser.Stop.text"));
-		webCommandStop.setImage(OlePlugin.images[OlePlugin.biStop]);
-		webCommandStop.setEnabled(false);
-		webCommandStop.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (webBrowser == null) return;
-				webBrowser.Stop();
-			}
-		});
-
-		// Add a button to refresh the current web page
-		webCommandRefresh = new ToolItem(bar, SWT.NONE);
-		webCommandRefresh.setToolTipText(OlePlugin.getResourceString("browser.Refresh.tooltip"));
-		webCommandRefresh.setText(OlePlugin.getResourceString("browser.Refresh.text"));
-		webCommandRefresh.setImage(OlePlugin.images[OlePlugin.biRefresh]);
-		webCommandRefresh.setEnabled(false);
-		webCommandRefresh.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (webBrowser == null) return;
-				webBrowser.Refresh();
-			}
-		});
-
-		// Add a separator
-		new ToolItem(bar, SWT.SEPARATOR);
-
-		// Add a button to search the web
-		webCommandSearch = new ToolItem(bar, SWT.NONE);
-		webCommandSearch.setToolTipText(OlePlugin.getResourceString("browser.Search.tooltip"));
-		webCommandSearch.setText(OlePlugin.getResourceString("browser.Search.text"));
-		webCommandSearch.setImage(OlePlugin.images[OlePlugin.biSearch]);
-		webCommandSearch.setEnabled(false);
-		webCommandSearch.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (webBrowser == null) return;
-				webBrowser.GoSearch();
-			}
-		});
-
-		// Add a text area for Users to enter a url
-		Composite addressBar = new Composite(displayArea, SWT.NONE);
-		gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
-		gridData.horizontalSpan = 3;
-		addressBar.setLayoutData(gridData);
-		GridLayout gridLayout = new GridLayout();
-		gridLayout.numColumns = 3;
-		addressBar.setLayout(gridLayout);
-
-		Label addressLabel = new Label(addressBar, SWT.NONE);
-		gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_FILL);
-		addressLabel.setLayoutData(gridData);
-		addressLabel.setText(OlePlugin.getResourceString("browser.Address.label"));
-		addressLabel.setFont(OlePlugin.browserFont);
-		
-		webUrl = new Text(addressBar, SWT.SINGLE | SWT.BORDER);
-		webUrl.setFont(OlePlugin.browserFont);
-		gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
-		webUrl.setLayoutData(gridData);
-		webUrl.addFocusListener(new FocusAdapter() {
-			public void focusGained(FocusEvent e) {
-				webNavigateButton.getShell().setDefaultButton(webNavigateButton);
-			}
-		});
-	
-		// Add a button to navigate to the web site specified in the Text area defined above
-		webNavigateButton = new Button(addressBar, SWT.PUSH);
-		gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_FILL);
-		webNavigateButton.setLayoutData(gridData);
-		webNavigateButton.setText(OlePlugin.getResourceString("browser.Go.text"));
-		webNavigateButton.setFont(OlePlugin.browserFont);
-		webNavigateButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event event) {
-				if (webBrowser == null) return;
-				webBrowser.Navigate(webUrl.getText());
-			}
-		});
-	}
-
-	/**
-	 * Creates the Web browser OleFrame.
-	 */
-	private void createBrowserFrame() {
-		// Every control must have an associated OleFrame:
-		webFrame = new OleFrame(displayArea, SWT.NONE);
-		GridData gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.FILL_VERTICAL);
-		gridData.horizontalSpan = 3;
-		webFrame.setLayoutData(gridData);
-	}
-	
-	/**
-	 * Creates the Web browser status area.
-	 */
-	private void createStatusArea() {
-		// Add a progress bar to display downloading progress information
-		webProgress = new ProgressBar(displayArea, SWT.BORDER);
-		GridData gridData = new GridData();
-		gridData.horizontalAlignment = GridData.BEGINNING;
-		gridData.verticalAlignment = GridData.FILL;
-		webProgress.setLayoutData(gridData);		
-
-		// Add a label for displaying status messages as they are received from the control
-		webStatus = new Label(displayArea, SWT.SINGLE | SWT.READ_ONLY | SWT.BORDER);
-		gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
-		gridData.horizontalSpan = 2;
-		webStatus.setLayoutData(gridData);
-		webStatus.setFont(OlePlugin.browserFont);
-	}	
-
-	/**
-	 * Creates Web browser control.
-	 */
-	private void createBrowserControl() {
-		try {
-			// Create an Automation object for access to extended capabilities
-			webControlSite = new OleControlSite(webFrame, SWT.NONE, "Shell.Explorer");
-			Variant download = new Variant(DLCTL_NO_SCRIPTS);
-			webControlSite.setSiteProperty(DISPID_AMBIENT_DLCONTROL, download);
-			OleAutomation oleAutomation = new OleAutomation(webControlSite);
-			webBrowser = new OleWebBrowser(oleAutomation);
-		} catch (SWTException ex) {
-			// Creation may have failed because control is not installed on machine
-			Label label = new Label(webFrame, SWT.BORDER);
-			OlePlugin.logError(OlePlugin.getResourceString("error.CouldNotCreateBrowserControl"), ex);
-			label.setText(OlePlugin.getResourceString("error.CouldNotCreateBrowserControl"));
-			return;
-		}
-
-		// Respond to ProgressChange events by updating the Progress bar
-		webControlSite.addEventListener(OleWebBrowser.ProgressChange, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				Variant progress = event.arguments[0];
-				Variant maxProgress = event.arguments[1];
-				if (progress == null || maxProgress == null)
-					return;
-				webProgress.setMaximum(maxProgress.getInt());
-				webProgress.setSelection(progress.getInt());
-			}
-		});
-		
-		// Respond to StatusTextChange events by updating the Status Text label
-		webControlSite.addEventListener(OleWebBrowser.StatusTextChange, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				Variant statusText = event.arguments[0];
-				if (statusText == null)	return;
-				String text = statusText.getString();
-				if (text != null)
-					webStatus.setText(text);
-			}
-		});
-		
-		// Listen for changes to the ready state and print out the current state 
-		webControlSite.addPropertyListener(OleWebBrowser.DISPID_READYSTATE, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				if (event.detail == OLE.PROPERTY_CHANGING) return;
-				int state = webBrowser.getReadyState();
-				switch (state) {
-					case OleWebBrowser.READYSTATE_UNINITIALIZED:
-						webStatus.setText(
-							OlePlugin.getResourceString("browser.State.Uninitialized.text"));
-						webCommandBackward.setEnabled(false);
-						webCommandForward.setEnabled(false);
-						webCommandHome.setEnabled(false);
-						webCommandRefresh.setEnabled(false);
-						webCommandStop.setEnabled(false);
-						webCommandSearch.setEnabled(false);
-						break;
-					case OleWebBrowser.READYSTATE_LOADING:
-						webStatus.setText(
-							OlePlugin.getResourceString("browser.State.Loading.text"));
-						webCommandHome.setEnabled(true);
-						webCommandRefresh.setEnabled(true);
-						webCommandStop.setEnabled(true);
-						webCommandSearch.setEnabled(true);
-						break;
-					case OleWebBrowser.READYSTATE_LOADED:
-						webStatus.setText(
-							OlePlugin.getResourceString("browser.State.Loaded.text"));
-						webCommandStop.setEnabled(true);
-						break;
-					case OleWebBrowser.READYSTATE_INTERACTIVE:
-						webStatus.setText(
-							OlePlugin.getResourceString("browser.State.Interactive.text"));
-						webCommandStop.setEnabled(true);
-						break;
-					case OleWebBrowser.READYSTATE_COMPLETE:
-						webStatus.setText(
-							OlePlugin.getResourceString("browser.State.Complete.text"));
-						webCommandStop.setEnabled(false);
-						break;
-				}
-			}
-		});
-
-		// Listen for changes to the active command states
-		webControlSite.addEventListener(OleWebBrowser.CommandStateChange, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				if (event.type != OleWebBrowser.CommandStateChange) return;
-				final int commandID =
-					(event.arguments[0] != null) ? event.arguments[0].getInt() : 0;
-				final boolean commandEnabled =
-					(event.arguments[1] != null) ? event.arguments[1].getBoolean() : false;
-				
-				switch (commandID) {
-					case OleWebBrowser.CSC_NAVIGATEBACK:
-					 	webCommandBackward.setEnabled(commandEnabled);
-					 	break;
-					case OleWebBrowser.CSC_NAVIGATEFORWARD:
-					 	webCommandForward.setEnabled(commandEnabled);
-						break;
-				}
-			}
-		});
-
-		// in place activate the ActiveX control		
-		activated = (webControlSite.doVerb(OLE.OLEIVERB_INPLACEACTIVATE) == OLE.S_OK);
-		if (activated) webBrowser.GoHome();
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OlePlugin.java b/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OlePlugin.java
deleted file mode 100755
index 88c8dc6..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OlePlugin.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.ole.win32;
-
-
-import java.io.*;
-import java.net.*;
-import java.text.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class OlePlugin extends AbstractUIPlugin {
-	//The shared instance.
-	private static OlePlugin plugin;
-	private static ResourceBundle resourceBundle;
-
-	static final int
-		biBack = 0,
-		biForward = 1,
-		biHome = 2,
-		biStop = 3,
-		biRefresh = 4,
-		biSearch = 5;
-	static final String[] imageLocations = {
-		"icons/backward_nav.gif",
-		"icons/forward_nav.gif",
-		"icons/home_nav.gif",
-		"icons/stop_nav.gif",
-		"icons/refresh_nav.gif",
-		"icons/search_nav.gif" };
-	static Image images[];
-	static Font  browserFont;
-   
-	/**
-	 * Constructs an OLE plugin.
-	 */
-	public OlePlugin() {
-		super();
-		plugin = this;
-	}
-	
-    public void start(BundleContext context) throws Exception {
-        super.start(context);
-        resourceBundle = Platform.getResourceBundle(getBundle());
-    }
-    
-	/**
-	 * Clean up
-	 */
-	public void stop(BundleContext context) throws Exception {
-		freeResources();
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static OlePlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns a string from the resource bundle.
-	 * We don't want to crash because of a missing String.
-	 * Returns the key if not found.
-	 */
-	public static String getResourceString(String key) {
-		try {
-			return resourceBundle.getString(key);
-		} catch (MissingResourceException e) {
-			return key;
-		} catch (NullPointerException e) {
-			return "!" + key + "!";
-		}			
-	}
-
-	/**
-	 * Returns a string from the resource bundle and binds it
-	 * with the given arguments. If the key is not found,
-	 * return the key.
-	 */
-	public static String getResourceString(String key, Object[] args) {
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (MissingResourceException e) {
-			return key;
-		} catch (NullPointerException e) {
-			return "!" + key + "!";
-		}
-	}
-
-	/**
-	 * Log an error to the ILog for this plugin
-	 * 
-	 * @param message the localized error message text
-	 * @param exception the associated exception, or null
-	 */
-	public static void logError(String message, Throwable exception) {
-		plugin.getLog().log(new Status(
-			IStatus.ERROR, plugin.getBundle().getSymbolicName(), 0, message, exception));
-	}
-
-	/**
-	 * Loads the resources.
-	 */
-	public static void initResources() {
-		if (images == null) {
-			images = new Image[imageLocations.length];
-				
-			for (int i = 0; i < imageLocations.length; ++i) {
-				images[i] = getImageFromPlugin(plugin.getBundle(), imageLocations[i]);
-				if (images[i] == null) {
-					freeResources();
-					logError(getResourceString("error.CouldNotLoadResources"), null);
-					throw new IllegalStateException();
-				}
-			}
-		}
-		if (browserFont == null) {
-			try {
-				browserFont = new Font (null, "MS Sans Serif", 8, SWT.NULL);
-			} catch (Throwable ex) {
-			}
-		}
-		if (images == null || browserFont == null) {
-			freeResources();
-			logError(getResourceString("error.CouldNotLoadResources"), null);
-			throw new IllegalStateException();
-		}
-	}
-
-	/**
-	 * Frees the resources
-	 */
-	public static void freeResources() {
-		if (images != null) {
-			for (int i = 0; i < images.length; ++i) {
-				final Image image = images[i];
-				if (image != null) image.dispose();
-			}
-			images = null;
-		}
-		if (browserFont != null) browserFont.dispose ();
-		browserFont = null;
-	}
-	
-	/**
-	 * Gets an image from a path relative to the plugin install directory.
-	 *
-	 * @param pd the plugin descriptor for the plugin with the image
-	 * @param iconPath the path relative to the install directory
-	 * @return the image, or null if not found
-	 */
-	private static Image getImageFromPlugin(Bundle bundle, String iconPath) {
-		InputStream is = null;
-		try {
-			URL installUrl = bundle.getEntry("/");
-			URL url = new URL(installUrl, iconPath);
-			is = url.openConnection().getInputStream();
-			ImageData source = new ImageData(is);
-			ImageData mask = source.getTransparencyMask();
-			Image image = new Image(null, source, mask);
-			return image;
-		} catch (Throwable ex) {
-			return null;
-		} finally {
-			try {
-				if (is != null) is.close();
-			} catch (IOException e) {
-			}
-		}
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleWebBrowser.java b/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleWebBrowser.java
deleted file mode 100755
index 38d3534..0000000
--- a/examples/org.eclipse.swt.examples.ole.win32/src/org/eclipse/swt/examples/ole/win32/OleWebBrowser.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.ole.win32;
-
-
-import org.eclipse.swt.ole.win32.*;
-
-/**
- * Wrapper for an OleAutomation object used to send commands
- * to a Win32 "Shell.Explorer" OLE control.
- * 
- * Instances of this class manage the setup, typical use and teardown of
- * a simple web browser.
- */
-class OleWebBrowser {
-	/* See the Windows Platform SDK documentation for more information about the
-	 * OLE control used here and its usage.
-	 */
-	// Generated from typelib filename: shdocvw.dll
-
-	// Constants for WebBrowser CommandStateChange
-	public static final int CSC_UPDATECOMMANDS = -1;
-	public static final int CSC_NAVIGATEFORWARD = 1;
-	public static final int CSC_NAVIGATEBACK = 2;
-
-	// COnstants for Web Browser ReadyState
-	public static final int READYSTATE_UNINITIALIZED = 0;
-	public static final int READYSTATE_LOADING = 1;
-	public static final int READYSTATE_LOADED = 2;
-	public static final int READYSTATE_INTERACTIVE = 3;
-	public static final int READYSTATE_COMPLETE = 4;
-	
-	// Web Browser Control Events 
-	public static final int BeforeNavigate        = 100; // Fired when a new hyperlink is being navigated to.
-	public static final int NavigateComplete      = 101; // Fired when the document being navigated to becomes visible and enters the navigation stack.
-	public static final int StatusTextChange      = 102; // Statusbar text changed.
-	public static final int ProgressChange        = 108; // Fired when download progress is updated.
-	public static final int DownloadComplete      = 104; // Download of page complete.
-	public static final int CommandStateChange    = 105; // The enabled state of a command changed
-	public static final int DownloadBegin         = 106; // Download of a page started.
-	public static final int NewWindow             = 107; // Fired when a new window should be created.
-	public static final int TitleChange           = 113; // Document title changed.
-	public static final int FrameBeforeNavigate   = 200; // Fired when a new hyperlink is being navigated to in a frame.
-	public static final int FrameNavigateComplete = 201; // Fired when a new hyperlink is being navigated to in a frame.
-	public static final int FrameNewWindow        = 204; // Fired when a new window should be created.
-	public static final int Quit                  = 103; // Fired when application is quiting.
-	public static final int WindowMove            = 109; // Fired when window has been moved.
-	public static final int WindowResize          = 110; // Fired when window has been sized.
-	public static final int WindowActivate        = 111; // Fired when window has been activated.
-	public static final int PropertyChange        = 112; // Fired when the PutProperty method has been called.
-
-	// Web Browser properties
-	public static final int DISPID_READYSTATE = -525;
-
-	private OleAutomation  oleAutomation;
-
-	/**
-	 * Creates a Web browser control.
-	 * <p>
-	 * Typical use:<br>
-	 * <code>
-	 * OleControlSite oleControlSite = new OleControlSite(oleFrame, style, "Shell.Explorer");<br>
-	 * OleAutomation oleAutomation = new OleAutomation(oleControlSite);<br>
-	 * OleWebBrowser webBrowser = new OleWebBrowser(oleControlSite, oleAutomation);<br>
-	 * </code>
-	 * 
-     * @param oleAutomation the OleAutomation object for this control.
-     * @param oleControlSite the OleControlSite object for this control.
-	 */
-	public OleWebBrowser(OleAutomation oleAutomation) {
-		this.oleAutomation = oleAutomation;
-	}
-	
-	
-	/**
-	 * Disposes of the Web browser control.
-	 */
-	public void dispose() {
-		if (oleAutomation != null) oleAutomation.dispose();
-		oleAutomation = null;
-	}
-	
-	/*
-	 * Interact with the Control via OLE Automation
-	 * 
-	 * Note: You can hard code the DISPIDs if you know them beforehand
-	 *       this is of course the fastest way, but you increase coupling
-	 *       to the control.
-	 */
-	 
-	/**
-	 * Returns the current web page title.
-	 * 
-	 * @return the current web page title String
-	 */
-	public String getLocationName() {
-		// dispid=210, type=PROPGET, name="LocationName"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"LocationName"}); 
-		int dispIdMember = rgdispid[0];
-		Variant pVarResult = oleAutomation.getProperty(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() != OLE.VT_BSTR) return null;
-		return pVarResult.getString();
-	}
-	
-	/**
-	 * Returns the current URL.
-	 * 
-	 * @return the current URL String
-	 */
-	public String getLocationURL() {
-		// dispid=211, type=PROPGET, name="LocationURL"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"LocationURL"}); 
-		int dispIdMember = rgdispid[0];
-		
-		Variant pVarResult = oleAutomation.getProperty(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() != OLE.VT_BSTR) return null;
-		return pVarResult.getString();
-	}
-	
-	/**
-	 * Returns the current state of the control.
-	 * 
-	 * @return the current state of the control, one of:
-	 *         READYSTATE_UNINITIALIZED;
-	 *         READYSTATE_LOADING;
-	 *         READYSTATE_LOADED;
-	 *         READYSTATE_INTERACTIVE;
-	 *         READYSTATE_COMPLETE.
-	 */
-	public int getReadyState() {
-		// dispid=4294966771, type=PROPGET, name="ReadyState"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"ReadyState"}); 
-		int dispIdMember = rgdispid[0];
-		
-		Variant pVarResult = oleAutomation.getProperty(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() != OLE.VT_I4) return -1;
-		return pVarResult.getInt();
-	}
-	
-	/**
-	 * Navigates backwards through previously visited web sites.
-	 */
-	public void GoBack() {
-	
-		// dispid=100, type=METHOD, name="GoBack"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"GoBack"}); 
-		int dispIdMember = rgdispid[0];
-		oleAutomation.invoke(dispIdMember);
-	}
-	
-	/**
-	 * Navigates backwards through previously visited web sites.
-	 */
-	public void GoForward() {
-	
-		// dispid=101, type=METHOD, name="GoForward"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"GoForward"}); 
-		int dispIdMember = rgdispid[0];
-		oleAutomation.invoke(dispIdMember);
-	}
-	
-	/**
-	 * Navigates to home page.
-	 */
-	public void GoHome() {
-		// dispid=102, type=METHOD, name="GoHome"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"GoHome"}); 
-		int dispIdMember = rgdispid[0];
-		oleAutomation.invoke(dispIdMember);
-	}
-	
-	/**
-	 * Navigates to user-specified Web search gateway.
-	 */
-	public void GoSearch() {
-		// dispid=103, type=METHOD, name="GoSearch"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"GoSearch"}); 
-		int dispIdMember = rgdispid[0];
-		oleAutomation.invoke(dispIdMember);
-	}
-	
-	/**
-	 * Navigates to a particular URL.
-	 */
-	public void Navigate(String url) {
-		// dispid=104, type=METHOD, name="Navigate"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"Navigate", "URL"}); 
-		int dispIdMember = rgdispid[0];
-		
-		Variant[] rgvarg = new Variant[1];
-		rgvarg[0] = new Variant(url);
-		int[] rgdispidNamedArgs = new int[1];
-		rgdispidNamedArgs[0] = rgdispid[1]; // identifier of argument
-		oleAutomation.invoke(dispIdMember, rgvarg, rgdispidNamedArgs);
-	}
-	
-	/**
-	 * Refreshes the currently viewed page.
-	 *
-	 * @return the platform-defined result code for the "Refresh" method invocation
-	 */
-	public void Refresh(){
-		// dispid= 4294966746, type=METHOD, name="Refresh"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"Refresh"}); 
-		int dispIdMember = rgdispid[0];
-		oleAutomation.invokeNoReply(dispIdMember);
-	}
-	
-	/**
-	 * Aborts loading of the currnet page.
-	 *
-	 * @return the platform-defined result code for the "Stop" method invocation
-	 */
-	public void Stop() {
-		// dispid=106, type=METHOD, name="Stop"
-		int[] rgdispid = oleAutomation.getIDsOfNames(new String[]{"Stop"}); 
-		int dispIdMember = rgdispid[0];
-		oleAutomation.invoke(dispIdMember);
-	}	
-}
diff --git a/examples/org.eclipse.swt.examples.paint/.classpath b/examples/org.eclipse.swt.examples.paint/.classpath
deleted file mode 100755
index 065ac06..0000000
--- a/examples/org.eclipse.swt.examples.paint/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.examples.paint/.cvsignore b/examples/org.eclipse.swt.examples.paint/.cvsignore
deleted file mode 100755
index c5e82d7..0000000
--- a/examples/org.eclipse.swt.examples.paint/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.paint/.project b/examples/org.eclipse.swt.examples.paint/.project
deleted file mode 100644
index 8d39af0..0000000
--- a/examples/org.eclipse.swt.examples.paint/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples.paint</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.examples.paint/about.html b/examples/org.eclipse.swt.examples.paint/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.examples.paint/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.examples.paint/build.properties b/examples/org.eclipse.swt.examples.paint/build.properties
deleted file mode 100755
index c899ccc..0000000
--- a/examples/org.eclipse.swt.examples.paint/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = doc-html/,\
-               icons/,\
-               plugin.properties,\
-               plugin.xml,\
-               about.html,\
-               *.jar
-
-src.includes = about.html
-
-source.paint.jar = src/
diff --git a/examples/org.eclipse.swt.examples.paint/doc-html/hglegal.htm b/examples/org.eclipse.swt.examples.paint/doc-html/hglegal.htm
deleted file mode 100755
index 6211156..0000000
--- a/examples/org.eclipse.swt.examples.paint/doc-html/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-  <LINK REL="stylesheet" HREF="../../../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
-  <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright (c) 2000, 2004 IBM Corporation and others. All Rights Reserved.
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.paint/doc-html/ngibmcpy.gif b/examples/org.eclipse.swt.examples.paint/doc-html/ngibmcpy.gif
deleted file mode 100755
index c786e43..0000000
--- a/examples/org.eclipse.swt.examples.paint/doc-html/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/doc-html/swt_paint_ex.html b/examples/org.eclipse.swt.examples.paint/doc-html/swt_paint_ex.html
deleted file mode 100755
index 919f78d..0000000
--- a/examples/org.eclipse.swt.examples.paint/doc-html/swt_paint_ex.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>SWT - Paint Tool</title>
-</head>
-<body>
-
-<h2>SWT example - Paint Tool</h2>
-
-<p>	
-This example demonstrates the use of SWT graphics operations in the form of a
-rudimentary bitmap painting program.  The Paint Tool implementation also 
-demonstrates a mechanism for managing timed GUI operations in the background 
-that are triggered by user input.
-</p>
-<p>	
-Select a tool with which to draw in the drawing area.  There are a number of tools
-to choose from on the toolbar.  To change the color selection, click on a color in the
-palette below the drawing area; left-click to set the foreground color, right-click to set the
-background color.
-</p>
-
-<h3>Running the example</h3>
-
-<p>
-From Eclipse's <strong>Window</strong> menu select <strong>Show View</strong> &gt; <strong>Other</strong>.  
-In the <strong>Show View</strong> dialog, expand <strong>SWT Examples</strong> and select
-the view named <strong>Paint</strong>. A view containing the paint program will appear.
-</p>
-<p>
-This example can also be run using the <a href="../../org.eclipse.swt.examples.launcher/doc-html/swt_launcher_ex.html">Example Launcher</a>.
-Select the <strong>Paint</strong> item from the <strong>Workbench Views</strong> category and click <strong>Run</strong>.
-</p>
-
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation and others 2000, 2004.  All Rights Reserved." BORDER=0 height=14 width=324></a></p>
-</body>
-</html>
diff --git a/examples/org.eclipse.swt.examples.paint/icons/fill_none.gif b/examples/org.eclipse.swt.examples.paint/icons/fill_none.gif
deleted file mode 100755
index d26dd58..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/fill_none.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/fill_outline.gif b/examples/org.eclipse.swt.examples.paint/icons/fill_outline.gif
deleted file mode 100755
index c6ccfee..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/fill_outline.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/fill_solid.gif b/examples/org.eclipse.swt.examples.paint/icons/fill_solid.gif
deleted file mode 100755
index cb34e64..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/fill_solid.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/linestyle_dash.gif b/examples/org.eclipse.swt.examples.paint/icons/linestyle_dash.gif
deleted file mode 100644
index fb57bb3..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/linestyle_dash.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/linestyle_dashdot.gif b/examples/org.eclipse.swt.examples.paint/icons/linestyle_dashdot.gif
deleted file mode 100644
index 322968c..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/linestyle_dashdot.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/linestyle_dot.gif b/examples/org.eclipse.swt.examples.paint/icons/linestyle_dot.gif
deleted file mode 100644
index 4937ccb..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/linestyle_dot.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/linestyle_solid.gif b/examples/org.eclipse.swt.examples.paint/icons/linestyle_solid.gif
deleted file mode 100644
index 70a57ce..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/linestyle_solid.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/options_font.gif b/examples/org.eclipse.swt.examples.paint/icons/options_font.gif
deleted file mode 100755
index 965fe08..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/options_font.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/paint_example.gif b/examples/org.eclipse.swt.examples.paint/icons/paint_example.gif
deleted file mode 100755
index c48d9a9..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/paint_example.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_airbrush.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_airbrush.gif
deleted file mode 100755
index a310edd..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_airbrush.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_ellipse.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_ellipse.gif
deleted file mode 100755
index dc2142f..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_ellipse.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_line.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_line.gif
deleted file mode 100755
index 2ff819f..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_line.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_pencil.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_pencil.gif
deleted file mode 100755
index f16a234..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_pencil.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_polyline.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_polyline.gif
deleted file mode 100755
index aa384e9..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_polyline.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_rectangle.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_rectangle.gif
deleted file mode 100755
index d26dd58..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_rectangle.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_roundedrectangle.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_roundedrectangle.gif
deleted file mode 100755
index bf845d7..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_roundedrectangle.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/icons/tool_text.gif b/examples/org.eclipse.swt.examples.paint/icons/tool_text.gif
deleted file mode 100755
index 0d7457f..0000000
--- a/examples/org.eclipse.swt.examples.paint/icons/tool_text.gif
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.examples.paint/plugin.properties b/examples/org.eclipse.swt.examples.paint/plugin.properties
deleted file mode 100755
index 4e0a80b..0000000
--- a/examples/org.eclipse.swt.examples.paint/plugin.properties
+++ /dev/null
@@ -1,134 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-providerName = Eclipse.org
-plugin.SWTPaintExample.name = SWT Paint Example Plugin
-category.SWTExamples.name = SWT Examples
-view.PaintExample.name = Paint
-
-launchcategory.SWTViewExamples.name = Workbench Views
-launchcategory.SWTViewExamples.description = \
-	A collection of Standard Widget Toolkit examples that run as Views inside the Workbench.  \
-	These examples will create a new View in the current Perspective.
-
-launchitem.PaintExample.name = Paint
-launchitem.PaintExample.description = \
-	This example demonstrates the use of SWT graphics operations in the form of a \
-	rudimentary bitmap painting program.  The Airbrush Tool implementation also \
-	demonstrates a mechanism for managing timed GUI operations in the background \
-	that are triggered by user input.\n\n\
-	Select a tool with which to draw in the drawing area.  There are a number of tools \
-	to choose from on the toolbar.  To change the color selection, click on a color in the \
-	palette below the drawing area: left-click for the foreground color, right-click for the \
-	background color.\n\n\
-	Uses SWT's GC and FontDialog, and JFace's InputDialog and action set support.
-
-menu.Tools.label = Tools
-menu.Options.label = Options
-
-tool.Pencil.label = Pencil
-tool.Pencil.tooltip = Pencil tool
-tool.Pencil.image = icons/tool_pencil.gif
-tool.Pencil.description = Selects the Pencil tool.
-
-tool.Airbrush.label = Airbrush
-tool.Airbrush.tooltip = Airbrush tool
-tool.Airbrush.image = icons/tool_airbrush.gif
-tool.Airbrush.description = Selects the Airbrush tool.
-
-tool.Line.label = Line
-tool.Line.tooltip = Line tool
-tool.Line.image = icons/tool_line.gif
-tool.Line.description = Selects the Line tool.
-
-tool.PolyLine.label = Polygon
-tool.PolyLine.tooltip = Polygon tool
-tool.PolyLine.image = icons/tool_polyline.gif
-tool.PolyLine.description = Selects the PolyLine tool.
-
-tool.Rectangle.label = Rectangle
-tool.Rectangle.tooltip = Rectangle tool
-tool.Rectangle.image = icons/tool_rectangle.gif
-tool.Rectangle.description = Selects the Rectangle tool.
-
-tool.Ellipse.label = Ellipse
-tool.Ellipse.tooltip = Ellipse tool
-tool.Ellipse.image = icons/tool_ellipse.gif
-tool.Ellipse.description = Selects the Ellipse tool.
-
-tool.RoundedRectangle.label = Rounded Rectangle
-tool.RoundedRectangle.tooltip = Rounded Rectangle
-tool.RoundedRectangle.image = icons/tool_roundedrectangle.gif
-tool.RoundedRectangle.description = Selects the Rounded Rectangle tool.
-
-tool.Text.label = Text
-tool.Text.tooltip = Text tool
-tool.Text.image = icons/tool_text.gif
-tool.Text.description = Selects the Text tool.
-tool.Text.settings.defaulttext = Hello!
-tool.Text.dialog.title = Text Tool Settings
-tool.Text.dialog.message = Please enter the new text string to be painted.
-
-tool.Null.label = <none>
-
-fill.None.label = No Fill
-fill.None.tooltip = No fill mode
-fill.None.image = icons/fill_none.gif
-fill.None.description = Selects No Fill mode.
-
-fill.Outline.label = Outline Fill
-fill.Outline.tooltip = Outline fill mode
-fill.Outline.image = icons/fill_outline.gif
-fill.Outline.description = Selects Outline Fill mode.
-
-fill.Solid.label = Solid Fill
-fill.Solid.tooltip = Solid fill mode
-fill.Solid.image = icons/fill_solid.gif
-fill.Solid.description = Selects Solid Fill mode.
-
-linestyle.Solid.label = Solid Line
-linestyle.Solid.tooltip = Solid line style
-linestyle.Solid.image = icons/linestyle_solid.gif
-linestyle.Solid.description = Select Solid Line style.
-
-linestyle.Dot.label = Dotted Line
-linestyle.Dot.tooltip = Dotted line style
-linestyle.Dot.image = icons/linestyle_dot.gif
-linestyle.Dot.description = Select Dotted Line style.
-
-linestyle.Dash.label = Dashed Line
-linestyle.Dash.tooltip = Dashed line style
-linestyle.Dash.image = icons/linestyle_dash.gif
-linestyle.Dash.description = Select Dashed Line style.
-
-linestyle.DashDot.label = Dash-Dot Line
-linestyle.DashDot.tooltip = Dash-Dot line style
-linestyle.DashDot.image = icons/linestyle_dashdot.gif
-linestyle.DashDot.description = Select Dash-Dot Line style.
-
-options.Font.label = Text Tool Font
-options.Font.tooltip = Select Text Tool font
-options.Font.image = icons/options_font.gif
-options.Font.description = Selects Text Tool font.
-options.Font.dialog.title = Text Tool Font
-
-settings.AirbrushRadius.text = Airbrush Radius
-settings.AirbrushIntensity.text = Airbrush Intensity
-
-session.Null.message = Select a tool...
-session.ContinuousPaint.message = Click and drag to draw...
-session.DragInteractivePaint.message = Click and drag to preview, release to draw, right-click to cancel...
-session.SegmentedInteractivePaint.message.anchorMode = Click to set anchor...
-session.SegmentedInteractivePaint.message.interactiveMode = Click to draw, double-click to close figure, right-click to cancel...
-session.Text.message = Click to draw text, right-click to edit text...
-
-status.Coord.format = ({0}, {1})
-status.CoordRange.format = ({0}, {1}) - ({2}, {3})
-status.Bar.format = {0} : {1}   {2}
diff --git a/examples/org.eclipse.swt.examples.paint/plugin.xml b/examples/org.eclipse.swt.examples.paint/plugin.xml
deleted file mode 100755
index 97b3750..0000000
--- a/examples/org.eclipse.swt.examples.paint/plugin.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.swt.examples.paint"
-   name="%plugin.SWTPaintExample.name"
-   version="3.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.swt.examples.paint.PaintPlugin">
-
-<!-- Runtime -->
-   <runtime>
-      <library name="paint.jar">
-         <packages prefixes="org.eclipse.swt.examples.paint"/>
-      </library>
-   </runtime>
-<!-- Required plugins -->
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.swt"/>
-   </requires>
-
-
-<!-- Extension points -->
-<!-- Extensions -->
-   <extension
-         point="org.eclipse.ui.views">
-      <view
-            name="%view.PaintExample.name"
-            icon="icons/paint_example.gif"
-            category="org.eclipse.swt.examples.category"
-            class="org.eclipse.swt.examples.paint.PaintView"
-            id="org.eclipse.swt.examples.paint.view">
-      </view>
-   </extension>
-   <extension
-         point="org.eclipse.swt.examples.launcher.launchItems">
-      <category
-            name="%launchcategory.SWTViewExamples.name"
-            description="%launchcategory.SWTViewExamples.description"
-            id="org.eclipse.swt.examples.launchViewCategory">
-      </category>
-      <item
-            name="%launchitem.PaintExample.name"
-            icon="icons/paint_example.gif"
-            description="%launchitem.PaintExample.description"
-            category="org.eclipse.swt.examples.launchViewCategory"
-            id="org.eclipse.swt.examples.paint.viewlauncher">
-         <view
-               viewId="org.eclipse.swt.examples.paint.view">
-         </view>
-      </item>
-   </extension>
-
-</plugin>
diff --git a/examples/org.eclipse.swt.examples.paint/src/import.properties b/examples/org.eclipse.swt.examples.paint/src/import.properties
deleted file mode 100644
index 58344f0..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/import.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# Persist project settings for later import 
-natures = org.eclipse.jdt.core.javanature; org.eclipse.pde.PluginNature
-builders = org.eclipse.jdt.core.javabuilder; org.eclipse.pde.ManifestBuilder; org.eclipse.pde.SchemaBuilder
-var.ECLIPSE_PLUGINS = <<ECLIPSE_PLUGINS>>
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/AirbrushTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/AirbrushTool.java
deleted file mode 100755
index 5730b4d..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/AirbrushTool.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import java.util.Random;
-import org.eclipse.swt.graphics.*;
-
-/**
- * An airbrush tool.
- */
-public class AirbrushTool extends ContinuousPaintSession implements PaintTool {
-	private ToolSettings settings;
-	private Random random;
-	private int cachedRadiusSquared;
-	private int cachedNumPoints;
-	
-	/**
-	 * Constructs a Tool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param paintSurface the PaintSurface we will render on.
-	 */
-	public AirbrushTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		random = new Random();
-		setRetriggerTimer(10);
-		set(toolSettings);
-	}
-	
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		// compute things we need to know for drawing
-		settings = toolSettings;
-		cachedRadiusSquared = settings.airbrushRadius * settings.airbrushRadius;
-		cachedNumPoints = 314 * settings.airbrushIntensity * cachedRadiusSquared / 250000;
-		if (cachedNumPoints == 0 && settings.airbrushIntensity != 0)
-			cachedNumPoints = 1;
-	}
-
-	/**
-	 * Returns the name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.Airbrush.label");
-	}
-
-	/*
-	 * Template method for drawing
-	 */
-	protected void render(Point point) {
-		// Draws a bunch (cachedNumPoints) of random pixels within a specified circle (cachedRadiusSquared).
-		ContainerFigure cfig = new ContainerFigure();
-
-		for (int i = 0; i < cachedNumPoints; ++i) {
-			int randX, randY;
-			do {
-				randX = (int) ((random.nextDouble() - 0.5) * settings.airbrushRadius * 2.0);
-				randY = (int) ((random.nextDouble() - 0.5) * settings.airbrushRadius * 2.0);
-			} while (randX * randX + randY * randY > cachedRadiusSquared);
-			cfig.add(new PointFigure(settings.commonForegroundColor, point.x + randX, point.y + randY));
-		}
-		getPaintSurface().drawFigure(cfig);
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/BasicPaintSession.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/BasicPaintSession.java
deleted file mode 100755
index 9732189..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/BasicPaintSession.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-public abstract class BasicPaintSession implements PaintSession {
-	/**
-	 * The paint surface
-	 */
-	private PaintSurface paintSurface;
-
-	/**
-	 * Constructs a PaintSession.
-	 * 
-	 * @param paintSurface the drawing surface to use
-	 */
-	protected BasicPaintSession(PaintSurface paintSurface) {
-		this.paintSurface = paintSurface;
-	}
-
-	/**
-	 * Returns the paint surface associated with this paint session.
-	 * 
-	 * @return the associated PaintSurface
-	 */
-	public PaintSurface getPaintSurface() {
-		return paintSurface;
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContainerFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContainerFigure.java
deleted file mode 100755
index 135067c..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContainerFigure.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * Container for Figure objects with stacking preview mechanism.
- */
-public class ContainerFigure extends Figure {
-	private static final int INITIAL_ARRAY_SIZE = 16;
-	
-	Figure[]   objectStack = null;
-	int      nextIndex = 0;
-
-	/**
-	 * Constructs an empty Container
-	 */
-	public ContainerFigure() {
-	}
-	/**
-	 * Adds an object to the container for later drawing.
-	 * 
-	 * @param object the object to add to the drawing list
-	 */
-	public void add(Figure object) {
-		if (objectStack == null) {
-			objectStack = new Figure[INITIAL_ARRAY_SIZE];
-		} else if (objectStack.length <= nextIndex) {
-			Figure[] newObjectStack = new Figure[objectStack.length * 2];
-			System.arraycopy(objectStack, 0, newObjectStack, 0, objectStack.length);
-			objectStack = newObjectStack;
-		}
-		objectStack[nextIndex] = object;
-		++nextIndex;
-	}
-	/**
-	 * Determines if the container is empty.
-	 * @return true if the container is empty
-	 */
-	public boolean isEmpty() {
-		return nextIndex == 0;
-	}
-	/**
-	 * Adds an object to the container and draws its preview then updates the supplied preview state.
-	 * 
-	 * @param object the object to add to the drawing list
-	 * @param gc the GC to draw on
-	 * @param offset the offset to add to virtual coordinates to get display coordinates
-	 * @param rememberedState the state returned by a previous drawPreview() or addAndPreview()
-	 *        using this Container, may be null if there was no such previous call
-	 * @return object state that must be passed to erasePreview() later to erase this object
-	 */
-//	public Object addAndPreview(Figure object, GC gc, Point offset, Object rememberedState) {
-//		Object[] stateStack = (Object[]) rememberedState;
-//		if (stateStack == null) {
-//			stateStack = new Object[INITIAL_ARRAY_SIZE];
-//		} else if (stateStack.length <= nextIndex) {
-//			Object[] newStateStack = new Object[stateStack.length * 2];
-//			System.arraycopy(stateStack, 0, newStateStack, 0, stateStack.length);
-//			stateStack = newStateStack;
-//		}
-//		add(object);
-//		stateStack[nextIndex - 1] = object.drawPreview(gc, offset);
-//		return stateStack;
-//	}
-	/**
-	 * Clears the container.
-	 * <p>
-	 * Note that erasePreview() cannot be called after this point to erase any previous
-	 * drawPreview()'s.
-	 * </p>
-	 */
-	public void clear() {
-		while (--nextIndex > 0) objectStack[nextIndex] = null;
-		nextIndex = 0;
-	}
-	public void draw(FigureDrawContext fdc) {
-		for (int i = 0; i < nextIndex; ++i) objectStack[i].draw(fdc);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		for (int i = 0; i < nextIndex; ++i) objectStack[i].addDamagedRegion(fdc, region);
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContinuousPaintSession.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContinuousPaintSession.java
deleted file mode 100755
index 49a724c..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ContinuousPaintSession.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-/**
- * The superclass for paint tools that draw continuously along the path
- * traced by the mouse's movement while the button is depressed
- */
-public abstract class ContinuousPaintSession extends BasicPaintSession {
-	/**
-	 * True if a click-drag is in progress.
-	 */
-	private boolean dragInProgress = false;
-	
-	/**
-	 * A cached Point array for drawing.
-	 */
-	private Point[] points = new Point[] { new Point(-1, -1), new Point(-1, -1) };
-
-	/**
-	 * The time to wait between retriggers in milliseconds.
-	 */
-	private int retriggerInterval = 0;
-	
-	/**
-	 * The currently valid RetriggerHandler
-	 */
-	protected Runnable retriggerHandler = null;
-
-	/**
-	 * Constructs a ContinuousPaintSession.
-	 * 
-	 * @param paintSurface the drawing surface to use
-	 */
-	protected ContinuousPaintSession(PaintSurface paintSurface) {
-		super(paintSurface);
-	}
-
-	/**
-	 * Sets the retrigger timer.
-	 * <p>
-	 * After the timer elapses, if the mouse is still hovering over the same point with the
-	 * drag button pressed, a new render order is issued and the timer is restarted.
-	 * </p>
-	 * @param interval the time in milliseconds to wait between retriggers, 0 to disable
-	 */
-	public void setRetriggerTimer(int interval) {
-		retriggerInterval = interval;
-	}
-
-	/**
-	 * Activates the tool.
-	 */
-	public void beginSession() {
-		getPaintSurface().
-			setStatusMessage(PaintPlugin.getResourceString("session.ContinuousPaint.message"));
-		dragInProgress = false;
-	}
-	
-	/**
-	 * Deactivates the tool.
-     */
-	public void endSession() {
-		abortRetrigger();
-	}
-	
-	/**
-	 * Aborts the current operation.
-	 */
-	public void resetSession() {
-		abortRetrigger();
-	}
-
-	/**
-	 * Handles a mouseDown event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public final void mouseDown(MouseEvent event) {
-		if (event.button != 1) return;
-		if (dragInProgress) return; // spurious event
-		dragInProgress = true;
-
-		points[0].x = event.x;
-		points[0].y = event.y;
-		render(points[0]);
-		prepareRetrigger();
-	}
-
-	/**
-	 * Handles a mouseDoubleClick event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public final void mouseDoubleClick(MouseEvent event) {
-	}
-
-	/**
-	 * Handles a mouseUp event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public final void mouseUp(MouseEvent event) {
-		if (event.button != 1) return;
-		if (! dragInProgress) return; // spurious event
-		abortRetrigger();
-		mouseSegmentFinished(event);
-		dragInProgress = false;
-	}
-	
-	/**
-	 * Handles a mouseMove event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public final void mouseMove(MouseEvent event) {
-		final PaintSurface ps = getPaintSurface();
-		ps.setStatusCoord(ps.getCurrentPosition());
-		if (! dragInProgress) return;
-		mouseSegmentFinished(event);
-		prepareRetrigger();
-	}
-	
-	/**
-	 * Handle a rendering segment
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	private final void mouseSegmentFinished(MouseEvent event) {
-		if (points[0].x == -1) return; // spurious event
-		if (points[0].x != event.x || points[0].y != event.y) {
-			// draw new segment
-			points[1].x = event.x;
-			points[1].y = event.y;
-			renderContinuousSegment();
-		}
-	}
-
-	/**
-	 * Draws a continuous segment from points[0] to points[1].
-	 * Assumes points[0] has been drawn already.
-	 * 
-	 * @post points[0] will refer to the same point as points[1]
-	 */
-	protected void renderContinuousSegment() {
-		/* A lazy but effective line drawing algorithm */
-		final int dX = points[1].x - points[0].x;
-		final int dY = points[1].y - points[0].y;
-		int absdX = Math.abs(dX);
-		int absdY = Math.abs(dY);
-
-		if ((dX == 0) && (dY == 0)) return;
-		
-		if (absdY > absdX) {
-			final int incfpX = (dX << 16) / absdY;
-			final int incY = (dY > 0) ? 1 : -1;
-			int fpX = points[0].x << 16; // X in fixedpoint format
-
-			while (--absdY >= 0) {
-				points[0].y += incY;
-				points[0].x = (fpX += incfpX) >> 16;
-				render(points[0]);
-			}
-			if (points[0].x == points[1].x) return;
-			points[0].x = points[1].x;
-		} else {
-			final int incfpY = (dY << 16) / absdX;
-			final int incX = (dX > 0) ? 1 : -1;
-			int fpY = points[0].y << 16; // Y in fixedpoint format
-
-			while (--absdX >= 0) {
-				points[0].x += incX;
-				points[0].y = (fpY += incfpY) >> 16;
-				render(points[0]);
-			}
-			if (points[0].y == points[1].y) return;
-			points[0].y = points[1].y;
-		}
-		render(points[0]);
-	}		
-
-	/**
-	 * Prepare the retrigger timer
-	 */
-	private final void prepareRetrigger() {
-		if (retriggerInterval > 0) {
-			/*
-			 * timerExec() provides a lightweight mechanism for running code at intervals from within
-			 * the event loop when timing accuracy is not important.
-			 *
-			 * Since it is not possible to cancel a timerExec(), we remember the Runnable that is
-			 * active in order to distinguish the valid one from the stale ones.  In practice,
-			 * if the interval is 1/100th of a second, then creating a few hundred new RetriggerHandlers
-			 * each second will not cause a significant performance hit.
-			 */
-			Display display = getPaintSurface().getDisplay();
-			retriggerHandler = new Runnable() {
-				public void run() {
-					if (retriggerHandler == this) {
-						render(points[0]);
-						prepareRetrigger();
-					}
-				}
-			};			
-			display.timerExec(retriggerInterval, retriggerHandler);
-		}
-	}
-
-	/**
-	 * Aborts the retrigger timer
-	 */
-	private final void abortRetrigger() {
-		retriggerHandler = null;
-	}
-	
-	/**
-	 * Template method: Renders a point.
-	 * @param point, the point to render
-	 */
-	protected abstract void render(Point point);
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/DragPaintSession.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/DragPaintSession.java
deleted file mode 100755
index 539c3b5..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/DragPaintSession.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.graphics.*;
-
-/**
- * The superclass for paint tools that use click-drag-release motions to
- * draw objects.
- */
-public abstract class DragPaintSession extends BasicPaintSession {
-	/**
-	 * True if a click-drag is in progress
-	 */
-	private boolean dragInProgress = false;
-	
-	/**
-	 * The position of the first click in a click-drag
-	 */
-	private Point anchorPosition = new Point(-1, -1);
-
-	/**
-	 * A temporary point
-	 */
-	private Point tempPosition = new Point(-1, -1);
-	
-	/**
-	 * Constructs a PaintSession.
-	 * 
-	 * @param getPaintSurface() the drawing surface to use
-	 */
-	protected DragPaintSession(PaintSurface paintSurface) {
-		super(paintSurface);
-	}
-
-	/**
-	 * Activates the tool.
-	 */
-	public void beginSession() {
-		getPaintSurface().
-			setStatusMessage(PaintPlugin.getResourceString("session.DragInteractivePaint.message"));
-		anchorPosition.x = -1;
-		dragInProgress = false;
-	}
-	
-	/**
-	 * Deactivates the tool.
-     */
-	public void endSession() {
-	}
-	
-	/**
-	 * Resets the tool.
-	 * Aborts any operation in progress.
-	 */
-	public void resetSession() {
-		getPaintSurface().clearRubberbandSelection();
-		anchorPosition.x = -1;
-		dragInProgress = false;
-	}
-
-	/**
-	 * Handles a mouseDown event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseDown(MouseEvent event) {
-		if (event.button != 1) return;
-		if (dragInProgress) return; // spurious event
-		dragInProgress = true;
-		
-		anchorPosition.x = event.x;
-		anchorPosition.y = event.y;
-	}
-
-	/**
-	 * Handles a mouseDoubleClick event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseDoubleClick(MouseEvent event) {
-	}
-
-	/**
-	 * Handles a mouseUp event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseUp(MouseEvent event) {
-		if (event.button != 1) {
-			resetSession(); // abort if right or middle mouse button pressed
-			return;
-		}
-		if (! dragInProgress) return; // spurious event
-		dragInProgress = false;
-		if (anchorPosition.x == -1) return; // spurious event
-		
-		getPaintSurface().commitRubberbandSelection();
-	}
-	
-	/**
-	 * Handles a mouseMove event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseMove(MouseEvent event) {
-		final PaintSurface ps = getPaintSurface();
-		if (! dragInProgress) {
-			ps.setStatusCoord(ps.getCurrentPosition());
-			return;
-		}
-		ps.setStatusCoordRange(anchorPosition, ps.getCurrentPosition());
-		ps.clearRubberbandSelection();
-		tempPosition.x = event.x;
-		tempPosition.y = event.y;
-		ps.addRubberbandSelection(createFigure(anchorPosition, tempPosition));
-	}
-	
-	/**
-	 * Template Method: Creates a Figure for drawing rubberband entities and the final product
-	 * 
-	 * @param anchor the anchor point
-	 * @param cursor the point marking the current pointer location
-	 */
-	protected abstract Figure createFigure(Point anchor, Point cursor);
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseFigure.java
deleted file mode 100755
index e6a5907..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseFigure.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Ellipse object
- */
-public class EllipseFigure extends Figure {
-	private Color foregroundColor, backgroundColor;
-	private int lineStyle, x1, y1, x2, y2;
-	/**
-	 * Constructs an Ellipse
-	 * These objects are defined by any two diametrically opposing corners of a box
-	 * bounding the ellipse.
-	 * 
-	 * @param color the color for this object
-	 * @param lineStyle the line style for this object
-	 * @param x1 the virtual X coordinate of the first corner
-	 * @param y1 the virtual Y coordinate of the first corner
-	 * @param x2 the virtual X coordinate of the second corner
-	 * @param y2 the virtual Y coordinate of the second corner
-	 */
-	public EllipseFigure(Color foregroundColor, Color backgroundColor, int lineStyle, int x1, int y1, int x2, int y2) {
-		this.foregroundColor = foregroundColor;
-		this.backgroundColor = backgroundColor;
-		this.lineStyle = lineStyle;
-		this.x1 = x1; this.y1 = y1; this.x2 = x2; this.y2 = y2;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Rectangle r = fdc.toClientRectangle(x1, y1, x2, y2);
-		fdc.gc.setForeground(foregroundColor);
-		fdc.gc.setBackground(backgroundColor);
-		fdc.gc.setLineStyle(lineStyle);
-		fdc.gc.drawOval(r.x, r.y, r.width - 1, r.height - 1);
-		fdc.gc.setLineStyle(SWT.LINE_SOLID);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x1, y1, x2, y2));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseTool.java
deleted file mode 100755
index 785879c..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/EllipseTool.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * A drawing tool.
- */
-public class EllipseTool extends DragPaintSession implements PaintTool {
-	private ToolSettings settings;
-
-	/**
-	 * Constructs a EllipseTool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param paintSurface the PaintSurface we will render on.
-	 */
-	public EllipseTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		set(toolSettings);
-	}
-
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		settings = toolSettings;
-	}
-
-	/**
-	 * Returns name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.Ellipse.label");
-	}
-
-	/*
-	 * Template methods for drawing
-	 */
-	protected Figure createFigure(Point a, Point b) {
-		ContainerFigure container = new ContainerFigure();
-		if (settings.commonFillType != ToolSettings.ftNone)
-			container.add(new SolidEllipseFigure(settings.commonBackgroundColor, a.x, a.y, b.x, b.y));
-		if (settings.commonFillType != ToolSettings.ftSolid)
-			container.add(new EllipseFigure(settings.commonForegroundColor, settings.commonBackgroundColor, settings.commonLineStyle,
-				a.x, a.y, b.x, b.y));
-		return container;
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/Figure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/Figure.java
deleted file mode 100755
index 6eb305b..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/Figure.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * Superinterface for all drawing objects.
- * All drawing objects know how to render themselved to the screen and can draw a
- * temporary version of themselves for previewing the general appearance of the
- * object onscreen before it gets committed.
- */
-public abstract class Figure {
-	/**
-	 * Draws this object.
-	 * 
-	 * @param fdc a parameter block specifying drawing-related information
-	 */
-	public abstract void draw(FigureDrawContext fdc);
-
-	/**
-	 * Computes the damaged screen region caused by drawing this object (imprecise), then
-	 * appends it to the supplied region.
-	 * 
-	 * @param fdc a parameter block specifying drawing-related information
-	 * @param region a region to which additional damage areas will be added
-	 */
-	public abstract void addDamagedRegion(FigureDrawContext fdc, Region region);
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/FigureDrawContext.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/FigureDrawContext.java
deleted file mode 100644
index b020ff4..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/FigureDrawContext.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-public class FigureDrawContext {
-	/*
-	 * <p>
-	 * The GC must be set up as follows
-	 * (it will be returned to this state upon completion of drawing operations)
-	 * <ul>
-	 *   <li>setXORMode(false)
-	 * </ul>
-	 * </p>
-	 */
-	public GC gc = null;
-	public int xOffset = 0, yOffset = 0; // substract to get GC coords
-	public int xScale = 1, yScale = 1;
-	
-	public Rectangle toClientRectangle(int x1, int y1, int x2, int y2) {
-		return new Rectangle(
-			Math.min(x1, x2) * xScale - xOffset,
-			Math.min(y1, y2) * yScale - yOffset,
-			(Math.abs(x2 - x1) + 1) * xScale,
-			(Math.abs(y2 - y1) + 1) * yScale);
-	}
-	public Point toClientPoint(int x, int y) {
-		return new Point(x * xScale - xOffset, y * yScale - yOffset);
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineFigure.java
deleted file mode 100755
index ab07a8a..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineFigure.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Line object
- */
-public class LineFigure extends Figure {
-	private Color foregroundColor, backgroundColor;
-	private int lineStyle, x1, y1, x2, y2;
-	/**
-	 * Constructs a Line
-	 * These objects are defined by their two end-points.
-	 * 
-	 * @param color the color for this object
-	 * @param lineStyle the line style for this object
-	 * @param x1 the virtual X coordinate of the first end-point
-	 * @param y1 the virtual Y coordinate of the first end-point
-	 * @param x2 the virtual X coordinate of the second end-point
-	 * @param y2 the virtual Y coordinate of the second end-point
-	 */
-	public LineFigure(Color foregroundColor, Color backgroundColor, int lineStyle, int x1, int y1, int x2, int y2) {
-		this.foregroundColor = foregroundColor;
-		this.backgroundColor = backgroundColor;
-		this.lineStyle = lineStyle;
-		this.x1 = x1; this.y1 = y1; this.x2 = x2; this.y2 = y2;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Point p1 = fdc.toClientPoint(x1, y1);
-		Point p2 = fdc.toClientPoint(x2, y2);
-		fdc.gc.setForeground(foregroundColor);
-		fdc.gc.setBackground(backgroundColor);
-		fdc.gc.setLineStyle(lineStyle);
-		fdc.gc.drawLine(p1.x, p1.y, p2.x, p2.y);
-		fdc.gc.setLineStyle(SWT.LINE_SOLID);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x1, y1, x2, y2));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineTool.java
deleted file mode 100755
index 32d0399..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/LineTool.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * A line drawing tool
- */
-public class LineTool extends DragPaintSession implements PaintTool {
-	private ToolSettings settings;
-
-	/**
-	 * Constructs a LineTool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param paintSurface the PaintSurface we will render on.
-	 */
-	public LineTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		set(toolSettings);
-	}
-	
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		settings = toolSettings;
-	}
-	
-	/**
-	 * Returns name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.Line.label");
-	}
-
-	/*
-	 * Template methods for drawing
-	 */
-	protected Figure createFigure(Point a, Point b) {
-		return new LineFigure(settings.commonForegroundColor, settings.commonBackgroundColor, settings.commonLineStyle,
-			a.x, a.y, b.x, b.y);
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintPlugin.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintPlugin.java
deleted file mode 100755
index 5dc3ec5..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintPlugin.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.BundleContext;
-
-import java.text.*;
-import java.util.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class PaintPlugin extends AbstractUIPlugin {
-	//The shared instance.
-	private static PaintPlugin plugin;
-	private static ResourceBundle resourceBundle;
-
-	/**
-	 * Constructs the Paint plugin.
-	 */
-	public PaintPlugin() {
-		super();
-		plugin = this;
-	}
-	
-	/**
-	 * Returns the shared instance.
-	 */
-	public static PaintPlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Log an error to the ILog for this plugin
-	 * 
-	 * @param message the localized error message text
-	 * @param exception the associated exception, or null
-	 */
-	public static void logError(String message, Throwable exception) {
-		plugin.getLog().log(
-			new Status(IStatus.ERROR, plugin.getBundle().getSymbolicName(), 0, message, exception));
-	}
-
-	/**
-	 * Returns a string from the resource bundle.
-	 * We don't want to crash because of a missing String.
-	 * Returns the key if not found.
-	 */
-	public static String getResourceString(String key) {
-		try {
-			return resourceBundle.getString(key);
-		} catch (MissingResourceException e) {
-			return key;
-		} catch (NullPointerException e) {
-			return "!" + key + "!";
-		}			
-	}
-
-	/**
-	 * Returns a string from the resource bundle and binds it
-	 * with the given arguments. If the key is not found,
-	 * return the key.
-	 */
-	public static String getResourceString(String key, Object[] args) {
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (MissingResourceException e) {
-			return key;
-		} catch (NullPointerException e) {
-			return "!" + key + "!";
-		}
-	}
-	
-    public void start(BundleContext context) throws Exception {
-        super.start(context);
-        resourceBundle = Platform.getResourceBundle(getBundle());
-    }
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSession.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSession.java
deleted file mode 100755
index 1d6eda2..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSession.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.events.*;
-
-/**
- * Manages an interactive paint session.
- * Note that the coordinates received via the listener interfaces are virtualized to zero-origin
- * relative to the painting surface.
- */ 
-public interface PaintSession extends MouseListener, MouseMoveListener {
-	/**
-	 * Returns the paint surface associated with this paint session
-	 * 
-	 * @return the associated PaintSurface
-	 */
-	public PaintSurface getPaintSurface();
-
-	/**
-	 * Activates the session.
-	 * 
-	 * Note: When overriding this method, call super.beginSession() at method start.
-	 */
-	public abstract void beginSession();
-	
-	/**
-	 * Deactivates the session.
-     *
-	 * Note: When overriding this method, call super.endSession() at method exit.
-     */
-	public abstract void endSession();
-	
-	/**
-	 * Resets the session.
-	 * Aborts any operation in progress.
-	 * 
-	 * Note: When overriding this method, call super.resetSession() at method exit.
-	 */
-	public abstract void resetSession();
-	
-	
-	/**
-	 * Returns the name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName();
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSurface.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSurface.java
deleted file mode 100755
index a58af26..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintSurface.java
+++ /dev/null
@@ -1,523 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-/**
- * Manages a simple drawing surface.
- */
-public class PaintSurface {
-	private Point currentPosition = new Point(0, 0);
-	private Canvas paintCanvas;
-
-	private PaintSession paintSession;
-	private Image image;
-	private Image paintImage; // buffer for refresh blits
-	private int   imageWidth, imageHeight;
-	private int   visibleWidth, visibleHeight;
-
-	private FigureDrawContext displayFDC = new FigureDrawContext();
-	private FigureDrawContext imageFDC = new FigureDrawContext();
-	private FigureDrawContext paintFDC = new FigureDrawContext();
-
-	/* Rubberband */
-	private ContainerFigure rubberband = new ContainerFigure();
-		// the active rubberband selection
-	private int rubberbandHiddenNestingCount = 0;
-		// always >= 0, if > 0 rubberband has been hidden
-
-	/* Status */
-	private Text statusText;
-	private String statusActionInfo, statusMessageInfo, statusCoordInfo;
-
-	/**
-	 * Constructs a PaintSurface.
-	 * <p>
-	 * paintCanvas must have SWT.NO_REDRAW_RESIZE and SWT.NO_BACKGROUND styles,
-	 *     and may have SWT.V_SCROLL and/or SWT.H_SCROLL.
-	 * </p>
-	 * @param paintCanvas the Canvas object in which to render
-	 * @param paintStatus the PaintStatus object to use for providing user feedback
-	 * @param fillColor the color to fill the canvas with initially
-	 */
-	public PaintSurface(Canvas paintCanvas, Text statusText, Color fillColor) {
-		this.paintCanvas = paintCanvas;
-		this.statusText = statusText;
-		clearStatus();
-
-		/* Set up the drawing surface */
-		Rectangle displayRect = paintCanvas.getDisplay().getClientArea();
-		imageWidth = displayRect.width;
-		imageHeight = displayRect.height;
-		image = new Image(paintCanvas.getDisplay(), imageWidth, imageHeight);
-
-		imageFDC.gc = new GC(image);
-		imageFDC.gc.setBackground(fillColor);
-		imageFDC.gc.fillRectangle(0, 0, imageWidth, imageHeight);
-		displayFDC.gc = new GC(paintCanvas);
-
-		/* Initialize the session */
-		setPaintSession(null);
-
-		/* Add our listeners */
-		paintCanvas.addDisposeListener(new DisposeListener() {
-			public void widgetDisposed(DisposeEvent e) {
-				displayFDC.gc.dispose();
-			}			
-		});
-		paintCanvas.addMouseListener(new MouseAdapter() {
-			public void mouseDown(MouseEvent event) {
-				processMouseEventCoordinates(event);
-				if (paintSession != null) paintSession.mouseDown(event);
-			}
-			public void mouseUp(MouseEvent event) {
-				processMouseEventCoordinates(event);
-				if (paintSession != null) paintSession.mouseUp(event);
-			}
-			public void mouseDoubleClick(MouseEvent event) {
-				processMouseEventCoordinates(event);
-				if (paintSession != null) paintSession.mouseDoubleClick(event);
-			}			
-		});
-		paintCanvas.addMouseMoveListener(new MouseMoveListener() {
-			public void mouseMove(MouseEvent event) {
-				processMouseEventCoordinates(event);
-				if (paintSession != null) paintSession.mouseMove(event);
-			}
-		});
-		paintCanvas.addPaintListener(new PaintListener() {
-			public void paintControl(PaintEvent event) {
-				if (rubberband.isEmpty()) {
-					// Nothing to merge, so we just refresh
-					event.gc.drawImage(image,
-						displayFDC.xOffset + event.x, displayFDC.yOffset + event.y, event.width, event.height,
-						event.x, event.y, event.width, event.height);
-				} else {
-					/*
-					 * Avoid flicker when merging overlayed objects by constructing the image on
-					 * a backbuffer first, then blitting it to the screen.
-					 */
-					// Check that the backbuffer is large enough
-					if (paintImage != null) {
-						Rectangle rect = paintImage.getBounds();
-						if ((event.width + event.x > rect.width) ||
-							(event.height + event.y > rect.height)) {
-							paintFDC.gc.dispose();
-							paintImage.dispose();
-							paintImage = null;
-						}
-					}
-					if (paintImage == null) {
-						Display display = getDisplay();
-						Rectangle rect = display.getClientArea();
-						paintImage = new Image(display,
-							Math.max(rect.width, event.width + event.x),
-							Math.max(rect.height, event.height + event.y));
-						paintFDC.gc = new GC(paintImage);
-					}
-					// Setup clipping and the FDC
-					Region clipRegion = new Region();
-					event.gc.getClipping(clipRegion);					
-					paintFDC.gc.setClipping(clipRegion);
-					clipRegion.dispose();
-
-					paintFDC.xOffset = displayFDC.xOffset;
-					paintFDC.yOffset = displayFDC.yOffset;
-					paintFDC.xScale = displayFDC.xScale;
-					paintFDC.yScale = displayFDC.yScale;
-					
-					// Merge the overlayed objects into the image, then blit
-					paintFDC.gc.drawImage(image,
-						displayFDC.xOffset + event.x, displayFDC.yOffset + event.y, event.width, event.height,
-						event.x, event.y, event.width, event.height);
-					rubberband.draw(paintFDC);
-					event.gc.drawImage(paintImage,
-						event.x, event.y, event.width, event.height,
-						event.x, event.y, event.width, event.height);
-				}
-			}
-		});
-		paintCanvas.addControlListener(new ControlAdapter() {
-			public void controlResized(ControlEvent event) {
-				handleResize();
-			}			
-		});
-
-		/* Set up the paint canvas scroll bars */
-		ScrollBar horizontal = paintCanvas.getHorizontalBar();
-		horizontal.setVisible(true);
-		horizontal.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				scrollHorizontally((ScrollBar)event.widget);
-			}
-		});
-		ScrollBar vertical = paintCanvas.getVerticalBar();
-		vertical.setVisible(true);
-		vertical.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				scrollVertically((ScrollBar)event.widget);
-			}
-		});
-		handleResize();
-	}
-	
-	/**
-	 * Disposes of the PaintSurface's resources.
-	 */
-	public void dispose() {
-		imageFDC.gc.dispose();
-		image.dispose();
-		if (paintImage != null) {
-			paintImage.dispose();
-			paintFDC.gc.dispose();
-		}
-
-		currentPosition = null;
-		paintCanvas = null;
-		paintSession = null;
-		image = null;
-		paintImage = null;
-		displayFDC = null;
-		imageFDC = null;
-		paintFDC = null;
-		rubberband = null;
-		statusText = null;
-		statusActionInfo = null;
-		statusMessageInfo = null;
-		statusCoordInfo = null;
-	}
-
-	/**
-	 * Called when we must grab focus.
-	 */
-	public void setFocus()  {
-		paintCanvas.setFocus();
-	}
-
-	/**
-	 * Returns the Display on which the PaintSurface resides.
-	 * @return the Display
-	 */
-	public Display getDisplay() {
-		return paintCanvas.getDisplay();
-	}
-
-	/**
-	 * Returns the Shell in which the PaintSurface resides.
-	 * @return the Shell
-	 */
-	public Shell getShell() {
-		return paintCanvas.getShell();
-	}
-
-	/**
-	 * Sets the current paint session.
-	 * <p>
-	 * If oldPaintSession != paintSession calls oldPaintSession.end()
-	 * and paintSession.begin()
-	 * </p>
-	 * 
-	 * @param paintSession the paint session to activate; null to disable all sessions
-	 */
-	public void setPaintSession(PaintSession paintSession) {
-		if (this.paintSession != null) {
-			if (this.paintSession == paintSession) return;
-			this.paintSession.endSession();
-		}
-		this.paintSession = paintSession;
-		clearStatus();
-		if (paintSession != null) {
-			setStatusAction(paintSession.getDisplayName());
-			paintSession.beginSession();
-		} else {
-			setStatusAction(PaintPlugin.getResourceString("tool.Null.label"));
-			setStatusMessage(PaintPlugin.getResourceString("session.Null.message"));
-		}
-	}
-
-	/**
-	 * Returns the current paint session.
-	 * 
-	 * @return the current paint session, null if none is active
-	 */
-	public PaintSession getPaintSession() {
-		return paintSession;
-	}
-
-	/**
-	 * Returns the current paint tool.
-	 * 
-	 * @return the current paint tool, null if none is active (though some other session
-	 *         might be)
-	 */
-	public PaintTool getPaintTool() {
-		return (paintSession != null && paintSession instanceof PaintTool) ?
-			(PaintTool)paintSession : null;
-	}
-
-	/**
-	 * Returns the current position in an interactive operation.
-	 *
-	 * @return the last known position of the pointer
-	 */
-	public Point getCurrentPosition() {
-		return currentPosition;
-	}
-
-	/**
-	 * Draws a Figure object to the screen and to the backing store permanently.
-	 * 
-	 * @param object the object to draw onscreen
-	 */
-	public void drawFigure(Figure object) {
-		object.draw(imageFDC);
-		object.draw(displayFDC);
-	}
-
-	/**
-	 * Adds a Figure object to the active rubberband selection.
-	 * <p>
-	 * This object will be drawn to the screen as a preview and refreshed appropriately
-	 * until the selection is either cleared or committed.
-	 * </p>
-	 * 
-	 * @param object the object to add to the selection
-	 */
-	public void addRubberbandSelection(Figure object) {
-		rubberband.add(object);
-		if (! isRubberbandHidden()) object.draw(displayFDC);
-	}
-
-	/**
-	 * Clears the active rubberband selection.
-	 * <p>
-	 * Erases any rubberband objects on the screen then clears the selection.
-	 * </p>
-	 */
-	public void clearRubberbandSelection() {
-		if (! isRubberbandHidden()) {
-			Region region = new Region();
-			rubberband.addDamagedRegion(displayFDC, region);
-			Rectangle r = region.getBounds();
-			paintCanvas.redraw(r.x, r.y, r.width, r.height, true);
-			region.dispose();
-		}
-		rubberband.clear();
-
-	}
-
-	/**
-	 * Commits the active rubberband selection.
-	 * <p>
-	 * Redraws any rubberband objects on the screen as permanent objects then clears the selection.
-	 * </p>
-	 */
-	public void commitRubberbandSelection() {
-		rubberband.draw(imageFDC);
-		if (isRubberbandHidden()) rubberband.draw(displayFDC);
-		rubberband.clear();
-	}
-	
-	/**
-	 * Hides the rubberband (but does not eliminate it).
-	 * <p>
-	 * Increments by one the rubberband "hide" nesting count.  The rubberband
-	 * is hidden from view (but remains active) if it wasn't already hidden.
-	 * </p>
-	 */
-	public void hideRubberband() {
-		if (rubberbandHiddenNestingCount++ <= 0) {
-			Region region = new Region();
-			rubberband.addDamagedRegion(displayFDC, region);
-			Rectangle r = region.getBounds();
-			paintCanvas.redraw(r.x, r.y, r.width, r.height, true);
-			region.dispose();
-		}
-	}		
-
-	/**
-	 * Shows (un-hides) the rubberband.
-	 * <p>
-	 * Decrements by one the rubberband "hide" nesting count.  The rubberband
-	 * is only made visible when showRubberband() has been called once for each
-	 * previous hideRubberband().  It is not permitted to call showRubberband() if
-	 * the rubber band is not presently hidden.
-	 * </p>
-	 */
-	public void showRubberband() {
-		if (rubberbandHiddenNestingCount <= 0)
-			throw new IllegalStateException("rubberbandHiddenNestingCount > 0");
-		if (--rubberbandHiddenNestingCount == 0) {
-			rubberband.draw(displayFDC);
-		}
-	}
-	
-	/**
-	 * Determines if the rubberband is hidden.
-	 * 
-	 * @return true iff the rubber is hidden
-	 */
-	public boolean isRubberbandHidden() {
-		return rubberbandHiddenNestingCount > 0;
-	}
-
-	/**
-	 * Handles a horizontal scroll event
-	 * 
-	 * @param scrollbar the horizontal scroll bar that posted this event
-	 */
-	public void scrollHorizontally(ScrollBar scrollBar) {
-		if (image == null) return;
-		if (imageWidth > visibleWidth) {
-			final int oldOffset = displayFDC.xOffset;
-			final int newOffset = Math.min(scrollBar.getSelection(), imageWidth - visibleWidth);
-			if (oldOffset != newOffset) {
-				paintCanvas.update();
-				displayFDC.xOffset = newOffset;
-				paintCanvas.scroll(Math.max(oldOffset - newOffset, 0), 0, Math.max(newOffset - oldOffset, 0), 0,
-					visibleWidth, visibleHeight, false);
-			}
-		}
-	}
-
-	/**
-	 * Handles a vertical scroll event
-	 * 
-	 * @param scrollbar the vertical scroll bar that posted this event
-	 */
-	public void scrollVertically(ScrollBar scrollBar) {
-		if (image == null) return;
-		if (imageHeight > visibleHeight) {
-			final int oldOffset = displayFDC.yOffset;
-			final int newOffset = Math.min(scrollBar.getSelection(), imageHeight - visibleHeight);
-			if (oldOffset != newOffset) {
-				paintCanvas.update();
-				displayFDC.yOffset = newOffset;
-				paintCanvas.scroll(0, Math.max(oldOffset - newOffset, 0), 0, Math.max(newOffset - oldOffset, 0),
-					visibleWidth, visibleHeight, false);
-			}
-		}
-	}
-	
-	/**
-	 * Handles resize events
-	 */
-	private void handleResize() {
-		paintCanvas.update();
-
-		Rectangle visibleRect = paintCanvas.getClientArea();
-		visibleWidth = visibleRect.width;
-		visibleHeight = visibleRect.height;
-
-		ScrollBar horizontal = paintCanvas.getHorizontalBar();
-		if (horizontal != null) {
-			displayFDC.xOffset = Math.min(horizontal.getSelection(), imageWidth - visibleWidth);
-			if (imageWidth <= visibleWidth) {
-				horizontal.setEnabled(false);
-				horizontal.setSelection(0);
-			} else {
-				final int max = imageWidth - visibleWidth;
-				horizontal.setEnabled(true);
-				horizontal.setValues(displayFDC.xOffset, 0, imageWidth, visibleWidth,
-					8, visibleWidth);
-			}
-		}
-
-		ScrollBar vertical = paintCanvas.getVerticalBar();
-		if (vertical != null) {
-			displayFDC.yOffset = Math.min(vertical.getSelection(), imageHeight - visibleHeight);
-			if (imageHeight <= visibleHeight) {
-				vertical.setEnabled(false);
-				vertical.setSelection(0);
-			} else {
-				final int max = imageHeight - visibleHeight;
-				vertical.setEnabled(true);
-				vertical.setValues(displayFDC.yOffset, 0, imageHeight, visibleHeight,
-					8, visibleHeight);
-			}
-		}
-	}
-
-	/**
-	 * Virtualizes MouseEvent coordinates and stores the current position.
-	 */
-	private void processMouseEventCoordinates(MouseEvent event) {
-		currentPosition.x = event.x =
-			Math.min(Math.max(event.x, 0), visibleWidth - 1) + displayFDC.xOffset;
-		currentPosition.y = event.y =
-			Math.min(Math.max(event.y, 0), visibleHeight - 1) + displayFDC.yOffset;
-	}
-	
-	/**
-	 * Clears the status bar.
-	 */
-	public void clearStatus() {
-		statusActionInfo = "";
-		statusMessageInfo = "";
-		statusCoordInfo = "";
-		updateStatus();
-	}
-
-	/**
-	 * Sets the status bar action text.
-	 *
-	 * @param action the action in progress, null to clear
-	 */
-	public void setStatusAction(String action) {
-		statusActionInfo = (action != null) ? action : "";
-		updateStatus();
-	}
-	
-	/**
-	 * Sets the status bar message text.
-	 * 
-	 * @param message the message to display, null to clear
-	 */
-	public void setStatusMessage(String message) {
-		statusMessageInfo = (message != null) ? message : "";
-		updateStatus();
-	}
-
-	/**
-	 * Sets the coordinates in the status bar.
-	 * 
-	 * @param coord the coordinates to display, null to clear
-	 */
-	public void setStatusCoord(Point coord) {
-		statusCoordInfo = (coord != null) ? PaintPlugin.getResourceString("status.Coord.format", new Object[]
-			{ new Integer(coord.x), new Integer(coord.y)}) : "";
-		updateStatus();
-	}
-
-	/**
-	 * Sets the coordinate range in the status bar.
-	 * 
-	 * @param a the "from" coordinate, must not be null
-	 * @param b the "to" coordinate, must not be null
-	 */
-	public void setStatusCoordRange(Point a, Point b) {
-		statusCoordInfo = PaintPlugin.getResourceString("status.CoordRange.format", new Object[]
-			{ new Integer(a.x), new Integer(a.y), new Integer(b.x), new Integer(b.y)});
-		updateStatus();
-	}
-
-	/**
-	 * Updates the display.
-	 */
-	private void updateStatus() {
-		statusText.setText(
-			PaintPlugin.getResourceString("status.Bar.format", new Object[]
-			{ statusActionInfo, statusMessageInfo, statusCoordInfo }));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintTool.java
deleted file mode 100755
index 7ec50d9..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintTool.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-public interface PaintTool extends PaintSession {
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings);
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintView.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintView.java
deleted file mode 100755
index b194b52..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PaintView.java
+++ /dev/null
@@ -1,500 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.jface.action.*;
-import org.eclipse.jface.resource.*;
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.*;
-import org.eclipse.ui.part.*;
-
-import java.net.*;
-import java.util.*;
-
-/**
- * The view for the paint application.
- * All rendering happens inside the area created by createPartControl().
- * 
- * @see ViewPart
- */
-public class PaintView extends ViewPart {
-	private Display workbenchDisplay;
-
-	// current active settings
-	private ToolSettings toolSettings;
-
-	// paint surface for drawing
-	private PaintSurface paintSurface;
-
-	// map action ids to useful data
-	private HashMap /* of String to PaintTool */ paintToolMap;
-	private HashMap /* of String to Integer */ paintFillTypeMap;
-	private HashMap /* of String to Integer */ paintLineStyleMap;
-	
-	/** UI data **/
-	// handle of currently active tool IAction on the UI
-	private IAction activeToolAction;
-	// handle of currently active filltype IAction on the UI
-	private IAction activeFillTypeAction;
-	// handle of currently active linetype IAction on the UI
-	private IAction activeLineStyleAction;
-
-	// handle of active foreground color box Canvas widget
-	private Canvas activeForegroundColorCanvas;
-	// handle of active background color box Canvas widget
-	private Canvas activeBackgroundColorCanvas;
-	
-	private static final int numPaletteRows = 3;
-	private static final int numPaletteCols = 50;
-
-	// shared data	
-	private Color paintColorBlack, paintColorWhite; // alias for paintColors[0] and [1]
-	private Color[] paintColors;
-	private Font paintDefaultFont; // do not free
-
-	/**
-	 * Constructs a Paint view.
-	 */
-	public PaintView() {
-	}
-
-	/**
-	 * Cleanup
-	 */
-	public void dispose() {
-		if (paintSurface != null) paintSurface.dispose();		
-		if (paintColors != null) {
-			for (int i = 0; i < paintColors.length; ++i) {
-				final Color color = paintColors[i];
-				if (color != null) color.dispose();
-			}
-		}
-		paintDefaultFont = null;
-		paintColors = null;
-		paintSurface = null;
-		super.dispose();
-	}
-	
-	/**
-	 * Called when we must grab focus.
-	 * 
-	 * @see org.eclipse.ui.part.ViewPart#setFocus
-	 */
-	public void setFocus() {
-		paintSurface.setFocus();
-	}
-
-	/**
-	 * Creates the example.
-	 * 
-	 * @see ViewPart#createPartControl
-	 */
-	public void createPartControl(Composite parent) {
-		/*** Initialize shared data ***/
-		workbenchDisplay = parent.getDisplay();
-		
-		paintColorWhite = new Color(workbenchDisplay, 255, 255, 255);
-		paintColorBlack = new Color(workbenchDisplay, 0, 0, 0);
-		
-		paintDefaultFont = workbenchDisplay.getSystemFont();
-
-		paintColors = new Color[numPaletteCols * numPaletteRows];
-		paintColors[0] = paintColorBlack;
-		paintColors[1] = paintColorWhite;
-		for (int i = 2; i < paintColors.length; i++) {
-			paintColors[i] = new Color(workbenchDisplay,
-				((i*7)%255),((i*23)%255), ((i*51)%255));
-		}
-
-		toolSettings = new ToolSettings();
-		toolSettings.commonForegroundColor = paintColorBlack;
-		toolSettings.commonBackgroundColor = paintColorWhite;
-		toolSettings.commonFont = paintDefaultFont;
-
-		/*** Add toolbar contributions ***/
-		final IActionBars actionBars = getViewSite().getActionBars();
-		IToolBarManager toolbarManager = actionBars.getToolBarManager();
-
-		toolbarManager.add(new GroupMarker("group.tools"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.Pencil"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.Airbrush"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.Line"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.PolyLine"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.Rectangle"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.RoundedRectangle"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.Ellipse"));
-		toolbarManager.appendToGroup("group.tools", new SelectPaintToolAction("tool.Text"));
-		toolbarManager.add(new Separator());
-		toolbarManager.add(new GroupMarker("group.options.fill"));
-		toolbarManager.appendToGroup("group.options.fill", new SelectFillTypeAction("fill.None"));
-		toolbarManager.appendToGroup("group.options.fill", new SelectFillTypeAction("fill.Outline"));
-		toolbarManager.appendToGroup("group.options.fill", new SelectFillTypeAction("fill.Solid"));
-		toolbarManager.add(new Separator());
-		toolbarManager.add(new GroupMarker("group.options.linestyle"));
-		toolbarManager.appendToGroup("group.options.linestyle", new SelectLineStyleAction("linestyle.Solid"));
-		toolbarManager.appendToGroup("group.options.linestyle", new SelectLineStyleAction("linestyle.Dash"));
-		toolbarManager.appendToGroup("group.options.linestyle", new SelectLineStyleAction("linestyle.Dot"));
-		toolbarManager.appendToGroup("group.options.linestyle", new SelectLineStyleAction("linestyle.DashDot"));
-		toolbarManager.add(new Separator());
-		toolbarManager.add(new GroupMarker("group.options"));
-		toolbarManager.appendToGroup("group.options", new SelectFontAction("options.Font"));
-		actionBars.updateActionBars();
-
-		/*** Build GUI ***/
-		createGUI(parent);
-
-		/*** Set defaults ***/
-		setPaintToolByID("tool.Pencil");
-		setFillTypeByID("fill.None");
-		setLineStyleByID("linestyle.Solid");
-		setForegroundColor(paintColorBlack);
-		setBackgroundColor(paintColorWhite);
-	}
-
-	/**
-	 * Creates the GUI.
-	 */
-	private void createGUI(Composite parent) {
-		GridLayout gridLayout;
-		GridData gridData;
-
-		/*** Create principal GUI layout elements ***/		
-		Composite displayArea = new Composite(parent, SWT.NONE);
-		gridLayout = new GridLayout();
-		gridLayout.numColumns = 1;
-		displayArea.setLayout(gridLayout);
-
-		// Creating these elements here avoids the need to instantiate the GUI elements
-		// in strict layout order.  The natural layout ordering is an artifact of using
-		// SWT layouts, but unfortunately it is not the same order as that required to
-		// instantiate all of the non-GUI application elements to satisfy referential
-		// dependencies.  It is possible to reorder the initialization to some extent, but
-		// this can be very tedious.
-		
-		// paint canvas
-		final Canvas paintCanvas = new Canvas(displayArea, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL |
-			SWT.NO_REDRAW_RESIZE | SWT.NO_BACKGROUND);
-		gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.FILL_VERTICAL);
-		paintCanvas.setLayoutData(gridData);
-		paintCanvas.setBackground(paintColorWhite);
-		
-		// color selector frame
-		final Composite colorFrame = new Composite(displayArea, SWT.NONE);
-		gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
-		colorFrame.setLayoutData(gridData);
-
-		// tool settings frame
-		final Composite toolSettingsFrame = new Composite(displayArea, SWT.NONE);
-		gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
-		toolSettingsFrame.setLayoutData(gridData);
-
-		// status text
-		final Text statusText = new Text(displayArea, SWT.BORDER | SWT.SINGLE | SWT.READ_ONLY);
-		gridData = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
-		statusText.setLayoutData(gridData);
-
-		/*** Create the remaining application elements inside the principal GUI layout elements ***/	
-		// paintSurface
-		paintSurface = new PaintSurface(paintCanvas, statusText, paintColorWhite);
-
-		// paintToolMap
-		paintToolMap = new HashMap();
-		paintToolMap.put("tool.Pencil", new PencilTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.Airbrush", new AirbrushTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.Line", new LineTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.PolyLine", new PolyLineTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.Rectangle", new RectangleTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.RoundedRectangle", new RoundedRectangleTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.Ellipse", new EllipseTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.Text", new TextTool(toolSettings, paintSurface));
-		paintToolMap.put("tool.Null", null);
-
-		// paintFillTypeMap
-		paintFillTypeMap = new HashMap();
-		paintFillTypeMap.put("fill.None", new Integer(ToolSettings.ftNone));
-		paintFillTypeMap.put("fill.Outline", new Integer(ToolSettings.ftOutline));
-		paintFillTypeMap.put("fill.Solid", new Integer(ToolSettings.ftSolid));
-
-		// paintLineStyleMap
-		paintLineStyleMap = new HashMap();
-		paintLineStyleMap.put("linestyle.Solid", new Integer(SWT.LINE_SOLID));
-		paintLineStyleMap.put("linestyle.Dash", new Integer(SWT.LINE_DASH));
-		paintLineStyleMap.put("linestyle.Dot", new Integer(SWT.LINE_DOT));
-		paintLineStyleMap.put("linestyle.DashDot", new Integer(SWT.LINE_DASHDOT));
-
-		// colorFrame		
-		gridLayout = new GridLayout();
-		gridLayout.numColumns = 3;
-		gridLayout.marginHeight = 0;
-		gridLayout.marginWidth = 0;
-		colorFrame.setLayout(gridLayout);
-
-		// activeForegroundColorCanvas, activeBackgroundColorCanvas
-		activeForegroundColorCanvas = new Canvas(colorFrame, SWT.BORDER);
-		gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		gridData.heightHint = 24;
-		gridData.widthHint = 24;
-		activeForegroundColorCanvas.setLayoutData(gridData);
-
-		activeBackgroundColorCanvas = new Canvas(colorFrame, SWT.BORDER);
-		gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		gridData.heightHint = 24;
-		gridData.widthHint = 24;
-		activeBackgroundColorCanvas.setLayoutData(gridData);
-
-		// paletteCanvas
-		final Canvas paletteCanvas = new Canvas(colorFrame, SWT.BORDER | SWT.NO_BACKGROUND);
-		gridData = new GridData(GridData.FILL_HORIZONTAL);
-		gridData.heightHint = 24;
-		paletteCanvas.setLayoutData(gridData);
-		paletteCanvas.addListener(SWT.MouseDown, new Listener() {
-			public void handleEvent(Event e) {
-				Rectangle bounds = paletteCanvas.getClientArea();
-				Color color = getColorAt(bounds, e.x, e.y);				
-					
-				if (e.button == 1) setForegroundColor(color);
-				else setBackgroundColor(color);
-			}
-			private Color getColorAt(Rectangle bounds, int x, int y) {
-				if (bounds.height <= 1 && bounds.width <= 1) return paintColorWhite;
-				final int row = (y - bounds.y) * numPaletteRows / bounds.height;
-				final int col = (x - bounds.x) * numPaletteCols / bounds.width;
-				return paintColors[Math.min(Math.max(row * numPaletteCols + col, 0), paintColors.length - 1)];
-			}
-		});
-		Listener refreshListener = new Listener() {
-			public void handleEvent(Event e) {
-				if (e.gc == null) return;
-				Rectangle bounds = paletteCanvas.getClientArea();
-				for (int row = 0; row < numPaletteRows; ++row) {
-					for (int col = 0; col < numPaletteCols; ++col) {
-						final int x = bounds.width * col / numPaletteCols;
-						final int y = bounds.height * row / numPaletteRows;
-						final int width = Math.max(bounds.width * (col + 1) / numPaletteCols - x, 1);
-						final int height = Math.max(bounds.height * (row + 1) / numPaletteRows - y, 1);
-						e.gc.setBackground(paintColors[row * numPaletteCols + col]);
-						e.gc.fillRectangle(bounds.x + x, bounds.y + y, width, height);
-					}
-				}
-			}
-		};
-		paletteCanvas.addListener(SWT.Resize, refreshListener);
-		paletteCanvas.addListener(SWT.Paint, refreshListener);
-		//paletteCanvas.redraw();
-		
-		// toolSettingsFrame
-		gridLayout = new GridLayout();
-		gridLayout.numColumns = 4;
-		gridLayout.marginHeight = 0;
-		gridLayout.marginWidth = 0;
-		toolSettingsFrame.setLayout(gridLayout);
-
-		Label label = new Label(toolSettingsFrame, SWT.NONE);
-		label.setText(PaintPlugin.getResourceString("settings.AirbrushRadius.text"));
-
-		final Scale airbrushRadiusScale = new Scale(toolSettingsFrame, SWT.HORIZONTAL);
-		airbrushRadiusScale.setMinimum(5);
-		airbrushRadiusScale.setMaximum(50);
-		airbrushRadiusScale.setSelection(toolSettings.airbrushRadius);
-		airbrushRadiusScale.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL));
-		airbrushRadiusScale.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				toolSettings.airbrushRadius = airbrushRadiusScale.getSelection();
-				updateToolSettings();
-			}
-		});
-
-		label = new Label(toolSettingsFrame, SWT.NONE);
-		label.setText(PaintPlugin.getResourceString("settings.AirbrushIntensity.text"));
-
-		final Scale airbrushIntensityScale = new Scale(toolSettingsFrame, SWT.HORIZONTAL);
-		airbrushIntensityScale.setMinimum(1);
-		airbrushIntensityScale.setMaximum(100);
-		airbrushIntensityScale.setSelection(toolSettings.airbrushIntensity);
-		airbrushIntensityScale.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL));
-		airbrushIntensityScale.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				toolSettings.airbrushIntensity = airbrushIntensityScale.getSelection();
-				updateToolSettings();
-			}
-		});
-	}
-		
-	/**
-	 * Notifies the tool that its settings have changed.
-	 */
-	private void updateToolSettings() {
-		final PaintTool activePaintTool = paintSurface.getPaintTool();
-		if (activePaintTool == null) return;
-		
-		activePaintTool.endSession();
-		activePaintTool.set(toolSettings);
-		activePaintTool.beginSession();
-	}
-
-	/**
-	 * Sets the tool foreground color.
-	 * 
-	 * @param color the new color to use
-	 */
-	public void setForegroundColor(Color color) {
-		if (activeForegroundColorCanvas != null)
-			activeForegroundColorCanvas.setBackground(color);
-		toolSettings.commonForegroundColor = color;
-		updateToolSettings();
-	}
-
-	/**
-	 * Set the tool background color.
-	 * 
-	 * @param color the new color to use
-	 */
-	public void setBackgroundColor(Color color) {
-		if (activeBackgroundColorCanvas != null)
-			activeBackgroundColorCanvas.setBackground(color);
-		toolSettings.commonBackgroundColor = color;
-		updateToolSettings();
-	}
-
-	/**
-	 * Selects a tool given its ID.
-	 */
-	public void setPaintToolByID(String id) {
-		activeToolAction = handleRadioAction(activeToolAction, id);
-		
-		final PaintTool paintTool = (PaintTool) paintToolMap.get(id);
-		paintSurface.setPaintSession(paintTool);
-		updateToolSettings();
-	}
-	
-	/**
-	 * Selects a filltype given its ID.
-	 */
-	public void setFillTypeByID(String id) {
-		activeFillTypeAction = handleRadioAction(activeFillTypeAction, id);
-		
-		final Integer fillType = (Integer) paintFillTypeMap.get(id);
-		toolSettings.commonFillType = fillType.intValue();
-		updateToolSettings();		
-	}
-
-	/**
-	 * Selects line type given its ID.
-	 */
-	public void setLineStyleByID(String id) {
-		activeLineStyleAction = handleRadioAction(activeLineStyleAction, id);
-		
-		final Integer lineType = (Integer) paintLineStyleMap.get(id);
-		toolSettings.commonLineStyle = lineType.intValue();
-		updateToolSettings();		
-	}
-
-	/**
-	 * Gets the IAction for an ID belonging to a set of mutually exclusive actions, and
-	 * toggles the old action off if necessary.
-	 */
-	private IAction handleRadioAction(IAction oldAction, String id) {
-		IAction action = getActionByID(id);
-		if (action != null) {
-			if (oldAction != null) oldAction.setChecked(false);
-			if (! action.isChecked()) action.setChecked(true);
-			return action;
-		}
-		return oldAction;
-	}
-
-	/**
-	 * Gets the IAction representing the UI toolbar button with the specified ID.
-	 */
-	private IAction getActionByID(String id) {
-		final IActionBars actionBars = getViewSite().getActionBars();
-		IToolBarManager toolbarManager = actionBars.getToolBarManager();
-		ActionContributionItem contributionItem = (ActionContributionItem) toolbarManager.find(id);
-		if (contributionItem == null) return null;
-		return contributionItem.getAction();
-	}
-
-	/**
-	 * Returns the Display.
-	 * 
-	 * @return the display we're using
-	 */
-	public Display getDisplay() {
-		return workbenchDisplay;
-	}
-	
-	/**
-	 * Action set glue.
-	 */
-	abstract class PaintAction extends Action {
-		public PaintAction(String id) {
-			super();
-			setId(id);
-
-			try {
-				final URL installUrl = PaintPlugin.getDefault().getBundle().getEntry("/");
-				final URL imageUrl = new URL(installUrl, PaintPlugin.getResourceString(id + ".image"));
-				setImageDescriptor(ImageDescriptor.createFromURL(imageUrl));
-			} catch (MalformedURLException e) {
-				PaintPlugin.logError("", e);	
-			}
-
-			setText(PaintPlugin.getResourceString(id + ".label"));
-			setToolTipText(PaintPlugin.getResourceString(id + ".tooltip"));
-			setDescription(PaintPlugin.getResourceString(id + ".description"));
-		}
-	}
-	class SelectPaintToolAction extends PaintAction {
-		public SelectPaintToolAction(String id) { super(id); }
-		public int getStyle() { return IAction.AS_CHECK_BOX; }
-		public void run() { setPaintToolByID(getId()); }
-		
-	}
-	class SelectFillTypeAction extends PaintAction {
-		public SelectFillTypeAction(String id) { super(id); }
-		public int getStyle() { return IAction.AS_CHECK_BOX; }
-		public void run() { setFillTypeByID(getId()); }
-	}
-	class SelectLineStyleAction extends PaintAction {
-		public SelectLineStyleAction(String id) { super(id); }
-		public int getStyle() { return IAction.AS_CHECK_BOX; }
-		public void run() { setLineStyleByID(getId()); }
-	}
-	class SelectFontAction extends PaintAction {
-		public SelectFontAction(String id) { super(id); }
-		public int getStyle() { return IAction.AS_PUSH_BUTTON; }
-		public void run() {
-			FontDialog fontDialog = new FontDialog(paintSurface.getShell(), SWT.PRIMARY_MODAL);
-			FontData[] fontDatum = toolSettings.commonFont.getFontData();
-			if (fontDatum != null && fontDatum.length > 0) {
-				fontDialog.setFontList(fontDatum);
-			}
-			fontDialog.setText(PaintPlugin.getResourceString("options.Font.dialog.title"));
-
-			paintSurface.hideRubberband();
-			FontData fontData = fontDialog.open();
-			paintSurface.showRubberband();
-			if (fontData != null) {
-				try {
-					Font font = new Font(workbenchDisplay, fontData);
-					toolSettings.commonFont = font;
-					updateToolSettings();
-				} catch (SWTException e) {
-				}
-			}
-		}
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PencilTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PencilTool.java
deleted file mode 100755
index 08d1dab9..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PencilTool.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * A pencil tool.
- */
-public class PencilTool extends ContinuousPaintSession implements PaintTool {
-	private ToolSettings settings;
-	
-	/**
-	 * Constructs a pencil tool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param getPaintSurface() the PaintSurface we will render on.
-	 */
-	public PencilTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		set(toolSettings);
-	}
-	
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		settings = toolSettings;
-	}
-
-	/**
-	 * Returns the name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.Pencil.label");
-	}
-
-	/*
-	 * Template method for drawing
-	 */
-	public void render(final Point point) {
-		final PaintSurface ps = getPaintSurface();
-		ps.drawFigure(new PointFigure(settings.commonForegroundColor, point.x, point.y));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PointFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PointFigure.java
deleted file mode 100644
index 4b85369..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PointFigure.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Point object
- */
-public class PointFigure extends Figure {
-	private Color color;
-	private int x, y;
-	/**
-	 * Constructs a Point
-	 * 
-	 * @param color the color for this object
-	 * @param x the virtual X coordinate of the first end-point
-	 * @param y the virtual Y coordinate of the first end-point
-	 */
-	public PointFigure(Color color, int x, int y) {
-		this.color = color; this.x = x; this.y = y;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Point p = fdc.toClientPoint(x, y);
-		fdc.gc.setBackground(color);
-		fdc.gc.fillRectangle(p.x, p.y, 1, 1);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x, y, x, y));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PolyLineTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PolyLineTool.java
deleted file mode 100755
index 03d1583..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/PolyLineTool.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * A polyline drawing tool.
- */
-public class PolyLineTool extends SegmentedPaintSession implements PaintTool {
-	private ToolSettings settings;
-
-	/**
-	 * Constructs a PolyLineTool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param paintSurface the PaintSurface we will render on.
-	 */
-	public PolyLineTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		set(toolSettings);
-	}
-	
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		settings = toolSettings;
-	}
-
-	/**
-	 * Returns the name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.PolyLine.label");
-	}
-
-	/*
-	 * Template methods for drawing
-	 */
-	protected Figure createFigure(Point[] points, int numPoints, boolean closed) {
-		ContainerFigure container = new ContainerFigure();
-		if (closed && settings.commonFillType != ToolSettings.ftNone && numPoints >= 3) {
-			container.add(new SolidPolygonFigure(settings.commonBackgroundColor, points, numPoints));
-		}
-		if (! closed || settings.commonFillType != ToolSettings.ftSolid || numPoints < 3) {
-			for (int i = 0; i < numPoints - 1; ++i) {
-				final Point a = points[i];
-				final Point b = points[i + 1];
-				container.add(new LineFigure(settings.commonForegroundColor, settings.commonBackgroundColor, settings.commonLineStyle,
-					a.x, a.y, b.x, b.y));
-			}
-			if (closed) {
-				final Point a = points[points.length - 1];
-				final Point b = points[0];
-				container.add(new LineFigure(settings.commonForegroundColor, settings.commonBackgroundColor, settings.commonLineStyle,
-					a.x, a.y, b.x, b.y));
-			}
-		}
-		return container;
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleFigure.java
deleted file mode 100755
index 1f416f8..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleFigure.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Rectangle object
- */
-public class RectangleFigure extends Figure {
-	private Color foregroundColor, backgroundColor;
-	private int lineStyle, x1, y1, x2, y2;
-	/**
-	 * Constructs a Rectangle
-	 * These objects are defined by any two diametrically opposing corners.
-	 * 
-	 * @param color the color for this object
-	 * @param lineStyle the line style for this object
-	 * @param x1 the virtual X coordinate of the first corner
-	 * @param y1 the virtual Y coordinate of the first corner
-	 * @param x2 the virtual X coordinate of the second corner
-	 * @param y2 the virtual Y coordinate of the second corner
-	 */
-	public RectangleFigure(Color foregroundColor, Color backgroundColor, int lineStyle, int x1, int y1, int x2, int y2) {
-		this.foregroundColor = foregroundColor;
-		this.backgroundColor = backgroundColor;
-		this.lineStyle = lineStyle;
-		this.x1 = x1; this.y1 = y1; this.x2 = x2; this.y2 = y2;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Rectangle r = fdc.toClientRectangle(x1, y1, x2, y2);
-		fdc.gc.setForeground(foregroundColor);
-		fdc.gc.setBackground(backgroundColor);
-		fdc.gc.setLineStyle(lineStyle);
-		fdc.gc.drawRectangle(r.x, r.y, r.width - 1, r.height - 1);
-		fdc.gc.setLineStyle(SWT.LINE_SOLID);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x1, y1, x2, y2));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleTool.java
deleted file mode 100755
index d9d6329..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RectangleTool.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * A drawing tool.
- */
-public class RectangleTool extends DragPaintSession implements PaintTool {
-	private ToolSettings settings;
-
-	/**
-	 * Constructs a RectangleTool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param paintSurface the PaintSurface we will render on.
-	 */
-	public RectangleTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		set(toolSettings);
-	}
-	
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		settings = toolSettings;
-	}
-	
-	/**
-	 * Returns name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.Rectangle.label");
-	}
-
-	/*
-	 * Template method for drawing
-	 */
-	protected Figure createFigure(Point a, Point b) {
-		switch (settings.commonFillType) {
-			default:
-			case ToolSettings.ftNone:
-				return new RectangleFigure(settings.commonForegroundColor, settings.commonBackgroundColor, settings.commonLineStyle,
-					a.x, a.y, b.x, b.y);
-			case ToolSettings.ftSolid:
-				return new SolidRectangleFigure(settings.commonBackgroundColor, a.x, a.y, b.x, b.y);
-			case ToolSettings.ftOutline: {
-				ContainerFigure container = new ContainerFigure();
-				container.add(new SolidRectangleFigure(settings.commonBackgroundColor, a.x, a.y, b.x, b.y));
-				container.add(new RectangleFigure(settings.commonForegroundColor, settings.commonBackgroundColor, settings.commonLineStyle,
-					a.x, a.y, b.x, b.y));
-				return container;
-			}
-		}
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleFigure.java
deleted file mode 100755
index 8b62e49..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleFigure.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Rectangle object
- */
-public class RoundedRectangleFigure extends Figure {
-	private Color foregroundColor, backgroundColor;
-	private int lineStyle, x1, y1, x2, y2, diameter;
-	/**
-	 * Constructs a Rectangle
-	 * These objects are defined by any two diametrically opposing corners.
-	 * 
-	 * @param color the color for this object
-	 * @param lineStyle the line style for this object
-	 * @param x1 the virtual X coordinate of the first corner
-	 * @param y1 the virtual Y coordinate of the first corner
-	 * @param x2 the virtual X coordinate of the second corner
-	 * @param y2 the virtual Y coordinate of the second corner
-	 * @param diameter the diameter of curvature of all four corners
-	 */
-	public RoundedRectangleFigure(Color foregroundColor, Color backgroundColor, int lineStyle, int x1, int y1, int x2, int y2, int diameter) {
-		this.foregroundColor = foregroundColor;
-		this.backgroundColor = backgroundColor;
-		this.lineStyle = lineStyle;
-		this.x1 = x1; this.y1 = y1; this.x2 = x2; this.y2 = y2;
-		this.diameter = diameter;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Rectangle r = fdc.toClientRectangle(x1, y1, x2, y2);
-		fdc.gc.setForeground(foregroundColor);
-		fdc.gc.setBackground(backgroundColor);
-		fdc.gc.setLineStyle(lineStyle);
-		fdc.gc.drawRoundRectangle(r.x, r.y, r.width - 1, r.height - 1, diameter, diameter);
-		fdc.gc.setLineStyle(SWT.LINE_SOLID);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x1, y1, x2, y2));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleTool.java
deleted file mode 100755
index 052bbb6..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/RoundedRectangleTool.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * A drawing tool.
- */
-public class RoundedRectangleTool extends DragPaintSession implements PaintTool {
-	private ToolSettings settings;
-
-	/**
-	 * Constructs a RoundedRectangleTool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param paintSurface the PaintSurface we will render on.
-	 */
-	public RoundedRectangleTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		set(toolSettings);
-	}
-	
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		settings = toolSettings;
-	}
-	
-	/**
-	 * Returns name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.RoundedRectangle.label");
-	}
-
-	/*
-	 * Template methods for drawing
-	 */
-	protected Figure createFigure(Point a, Point b) {
-		ContainerFigure container = new ContainerFigure();
-		if (settings.commonFillType != ToolSettings.ftNone)
-			container.add(new SolidRoundedRectangleFigure(settings.commonBackgroundColor,
-				a.x, a.y, b.x, b.y, settings.roundedRectangleCornerDiameter));
-		if (settings.commonFillType != ToolSettings.ftSolid)
-			container.add(new RoundedRectangleFigure(settings.commonForegroundColor, settings.commonBackgroundColor,
-				settings.commonLineStyle, a.x, a.y, b.x, b.y, settings.roundedRectangleCornerDiameter));
-		return container;
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SegmentedPaintSession.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SegmentedPaintSession.java
deleted file mode 100755
index 342edb1..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SegmentedPaintSession.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-
-import java.util.*;
-
-/**
- * The superclass for paint tools that contruct objects from individually
- * picked segments.
- */
-public abstract class SegmentedPaintSession extends BasicPaintSession {
-	/**
-	 * The set of control points making up the segmented selection
-	 */
-	private Vector /* of Point */ controlPoints = new Vector();
-
-	/**
-	 * The previous figure (so that we can abort with right-button)
-	 */
-	private Figure previousFigure = null;
-
-	/**
-	 * The current figure (so that we can abort with right-button)
-	 */
-	private Figure currentFigure = null;
-
-	/**
-	 * Constructs a PaintSession.
-	 * 
-	 * @param paintSurface the drawing surface to use
-	 */
-	protected SegmentedPaintSession(PaintSurface paintSurface) {
-		super(paintSurface);
-	}
-
-	/**
-	 * Activates the tool.
-	 */
-	public void beginSession() {
-		getPaintSurface().setStatusMessage(PaintPlugin.getResourceString(
-			"session.SegmentedInteractivePaint.message.anchorMode"));
-		previousFigure = null;
-		currentFigure = null;
-		controlPoints.clear();
-	}
-	
-	/**
-	 * Deactivates the tool.
-     */
-	public void endSession() {
-		getPaintSurface().clearRubberbandSelection();
-		if (previousFigure != null) getPaintSurface().drawFigure(previousFigure);
-	}
-	
-	/**
-	 * Resets the tool.
-	 * Aborts any operation in progress.
-	 */
-	public void resetSession() {
-		getPaintSurface().clearRubberbandSelection();
-		if (previousFigure != null) getPaintSurface().drawFigure(previousFigure);
-		
-		getPaintSurface().setStatusMessage(PaintPlugin.getResourceString(
-			"session.SegmentedInteractivePaint.message.anchorMode"));
-		previousFigure = null;
-		currentFigure = null;
-		controlPoints.clear();
-	}
-
-	/**
-	 * Handles a mouseDown event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseDown(MouseEvent event) {
-		if (event.button != 1) return;
-
-		getPaintSurface().setStatusMessage(PaintPlugin.getResourceString(
-			"session.SegmentedInteractivePaint.message.interactiveMode"));
-		previousFigure = currentFigure;
-
-		if (controlPoints.size() > 0) {
-			final Point lastPoint = (Point) controlPoints.elementAt(controlPoints.size() - 1);
-			if (lastPoint.x == event.x || lastPoint.y == event.y) return; // spurious event
-		}
-		controlPoints.add(new Point(event.x, event.y));
-	}
-
-	/**
-	 * Handles a mouseDoubleClick event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseDoubleClick(MouseEvent event) {
-		if (event.button != 1) return;
-		if (controlPoints.size() >= 2) {
-			getPaintSurface().clearRubberbandSelection();
-			previousFigure = createFigure(
-				(Point[]) controlPoints.toArray(new Point[controlPoints.size()]),
-				controlPoints.size(), true);
-		}
-		resetSession();
-	}
-
-	/**
-	 * Handles a mouseUp event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseUp(MouseEvent event) {
-		if (event.button != 1) {
-			resetSession(); // abort if right or middle mouse button pressed
-			return;
-		}
-	}
-	
-	/**
-	 * Handles a mouseMove event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseMove(MouseEvent event) {
-		final PaintSurface ps = getPaintSurface();
-		if (controlPoints.size() == 0) {
-			ps.setStatusCoord(ps.getCurrentPosition());
-			return; // spurious event
-		} else {
-			ps.setStatusCoordRange((Point) controlPoints.elementAt(controlPoints.size() - 1),
-				ps.getCurrentPosition());
-		}
-
-		ps.clearRubberbandSelection();
-		Point[] points = (Point[]) controlPoints.toArray(new Point[controlPoints.size() + 1]);
-		points[controlPoints.size()] = ps.getCurrentPosition();
-		currentFigure = createFigure(points, points.length, false);
-		ps.addRubberbandSelection(currentFigure);
-	}	
-
-	/**
-	 * Template Method: Creates a Figure for drawing rubberband entities and the final product
-	 * 
-	 * @param points the array of control points
-	 * @param numPoints the number of valid points in the array (n >= 2)
-	 * @param closed true if the user double-clicked on the final control point
-	 */
-	protected abstract Figure createFigure(Point[] points, int numPoints, boolean closed);
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidEllipseFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidEllipseFigure.java
deleted file mode 100755
index e23263d..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidEllipseFigure.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Solid Ellipse object
- */
-public class SolidEllipseFigure extends Figure {
-	private Color color;
-	private int x1, y1, x2, y2;
-	/**
-	 * Constructs a SolidEllipse
-	 * These objects are defined by any two diametrically opposing corners of a box
-	 * bounding the ellipse.
-	 * 
-	 * @param color the color for this object
-	 * @param x1 the virtual X coordinate of the first corner
-	 * @param y1 the virtual Y coordinate of the first corner
-	 * @param x2 the virtual X coordinate of the second corner
-	 * @param y2 the virtual Y coordinate of the second corner
-	 */
-	public SolidEllipseFigure(Color color, int x1, int y1, int x2, int y2) {
-		this.color = color; this.x1 = x1; this.y1 = y1; this.x2 = x2; this.y2 = y2;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Rectangle r = fdc.toClientRectangle(x1, y1, x2, y2);
-		fdc.gc.setBackground(color);
-		fdc.gc.fillOval(r.x, r.y, r.width, r.height);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x1, y1, x2, y2));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidPolygonFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidPolygonFigure.java
deleted file mode 100755
index a5aca3d..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidPolygonFigure.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Line object
- */
-public class SolidPolygonFigure extends Figure {
-	private Color color;
-	private int[] points;
-	/**
-	 * Constructs a SolidPolygon
-	 * These objects are defined by a sequence of vertices.
-	 * 
-	 * @param color the color for this object
-	 * @param vertices the array of vertices making up the polygon
-	 * @param numPoint the number of valid points in the array (n >= 3)
-	 */
-	public SolidPolygonFigure(Color color, Point[] vertices, int numPoints) {
-		this.color = color;
-		this.points = new int[numPoints * 2];
-		for (int i = 0; i < numPoints; ++i) {
-			points[i * 2] = vertices[i].x;
-			points[i * 2 + 1] = vertices[i].y;
-		}
-	}
-	public void draw(FigureDrawContext fdc) {
-		int[] drawPoints = new int[points.length];
-		for (int i = 0; i < points.length; i += 2) {
-			drawPoints[i] = points[i] * fdc.xScale - fdc.xOffset;
-			drawPoints[i + 1] = points[i + 1] * fdc.yScale - fdc.yOffset;
-		}
-		fdc.gc.setBackground(color);
-		fdc.gc.fillPolygon(drawPoints);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		int xmin = Integer.MAX_VALUE, ymin = Integer.MAX_VALUE;
-		int xmax = Integer.MIN_VALUE, ymax = Integer.MIN_VALUE;
-
-		for (int i = 0; i < points.length; i += 2) {
-			if (points[i] < xmin) xmin = points[i];
-			if (points[i] > xmax) xmax = points[i];
-			if (points[i+1] < ymin) ymin = points[i+1];
-			if (points[i+1] > ymax) ymax = points[i+1];
-		}		
-		region.add(fdc.toClientRectangle(xmin, ymin, xmax, ymax));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRectangleFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRectangleFigure.java
deleted file mode 100755
index 608a58c..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRectangleFigure.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D SolidRectangle object
- */
-public class SolidRectangleFigure extends Figure {
-	private Color color;
-	private int x1, y1, x2, y2;
-	/**
-	 * Constructs a SolidRectangle
-	 * These objects are defined by any two diametrically opposing corners.
-	 * 
-	 * @param color the color for this object
-	 * @param x1 the virtual X coordinate of the first corner
-	 * @param y1 the virtual Y coordinate of the first corner
-	 * @param x2 the virtual X coordinate of the second corner
-	 * @param y2 the virtual Y coordinate of the second corner
-	 */
-	public SolidRectangleFigure(Color color, int x1, int y1, int x2, int y2) {
-		this.color = color; this.x1 = x1; this.y1 = y1; this.x2 = x2; this.y2 = y2;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Rectangle r = fdc.toClientRectangle(x1, y1, x2, y2);
-		fdc.gc.setBackground(color);
-		fdc.gc.fillRectangle(r.x, r.y, r.width, r.height);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x1, y1, x2, y2));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRoundedRectangleFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRoundedRectangleFigure.java
deleted file mode 100755
index 7b4146a..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/SolidRoundedRectangleFigure.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D SolidRectangle object
- */
-public class SolidRoundedRectangleFigure extends Figure {
-	private Color color;
-	private int x1, y1, x2, y2, diameter;
-	/**
-	 * Constructs a SolidRectangle
-	 * These objects are defined by any two diametrically opposing corners.
-	 * 
-	 * @param color the color for this object
-	 * @param x1 the virtual X coordinate of the first corner
-	 * @param y1 the virtual Y coordinate of the first corner
-	 * @param x2 the virtual X coordinate of the second corner
-	 * @param y2 the virtual Y coordinate of the second corner
-	 * @param diameter the diameter of curvature of all four corners
-	 */
-	public SolidRoundedRectangleFigure(Color color, int x1, int y1, int x2, int y2, int diameter) {
-		this.color = color; this.x1 = x1; this.y1 = y1; this.x2 = x2; this.y2 = y2;
-		this.diameter = diameter;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Rectangle r = fdc.toClientRectangle(x1, y1, x2, y2);
-		fdc.gc.setBackground(color);
-		fdc.gc.fillRoundRectangle(r.x, r.y, r.width, r.height, diameter, diameter);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		region.add(fdc.toClientRectangle(x1, y1, x2, y2));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextFigure.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextFigure.java
deleted file mode 100755
index cdb8929..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextFigure.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.swt.graphics.*;
-
-/**
- * 2D Rectangle object
- */
-public class TextFigure extends Figure {
-	private Color  color;
-	private Font   font;
-	private String text;
-	private int x, y;
-	/**
-	 * Constructs a TextFigure
-	 * 
-	 * @param color the color for this object
-	 * @param font  the font for this object
-	 * @param text  the text to draw, tab and new-line expansion is performed
-	 * @param x     the virtual X coordinate of the top-left corner of the text bounding box
-	 * @param y     the virtual Y coordinate of the top-left corner of the text bounding box
-	 */
-	public TextFigure(Color color, Font font, String text, int x, int y) {
-		this.color = color; this.font = font; this.text = text; this.x = x; this.y = y;
-	}
-	public void draw(FigureDrawContext fdc) {
-		Point p = fdc.toClientPoint(x, y);
-		fdc.gc.setFont(font);
-		fdc.gc.setForeground(color);
-		fdc.gc.drawText(text, p.x, p.y, true);
-	}
-	public void addDamagedRegion(FigureDrawContext fdc, Region region) {
-		Font oldFont = fdc.gc.getFont();
-		fdc.gc.setFont(font);
-		Point textExtent = fdc.gc.textExtent(text);
-		fdc.gc.setFont(oldFont);
-		region.add(fdc.toClientRectangle(x, y, x + textExtent.x, y + textExtent.y));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextTool.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextTool.java
deleted file mode 100755
index b580796..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/TextTool.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-
-import org.eclipse.jface.dialogs.*;
-import org.eclipse.swt.events.*;
-
-/**
- * A text drawing tool.
- */
-public class TextTool extends BasicPaintSession implements PaintTool {
-	private ToolSettings settings;
-	private String drawText = PaintPlugin.getResourceString("tool.Text.settings.defaulttext");
-
-	/**
-	 * Constructs a PaintTool.
-	 * 
-	 * @param toolSettings the new tool settings
-	 * @param paintSurface the PaintSurface we will render on.
-	 */
-	public TextTool(ToolSettings toolSettings, PaintSurface paintSurface) {
-		super(paintSurface);
-		set(toolSettings);
-	}
-	
-	/**
-	 * Sets the tool's settings.
-	 * 
-	 * @param toolSettings the new tool settings
-	 */
-	public void set(ToolSettings toolSettings) {
-		settings = toolSettings;
-	}
-	
-	/**
-	 * Returns name associated with this tool.
-	 * 
-	 * @return the localized name of this tool
-	 */
-	public String getDisplayName() {
-		return PaintPlugin.getResourceString("tool.Text.label");
-	}
-	
-	/**
-	 * Activates the tool.
-	 */
-	public void beginSession() {
-		getPaintSurface().setStatusMessage(PaintPlugin.getResourceString(
-			"session.Text.message"));
-	}
-	
-	/**
-	 * Deactivates the tool.
-     */
-	public void endSession() {
-		getPaintSurface().clearRubberbandSelection();
-	}
-	
-	/**
-	 * Aborts the current operation.
-	 */
-	public void resetSession() {
-		getPaintSurface().clearRubberbandSelection();
-	}
-	
-	/**
-	 * Handles a mouseDown event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseDown(MouseEvent event) {
-		if (event.button == 1) {
-			// draw with left mouse button
-			getPaintSurface().commitRubberbandSelection();
-		} else {
-			// set text with right mouse button
-			getPaintSurface().clearRubberbandSelection();
-			InputDialog inputDialog = new InputDialog(getPaintSurface().getShell(),
-				PaintPlugin.getResourceString("tool.Text.dialog.title"),
-				PaintPlugin.getResourceString("tool.Text.dialog.message"),
-				drawText, null);
-			inputDialog.setBlockOnOpen(true);
-			inputDialog.open();
-			if (inputDialog.getReturnCode() == InputDialog.OK) drawText = inputDialog.getValue();
-			inputDialog.close();
-		}	
-	}
-
-	/**
-	 * Handles a mouseDoubleClick event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseDoubleClick(MouseEvent event) {
-	}
-
-	/**
-	 * Handles a mouseUp event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseUp(MouseEvent event) {
-	}
-	
-	/**
-	 * Handles a mouseMove event.
-	 * 
-	 * @param event the mouse event detail information
-	 */
-	public void mouseMove(MouseEvent event) {
-		final PaintSurface ps = getPaintSurface();
-		ps.setStatusCoord(ps.getCurrentPosition());
-		ps.clearRubberbandSelection();
-		ps.addRubberbandSelection(
-			new TextFigure(settings.commonForegroundColor, settings.commonFont,
-				drawText, event.x, event.y));
-	}
-}
diff --git a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ToolSettings.java b/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ToolSettings.java
deleted file mode 100755
index 02fb877..0000000
--- a/examples/org.eclipse.swt.examples.paint/src/org/eclipse/swt/examples/paint/ToolSettings.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.paint;
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-
-/**
- * Tool Settings objects group tool-related configuration information.
- */
-public class ToolSettings {
-	public static final int ftNone = 0, ftOutline = 1, ftSolid = 2;
-
-	/**
-	 * commonForegroundColor: current tool foreground colour
-	 */
-	public Color commonForegroundColor;
-
-	/**
-	 * commonBackgroundColor: current tool background colour
-	 */
-	public Color commonBackgroundColor;
-
-	/**
-	 * commonFont: current font
-	 */
-	public Font commonFont;
-
-	/**
-	 * commonFillType: current fill type
-	 * <p>One of ftNone, ftOutline, ftSolid.</p>
-	 */
-	public int commonFillType = ftNone;
-
-	/**
-	 * commonLineStyle: current line type
-	 */
-	public int commonLineStyle = SWT.LINE_SOLID;
-	
-	/**
-	 * airbrushRadius: coverage radius in pixels
-	 */
-	public int airbrushRadius = 10;
-	
-	/**
-	 * airbrushIntensity: average surface area coverage in region defined by radius per "jot"
-	 */
-	public int airbrushIntensity = 30;
-	
-	/**
-	 * roundedRectangleCornerDiameter: the diameter of curvature of corners in a rounded rectangle
-	 */
-	public int roundedRectangleCornerDiameter = 16;
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/.classpath b/examples/org.eclipse.swt.opengl.examples/.classpath
deleted file mode 100644
index 8437e3b..0000000
--- a/examples/org.eclipse.swt.opengl.examples/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="src" path="src"/>
-    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-    <classpathentry kind="src" path="/org.eclipse.swt.opengl"/>
-    <classpathentry kind="src" path="/org.eclipse.swt"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.opengl.examples/.project b/examples/org.eclipse.swt.opengl.examples/.project
deleted file mode 100644
index 9112e8e..0000000
--- a/examples/org.eclipse.swt.opengl.examples/.project
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.opengl.examples</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.swt</project>
-		<project>org.eclipse.swt.opengl</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AntialiasingTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AntialiasingTab.java
deleted file mode 100644
index 78a1fbb..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AntialiasingTab.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class AntialiasingTab extends OpenGLTab {
-	private Button antiAliasButton;
-	private float xPos = 0.0f, yPos = 0.0f, zPos = -6.0f;
-	
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(12);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(5);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(12);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(5);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(12);
-		zMove.setMinimum(0);
-		zMove.setThumb(2);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(5);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 11;
-			}
-		});
-
-		antiAliasButton = new Button(composite, SWT.CHECK);
-		antiAliasButton.setText("Anti-Aliasing");
-		antiAliasButton.setSelection(true);
-		antiAliasButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (antiAliasButton.getSelection()) {
-					GL.glEnable(GL.GL_LINE_SMOOTH);
-				} else {
-					GL.glDisable(GL.GL_LINE_SMOOTH);
-				}
-			}
-		});
-		
-		ColorSelectionGroup colorGroup =
-			new ColorSelectionGroup(composite, SWT.NONE);
-		colorGroup.setText("Foreground color");
-		colorGroup.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				GL.glColor3ub((byte) rgb.red, (byte) rgb.green, (byte) rgb.blue);
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GL.glDeleteLists(1, 1);
-	}
-
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Anti-aliasing";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		final float[] BEZIER_POINTS = {
-			-1.5f, -1.5f, 4.0f, -0.5f, -1.5f, 2.0f, 0.5f, -1.5f,
-			-1.0f, 1.5f, -1.5f, 2.0f, -1.5f, -0.5f, 1.0f, -0.5f,
-			-0.5f, 3.0f, 0.5f, -0.5f, 0.0f, 1.5f, -0.5f, -1.0f,
-			-1.5f, 0.5f, 4.0f, -0.5f, 0.5f, 0.0f, 0.5f, 0.5f,
-			3.0f, 1.5f, 0.5f, 4.0f, -1.5f, 1.5f, -2.0f, -0.5f,
-			1.5f, -2.0f, 0.5f, 1.5f, 0.0f, 1.5f, 1.5f, -1.0f,
-		};
-		GL.glHint(GL.GL_LINE_SMOOTH_HINT, GL.GL_NICEST);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glMap2f(GL.GL_MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, BEZIER_POINTS);
-		GL.glMapGrid2f(30, 0.0f, 1.0f, 30, 0.0f, 1.0f);
-
-		GL.glEnable(GL.GL_AUTO_NORMAL);
-		GL.glEnable(GL.GL_LINE_SMOOTH);
-		GL.glEnable(GL.GL_LINE_STIPPLE);
-		GL.glEnable(GL.GL_BLEND);
-		GL.glEnable(GL.GL_MAP2_VERTEX_3);
-
-		// create display lists
-		GL.glNewList(1, GL.GL_COMPILE);
-		GL.glEvalMesh2(GL.GL_LINE, 0, 30, 0, 30);
-		GL.glEndList();
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glCallList(1);	// draw the beizer surface
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AreaTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AreaTab.java
deleted file mode 100644
index 5c6ffab..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/AreaTab.java
+++ /dev/null
@@ -1,434 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class AreaTab extends OpenGLTab {
-	abstract class Shape {
-		abstract void draw();
-	}
-	class State {
-		private String name;
-		private int index;
-		/**
-		 * Constructor.
-		 * 
-		 * @param name the display name of this state
-		 * @param index the display list index corresponding to this state
-		 */
-		State (String name, int index) {
-			super();
-			this.index = index;
-			this.name = name;
-		}
-		void display() {
-			GL.glCallList(index);
-		}
-		void dispose() {
-			GL.glDeleteLists(index, 1);
-		}
-		String getName() {
-			return name;
-		}
-	}
-
-	private State[] states;
-	private State currentState;
-	private float xPos = 0.0f, yPos = 0.0f, zPos = -30.0f;
-	private float xRot = 90.0f, yRot = 0.0f, zRot = 0.0f;
-	private int quadratic, disk;
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(22);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(10);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(22);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(10);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(22);
-		zMove.setMinimum(0);
-		zMove.setThumb(2);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(10);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 40;
-			}
-		});
-
-		Group rotationGroup = new Group(composite, SWT.NONE);
-		rotationGroup.setText("Rotation");
-		rotationGroup.setLayout(new GridLayout(2, false));
-
-		new Label(rotationGroup, SWT.NONE).setText("X:");
-		final Slider xRotation = new Slider(rotationGroup, SWT.NONE);
-		xRotation.setIncrement(10);
-		xRotation.setMaximum(362);
-		xRotation.setMinimum(0);
-		xRotation.setThumb(2);
-		xRotation.setPageIncrement(20);
-		xRotation.setSelection(90);
-		xRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xRot = xRotation.getSelection();
-			}
-		});
-
-		new Label(rotationGroup, SWT.NONE).setText("Y:");
-		final Slider yRotation = new Slider(rotationGroup, SWT.NONE);
-		yRotation.setIncrement(10);
-		yRotation.setMaximum(362);
-		yRotation.setMinimum(0);
-		yRotation.setThumb(2);
-		yRotation.setPageIncrement(20);
-		yRotation.setSelection(0);
-		yRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yRot = yRotation.getSelection();
-			}
-		});
-
-		new Label(rotationGroup, SWT.NONE).setText("Z:");
-		final Slider zRotation = new Slider(rotationGroup, SWT.NONE);
-		zRotation.setIncrement(10);
-		zRotation.setMaximum(362);
-		zRotation.setMinimum(0);
-		zRotation.setThumb(2);
-		zRotation.setPageIncrement(20);
-		zRotation.setSelection(0);
-		zRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zRot = zRotation.getSelection();
-			}
-		});
-
-		Composite optionsGroup = new Composite(composite, SWT.NONE);
-		GridLayout layout = new GridLayout(2, false);
-		layout.marginWidth = 0;
-		optionsGroup.setLayout(layout);
-
-		new Label(optionsGroup, SWT.NONE).setText("Shape:");
-
-		final Combo statesCombo = new Combo(optionsGroup, SWT.READ_ONLY);
-		for (int i = 0; i < states.length; i++) {
-			statesCombo.add(states[i].getName());
-		}
-		statesCombo.select(0);
-		statesCombo.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				currentState = states[statesCombo.getSelectionIndex()];
-			}
-		});
-
-		final Button lightsButton = new Button(composite, SWT.CHECK);
-		lightsButton.setText("Lights");
-		lightsButton.setSelection(true);
-		lightsButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (lightsButton.getSelection()) {
-					GL.glEnable(GL.GL_LIGHTING);
-				} else {
-					GL.glDisable(GL.GL_LIGHTING);
-				}
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GLU.gluDeleteQuadric(quadratic);
-		GLU.gluDeleteQuadric(disk);
-		if (states != null) {
-			for (int i = 0; i < states.length; i++) {
-				states [i].dispose();
-			}
-		}
-	}
-
-	/**
-	 * Draws the logical AND of two shapes.
-	 *
-	 * @param a shape A
-	 * @param b shape B
-	 */
-	void drawAandB(Shape a, Shape b) {
-		// draw parts of B that are inside A
-		drawAinsideB(a, b, GL.GL_BACK, GL.GL_NOTEQUAL);
-		// we do not want the following to show up
-		GL.glColorMask(false, false, false, false);
-		// turn on depth testing
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glDepthFunc(GL.GL_ALWAYS);
-		// render the front face of B
-		b.draw();
-		// reset the depth function
-		GL.glDepthFunc(GL.GL_LESS);
-		// draw parts of A that are inside B
-		drawAinsideB(b, a, GL.GL_BACK, GL.GL_NOTEQUAL);
-	}
-
-	/**
-	 * Draws the contents of one shape that appear within another.
-	 *
-	 * @param a the shape to draw
-	 * @param b the constraining shape
-	 * @param face
-	 * @param test
-	 */
-	void drawAinsideB(Shape a, Shape b, int face, int test) {
-		// turn off the color buffer
-		GL.glColorMask(false, false, false, false);
-		// clear the stencil buffer
-		GL.glClearStencil(0);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		// set to proper Culling
-		GL.glCullFace(face);
-		// render shape A
-		a.draw();
-		// set depth mask
-		GL.glDepthMask(false);
-		// enable stencil test
-		GL.glEnable(GL.GL_STENCIL_TEST);
-		GL.glStencilFunc(GL.GL_ALWAYS, 0, 0);
-		// set the stencil buffer to increment if the depth test passes
-		GL.glStencilOp(GL.GL_KEEP, GL.GL_KEEP, GL.GL_INCR);
-		// turn on back face culling
-		GL.glCullFace(GL.GL_BACK);
-		// render B
-		b.draw();
-		// set the stencil buffer to decrement if the depth test passes
-		GL.glStencilOp(GL.GL_KEEP, GL.GL_KEEP, GL.GL_DECR);
-		// cull the front face
-		GL.glCullFace(GL.GL_FRONT);
-		// render B again
-		b.draw();
-		// set depth mask
-		GL.glDepthMask(true);
-		GL.glColorMask(true, true, true, true);
-		// set the stencil buffer
-		GL.glStencilFunc(test, 0, 1);
-		// turn off depth testing
-		GL.glDisable(GL.GL_DEPTH_TEST);
-		// set to proper culling
-		GL.glCullFace(face);
-		// render A
-		a.draw();
-		// disable stencil test
-		GL.glDisable(GL.GL_STENCIL_TEST);
-	}
-
-	/**
-	 * Draws the logical OR of two shapes.
-	 *
-	 * @param a shape A
-	 * @param b shape B
-	 */
-	void drawAorB(Shape a, Shape b) {
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		a.draw();
-		b.draw();
-		GL.glDisable(GL.GL_DEPTH_TEST);
-	}
-
-	/**
-	 * Draws one shape subtracted from another.
-	 *
-	 * @param a the base shape
-	 * @param b the shape to subtract
-	 */
-	void drawAsubB(Shape a, Shape b) {
-		// draw back parts of B inside A
-		drawAinsideB(b, a, GL.GL_FRONT, GL.GL_NOTEQUAL);
-		// we do not want the following to show up
-		GL.glColorMask(false, false, false, false);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		// change the depth test to GL_ALWAYS
-		GL.glDepthFunc(GL.GL_ALWAYS);
-		// render the front face of B
-		a.draw();
-		// reset the depth function
-		GL.glDepthFunc(GL.GL_LESS);
-		// draw front parts of A outside B
-		drawAinsideB(a, b, GL.GL_BACK, GL.GL_EQUAL);
-	}
-
-	/**
-	 * Draws the specifed shape.
-	 * 
-	 * @param shape the shape to draw
-	 */
-	void drawShape(Shape shape) {
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		shape.draw();
-		GL.glDisable(GL.GL_DEPTH_TEST);
-	}
-
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Area";
-	}
-	
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		if (!hasStencilSupport()) return;
-		
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		float[] lightPos = { 0.0f, 5.0f, -10.0f, 1.0f };
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, lightPos);
-		quadratic = GLU.gluNewQuadric();
-		disk = GLU.gluNewQuadric();
-	
-		GL.glEnable(GL.GL_CULL_FACE);
-		GL.glEnable(GL.GL_LIST_MODE);
-		GL.glEnable(GL.GL_LIGHT0);
-		GL.glEnable(GL.GL_LIGHTING);
-		GL.glLightModeli(GL.GL_LIGHT_MODEL_TWO_SIDE, GL.GL_TRUE);
-
-		final float[] sphereMaterial = { 0.0f, 1.0f, 0.0f, 1.0f };
-		final float[] cylinderMaterial = { 1.0f, 0.0f, 0.0f, 1.0f };
-
-		Shape sphere = new Shape() {
-			public void draw() {
-				GL.glMaterialfv(
-					GL.GL_FRONT_AND_BACK,
-					GL.GL_AMBIENT_AND_DIFFUSE,
-					sphereMaterial);
-				GL.glColor3f(0.0f, 1.0f, 0.0f);
-				GLU.gluSphere(quadratic, 3, 32, 32);
-			}
-		};
-		Shape cylinder = new Shape() {
-			public void draw() {
-				GL.glMaterialfv(
-					GL.GL_FRONT_AND_BACK,
-					GL.GL_AMBIENT_AND_DIFFUSE,
-					cylinderMaterial);
-				GL.glColor3f(1.0f, 0.0f, 0.0f);
-				GLU.gluQuadricOrientation(disk, GLU.GLU_INSIDE);
-				GL.glPushMatrix();
-				GL.glTranslatef(1.0f, 1.0f, 0.0f);
-				GLU.gluDisk(disk, 0, 3, 32, 32);
-				GLU.gluCylinder(quadratic, 3, 3, 6, 32, 32);
-				GL.glPushMatrix();
-				GL.glTranslatef(0.0f, 0.0f, 6.0f);
-				GLU.gluQuadricOrientation(disk, GLU.GLU_OUTSIDE);
-				GLU.gluDisk(disk, 0, 3, 32, 32);
-				GL.glPopMatrix();
-				GL.glPopMatrix();
-			}
-		};
-
-		// create the display lists and states
-		states = new State[6];
-		int index = 1;
-		
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawShape(cylinder);
-		GL.glEndList();
-		states[0] = new State("Cylinder",index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawShape(sphere);
-		GL.glEndList();
-		states[1] = new State("Sphere",index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawAorB(cylinder, sphere);
-		GL.glEndList();
-		states[2] = new State("Cylinder OR Sphere",index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawAandB(cylinder, sphere);
-		GL.glEndList();
-		states[3] = new State("Cylinder AND Sphere",index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawAsubB(cylinder, sphere);
-		GL.glEndList();
-		states[4] = new State("Cylinder SUB Sphere",index++);
-		
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawAsubB(sphere, cylinder);
-		GL.glEndList();
-		states[5] = new State("Sphere SUB Cylinder",index++);
-
-		currentState = states[0];
-	}
-	
-	/**
-	 * @see OpenGLTab#isStencilSupportNeeded
-	 */
-	boolean isStencilSupportNeeded() {
-		return true;
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(
-			GL.GL_COLOR_BUFFER_BIT
-				| GL.GL_DEPTH_BUFFER_BIT
-				| GL.GL_STENCIL_BUFFER_BIT);
-
-		GL.glLoadIdentity();
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glRotatef(xRot, 1.0f, 0.0f, 0.0f);
-		GL.glRotatef(yRot, 0.0f, 1.0f, 0.0f);
-		GL.glRotatef(zRot, 0.0f, 0.0f, 1.0f);
-
-		currentState.display();
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BezierTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BezierTab.java
deleted file mode 100644
index e66b841..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BezierTab.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class BezierTab extends SelectionTab {
-	private boolean showCtrlPoints = true;
-	private Point offset;
-	private int currentPoint = -1;
-	private int lineDivisions = 30;
-	private double[][] ctrlPts = {
-		{	1.5, 0.5, 0.0, 0.6, 0.9, 0.0, 0.85, 0.12,
-			0.0, 1.1, 1.0, 0.0, 0.53, 1.4, 0.0
-		},
-		{	0.53, 1.4, 0.0, 1.03, 1.87, 0.0, 1.52, 0.26,
-			0.0, 1.86, 0.43, 0.0, 1.5, 0.5, 0.0
-		}
-	};
-	private static final int LENGTH = 5;
-	private static final int[][] PICK_NAMES = {
-		{ 1, 2, 3, 4, 5 },
-		{ 6, 7, 8, 9, 10 }
-	};
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		new Label(composite, SWT.NONE).setText("Click and drag points to adjust shape.");
-		new Label(composite, SWT.NONE).setText("Line division count:");
-		final Slider divisions = new Slider(composite, SWT.NONE);
-		divisions.setIncrement(1);
-		divisions.setMaximum(52);
-		divisions.setMinimum(1);
-		divisions.setThumb(2);
-		divisions.setPageIncrement(2);
-		divisions.setSelection(30);
-		divisions.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				lineDivisions = divisions.getSelection();
-			}
-		});
-		
-		final Button showPointsButton = new Button(composite, SWT.CHECK);
-		showPointsButton.setText("Show Points");
-		showPointsButton.setSelection(true);
-		showPointsButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				showCtrlPoints = showPointsButton.getSelection();
-			}
-		});
-		
-		final Button blendButton = new Button(composite, SWT.CHECK);
-		blendButton.setText("Blend");
-		blendButton.setSelection(true);
-		blendButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (blendButton.getSelection()) {
-					GL.glEnable(GL.GL_BLEND);
-				} else {
-					GL.glDisable(GL.GL_BLEND);
-				}
-			}
-		});
-		
-		final Button smoothLineButton = new Button(composite, SWT.CHECK);
-		smoothLineButton.setText("Smooth Line");
-		smoothLineButton.setSelection(true);
-		smoothLineButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (smoothLineButton.getSelection()) {
-					GL.glEnable(GL.GL_LINE_SMOOTH);
-				} else {
-					GL.glDisable(GL.GL_LINE_SMOOTH);
-				}
-			}
-		});
-		
-		final Canvas glCanvas = getGlCanvas();
-		glCanvas.addMouseListener(new MouseAdapter() {
-			public void mouseUp(MouseEvent e) {
-				offset = null;
-			}
-
-		});
-		
-		glCanvas.addListener(SWT.MouseDown, new Listener() {
-			public void handleEvent(Event e) {
-				e.y = glCanvas.getClientArea().height - e.y;
-				if (e.button == 1) {
-					if (processSelection(e.x, e.y, 10) > 0) {
-						offset = new Point(e.x, e.y);
-					} else {
-						currentPoint = 0;
-					}
-				}
-			}
-		});
-		
-		glCanvas.addListener(SWT.MouseMove, new Listener() {
-			public void handleEvent(Event e) {
-				if (offset == null) return;
-				int currentSegment = (currentPoint - 1) / LENGTH;
-				int current = (currentPoint - 1) * 3;
-				if (currentPoint > LENGTH) {
-					current = (currentPoint - 6) * 3;
-				}
-				Rectangle rect = glCanvas.getClientArea();
-				e.y = rect.height - e.y;
-				if (0 < e.x && e.x < rect.width && 0 < e.y && e.y < rect.height && currentPoint > 0) {
-					ctrlPts[currentSegment][current] = (float) e.x / (float) 200;
-					ctrlPts[currentSegment][current + 1] = (float) e.y / (float) 200;
-					switch (currentPoint) {
-						case 10 :
-							ctrlPts[0][0] = (float) e.x / (float) 200;
-							ctrlPts[0][1] = (float) e.y / (float) 200;
-							break;
-						case 6 :
-							ctrlPts[0][12] = (float) e.x / (float) 200;
-							ctrlPts[0][13] = (float) e.y / (float) 200;
-							break;
-					}
-				}
-			}
-		});
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Bezier";
-	}
-	
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glHint(GL.GL_LINE_SMOOTH_HINT, GL.GL_NICEST);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glPointSize(7.0f);
-		GL.glLineWidth(4.0f);
-
-		GL.glEnable(GL.GL_AUTO_NORMAL);
-		GL.glEnable(GL.GL_MAP1_VERTEX_3);
-		GL.glEnable(GL.GL_LINE_SMOOTH);
-		GL.glEnable(GL.GL_BLEND);
-	}
-	
-	/**
-	 * @see SelectionTab.processPick (int[], int)
-	 */
-	void processPick(int[] pSelectBuff, int hits) {
-		int counter = 0;
-		currentPoint = 0;
-		for (int i = 0; i < hits; i++) {
-			int count = pSelectBuff[counter];
-			counter += 3;
-			for (int j = 0; j < count; j++) {
-				currentPoint = pSelectBuff[counter];
-				counter++;
-			}
-		}
-	}
-	
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glTranslatef(-1.0f, -1.0f, -2.45f);
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		for (int i = 0; i < ctrlPts.length; i++) {
-			GL.glMapGrid1d(lineDivisions, 0.0f, 1f);
-			GL.glMap1d(GL.GL_MAP1_VERTEX_3, 0, 1, 3, LENGTH, ctrlPts[i]);
-			GL.glEvalMesh1(GL.GL_LINE, 0, lineDivisions);
-		}
-		if (showCtrlPoints) {
-			GL.glPushName(0);
-			for (int j = 0; j < ctrlPts.length; j++) {
-				for (int i = 0; i < LENGTH * 3; i += 3) {
-					GL.glLoadName(PICK_NAMES[j][i / 3]);
-					GL.glBegin(GL.GL_POINTS);
-					if (PICK_NAMES[j][i / 3] == currentPoint) {
-						GL.glColor3f(1.0f, 0.0f, 0.0f);
-					} else {
-						GL.glColor3f(0.0f, 0.0f, 0.0f);
-					}
-					GL.glVertex3d(ctrlPts[j][i], ctrlPts[j][i + 1], ctrlPts[j][i + 2]);
-					GL.glEnd();
-				}
-			}
-		}
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BitmapTextTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BitmapTextTab.java
deleted file mode 100644
index 084f45a..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/BitmapTextTab.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class BitmapTextTab extends OpenGLTab {
-	private Text messageText;
-	private FontData fontData;
-	private float[] textColor = { 1.0f, 0.0f, 0.0f };
-	private float xPos = -130.0f, yPos = 0.0f;
-	private int listIndexBase;
-	private final static int LIST_INDEX_SIZE = 256;
-	private final static int DEFAULT_FONT_SIZE = 24;
-	private final static String DEFAULT_FONT_NAME = "Courier";
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(42);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(7);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = (xMove.getSelection() * 10) - 200;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(42);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(20);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = (yMove.getSelection() * 10) - 200;
-			}
-		});
-
-		Composite textGroup = new Composite(composite,SWT.NONE);
-		GridLayout layout = new GridLayout(2,false);
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		textGroup.setLayout(layout);
-		textGroup.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-		
-		new Label(textGroup, SWT.NONE).setText("Text:");
-		messageText = new Text(textGroup, SWT.BORDER);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.grabExcessHorizontalSpace = true;
-		messageText.setLayoutData(data);
-		messageText.setText("OpenGL - SWT");
-
-		final Button fontSelectButton = new Button(composite, SWT.NONE);
-		fontSelectButton.setText("Set Font");
-		
-		final ColorSelectionGroup colorGroup =
-			new ColorSelectionGroup(composite, SWT.NONE);
-		colorGroup.setText("Text color");
-		colorGroup.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				GL.glColor3ub((byte) rgb.red, (byte) rgb.green, (byte) rgb.blue);
-			}
-		});
-		
-		fontSelectButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				FontDialog fontDialog = new FontDialog(fontSelectButton.getShell());
-				fontDialog.setText("Choose Font Options");
-				double[] currentColor = new double[4];
-				GL.glGetDoublev(GL.GL_CURRENT_COLOR, currentColor);
-				fontDialog.setRGB(
-					new RGB(
-						(int) currentColor[0] * 255,
-						(int) currentColor[1] * 255,
-						(int) currentColor[2] * 255));
-				fontDialog.setFontData(fontData);
-				FontData result = fontDialog.open();
-				if (result != null) {
-					fontData = result;
-					RGB rgb = fontDialog.getRGB();
-					GL.glColor3ub((byte) rgb.red, (byte) rgb.green, (byte) rgb.blue);
-					colorGroup.setRGB(rgb);
-					getContext().loadBitmapFont(fontData, null, listIndexBase, 32, 96);
-				}
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GL.glDeleteLists(listIndexBase, LIST_INDEX_SIZE);
-	}
-
-	/**
-	 * Draws the text to the screen
-	 * 
-	 * @param string the text to draw
-	 */
-	void drawText(String string) {
-		char[] stringChars = string.toCharArray();
-		int[] text = new int[stringChars.length];
-		for (int i = 0; i < text.length; i++) {
-			text[i] = (int) stringChars[i];
-		}
-		// pushes the display list bits
-		GL.glPushAttrib(GL.GL_LIST_BIT);
-		// sets the base character to 32
-		GL.glListBase(listIndexBase - 32);
-		GL.glCallLists(text.length, GL.GL_UNSIGNED_INT, text);
-		// pops the display list bits
-		GL.glPopAttrib();
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Bitmap Text";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glColor3fv(textColor);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glEnable(GL.GL_BLEND);
-		// build the initial font
-		listIndexBase = GL.glGenLists(LIST_INDEX_SIZE);
-		fontData = new FontData();
-		fontData.setHeight(DEFAULT_FONT_SIZE);
-		fontData.setName(DEFAULT_FONT_NAME);
-		getContext().loadBitmapFont(fontData, null, listIndexBase, 32, LIST_INDEX_SIZE);
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glRasterPos2f(xPos, yPos);
-		drawText(messageText.getText());
-	}
-
-	/**
-	 * @see OpenGLTab#setupViewingArea()
-	 */
-	void setupViewingArea() {
-		// use ortho view since this tab does not need any depth
-		Rectangle rect = getGlCanvas().getClientArea();
-		int width = rect.width;
-		int height = rect.height;
-		width = Math.max(width, 1);
-		GL.glViewport(0, 0, width, height);
-		float nRange = 200.0f;
-		GL.glMatrixMode(GL.GL_PROJECTION);
-		GL.glLoadIdentity();
-		if (width <= height) {
-			GL.glOrtho(
-				-nRange, nRange, -nRange * height / width,
-				nRange * height / width, -nRange, nRange);
-		} else {
-			GL.glOrtho(
-				-nRange * height / width, nRange * height / width, -nRange,
-				nRange, -nRange, nRange);
-		}
-		GL.glMatrixMode(GL.GL_MODELVIEW);
-		GL.glLoadIdentity();
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ColorSelectionGroup.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ColorSelectionGroup.java
deleted file mode 100644
index f0c3cdd..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ColorSelectionGroup.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import java.util.Vector;
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.GL;
-import org.eclipse.swt.widgets.*;
-
-class ColorSelectionGroup implements Listener {
-	private Color color;
-	private Label label;
-	private Image image;
-	private Button button;
-	private Vector listeners = new Vector();
-
-	/**
-	 * Constructor.
-	 * 
-	 * @param parent the parent composite
-	 * @param style style bits to be applied to the color group
-	 */
-	ColorSelectionGroup(Composite parent, int style) {
-		super();
-		initColor(parent.getDisplay());
-
-		Composite colorGroup = new Composite(parent, style);
-		GridLayout layout = new GridLayout(2, false);
-		layout.marginWidth = 0;
-		layout.marginHeight = 0;
-		colorGroup.setLayout(layout);
-//		GridData data = new GridData(GridData.FILL_HORIZONTAL);
-//		data.grabExcessHorizontalSpace = true;
-//		colorGroup.setLayoutData(data);
-
-		button = new Button(colorGroup, SWT.NONE);
-		button.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_END));
-		image = new Image(button.getDisplay(), 12, 12);
-		drawButtonImage();
-		button.setImage(image);
-		button.addListener(SWT.Selection, this);
-		button.addDisposeListener(new DisposeListener() {
-			public void widgetDisposed(DisposeEvent event) {
-				if (image != null) image.dispose();
-				if (color != null) color.dispose();
-			}
-		});
-		
-		label = new Label(colorGroup, SWT.NONE);
-		label.setText("Color");
-//		data = new GridData(GridData.FILL_HORIZONTAL);
-//		data.grabExcessHorizontalSpace = true;
-//		label.setLayoutData(data);
-	}
-
-	/**
-	 * Adds the argument to this group's collection of
-	 * color selection listeners.
-	 * 
-	 * @param listener
-	 */
-	void addColorSelectionListener(IColorSelectionListener listener) {
-		listeners.addElement(listener);
-	}
-	
-	/**
-	 * Draws the colored square on the selection button.
-	 */
-	void drawButtonImage() {
-		GC gc = new GC(image);
-		gc.setBackground(color);
-		Rectangle bounds = image.getBounds();
-		gc.fillRectangle(0, 0, bounds.width, bounds.height);
-		gc.drawRectangle(0, 0, bounds.width - 1, bounds.height - 1);
-		gc.dispose();
-	}
-
-	/**
-	 * @see org.eclipse.swt.widgets.Listener#handleEvent(Event)
-	 */
-	public void handleEvent(Event e) {
-		Shell shell = button.getShell();
-		ColorDialog colorDialog = new ColorDialog(shell);
-		colorDialog.setRGB(
-			new RGB(color.getRed(), color.getGreen(), color.getBlue()));
-		RGB rgb = colorDialog.open();
-		if (rgb == null) return;
-		setRGB(rgb);
-		notifyListeners(rgb);
-	}
-
-	/**
-	 * Initializes the color by querying for the current color.
-	 * 
-	 * @param display
-	 */
-	void initColor(Display display) {
-		double[] currentColor = new double[4];
-		GL.glGetDoublev(GL.GL_CURRENT_COLOR, currentColor);
-		RGB rgb =
-			new RGB(
-				(int) currentColor[0] * 255,
-				(int) currentColor[1] * 255,
-				(int) currentColor[2] * 255);
-		color = new Color(display, rgb);
-	}
-	
-	/**
-	 * Notifies all registered color selection listeners.
-	 * 
-	 * @param value
-	 */
-	void notifyListeners(RGB rgb) {
-		IColorSelectionListener[] listenersArr =
-			new IColorSelectionListener[listeners.size()];
-		listeners.copyInto(listenersArr);
-		for (int i = 0; i < listenersArr.length; i++) {
-			listenersArr [i].handleColorSelection(rgb);
-		}
-	}
-
-	/**
-	 * Removes the argument from this group's collection of color selection
-	 * listeners.  If the argument is not a registered listener then does
-	 * nothing.
-	 * 
-	 * @param listener
-	 */
-	void removeColorSelectionListener(IColorSelectionListener listener) {
-		listeners.removeElement(listener);
-	}
-
-	/**
-	 * Sets the text for the group's label.
-	 * 
-	 * @param text the new label text
-	 */
-	void setText(String text) {
-		label.setText(text);
-	}
-
-	/**
-	 * Sets the current color.
-	 * 
-	 * @param rgb the rgb of the new color
-	 */
-	void setRGB(RGB rgb) {
-		Color oldColor = color;
-		color = new Color(button.getDisplay(), rgb);
-		drawButtonImage();
-		button.setImage(image);
-		if (oldColor != null) oldColor.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/FogTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/FogTab.java
deleted file mode 100644
index da017ed..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/FogTab.java
+++ /dev/null
@@ -1,254 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class FogTab extends OpenGLTab {
-
-	private float rotY = 0.0f;
-	private float yPos = 0.0f, xPos = 0.0f, zPos = -15.0f;
-	private int cubeListIndexBase;
-	private final static int[] FOG_TYPES = { GL.GL_LINEAR, GL.GL_EXP, GL.GL_EXP2 };
-	private final static String[] FOG_NAMES = { "LINEAR", "GL_EXP", "GL_EXP2" };
-	private final static int SLEEP_LENGTH = 0;
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(12);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(5);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(12);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(5);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(24);
-		zMove.setMinimum(0);
-		zMove.setThumb(4);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(10);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 25;
-			}
-		});
-
-		Composite fogTypesGroup = new Composite(composite,SWT.NONE);
-		GridLayout layout = new GridLayout(2,false);
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		fogTypesGroup.setLayout(layout);
-		fogTypesGroup.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-
-		new Label(fogTypesGroup, SWT.NONE).setText("Fog Types:");
-		final Combo fogTypeCombo = new Combo(fogTypesGroup, SWT.READ_ONLY);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.grabExcessHorizontalSpace = true;
-		fogTypeCombo.setLayoutData(data);
-		fogTypeCombo.setItems(FOG_NAMES);
-		fogTypeCombo.select(0);
-
-		new Label(composite, SWT.NONE).setText("Fog Density:");
-		final Slider fogDensitySlider = new Slider(composite, SWT.NONE);
-		fogDensitySlider.setIncrement(1);
-		fogDensitySlider.setMaximum(32);
-		fogDensitySlider.setMinimum(0);
-		fogDensitySlider.setThumb(2);
-		fogDensitySlider.setPageIncrement(5);
-		fogDensitySlider.setSelection(0);
-		fogDensitySlider.setEnabled(false);
-		fogDensitySlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				float fogDensity = ((float)fogDensitySlider.getSelection()) / 100;
-				GL.glFogf(GL.GL_FOG_DENSITY, fogDensity);
-			}
-		});
-		fogTypeCombo.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				int currentSelection = fogTypeCombo.getSelectionIndex();
-				// fog type GL.GL_LINEAR does not utilize fogDensity, but the other fog types do
-				fogDensitySlider.setEnabled(currentSelection != 0);
-				GL.glFogf(GL.GL_FOG_MODE, FOG_TYPES[currentSelection]);
-			}
-		});
-	}
-
-	/**
-	 * Creates a cube at 0,0 in the viewport.
-	 */
- 	void createCube() {
-		GL.glNewList(cubeListIndexBase, GL.GL_COMPILE);
-		GL.glBegin(GL.GL_QUADS);
-		// front
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-0.5f, -0.5f, 0.5f);	// bottom left 
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(0.5f, -0.5f, 0.5f);	// bottom right
-		GL.glColor3f(1.0f, 1.0f, 0.0f);
-		GL.glVertex3f(0.5f, 0.5f, 0.5f);	// top right
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(-0.5f, 0.5f, 0.5f);	// top left
-		// back
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(-0.5f, -0.5f, -0.5f);	// bottom left 
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(0.5f, -0.5f, -0.5f);	// bottom right
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(0.5f, 0.5f, -0.5f);	// top right
-		GL.glColor3f(1.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-0.5f, 0.5f, -0.5f);	// top left
-		// left
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(-0.5f, -0.5f, -0.5f);	// bottom left
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-0.5f, -0.5f, 0.5f);	// bottom right
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(-0.5f, 0.5f, 0.5f);	// top right
-		GL.glColor3f(1.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-0.5f, 0.5f, -0.5f);	// top left	
-		// right
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(0.5f, -0.5f, 0.5f);	// bottom left
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(0.5f, -0.5f, -0.5f);	// bottom right
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(0.5f, 0.5f, -0.5f);	// top right
-		GL.glColor3f(1.0f, 1.0f, 0.0f);
-		GL.glVertex3f(0.5f, 0.5f, 0.5f);	// top left
-		// top
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(0.5f, 0.5f, -0.5f);
-		GL.glColor3f(1.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-0.5f, 0.5f, -0.5f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(-0.5f, 0.5f, 0.5f);
-		GL.glColor3f(1.0f, 1.0f, 0.0f);
-		GL.glVertex3f(0.5f, 0.5f, 0.5f);
-		// bottom
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(0.5f, -0.5f, 0.5f);
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-0.5f, -0.5f, 0.5f);
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(-0.5f, -0.5f, -0.5f);
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(0.5f, -0.5f, -0.5f);
-		GL.glEnd();
-		GL.glEndList();
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GL.glDeleteLists(cubeListIndexBase, 1);
-	}
-
-	/**
-	 * @see OpenGLTab#getSleepLength()
-	 */
-	int getSleepLength() {
-		return SLEEP_LENGTH;	
-	}
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Fog";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		// fog color should be the same as the clear color
-		// to look appropriate
-		float[] fogColor = { 1.0f, 1.0f, 1.0f, 1.0f };
-		GL.glFogfv(GL.GL_FOG_COLOR, fogColor);
-		GL.glHint(GL.GL_FOG_HINT, GL.GL_DONT_CARE);
-		GL.glFogf(GL.GL_FOG_START, 0);
-		GL.glFogf(GL.GL_FOG_DENSITY, 0.0f);
-		// set the end of the start distance; anything > 15
-		// units from the camera will be covered in fog
-		GL.glFogf(GL.GL_FOG_END, 15);
-		GL.glFogf(GL.GL_FOG_MODE, FOG_TYPES[0]);
-		GL.glEnable(GL.GL_FOG);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-
-		cubeListIndexBase = GL.glGenLists(1);
-		createCube();
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glRotatef(rotY, 0.0f, 1.0f, 0.0f);
-
-		GL.glCallList(cubeListIndexBase);
-
-		GL.glPushMatrix();
-		GL.glTranslatef(3, 0, -3);
-		GL.glCallList(cubeListIndexBase);
-		GL.glPopMatrix();
-
-		GL.glPushMatrix();
-		GL.glTranslatef(-3, 0, -3);
-		GL.glCallList(cubeListIndexBase);
-		GL.glPopMatrix();
-
-		GL.glPushMatrix();
-		GL.glTranslatef(0, 0, 4);
-		GL.glCallList(cubeListIndexBase);
-		GL.glPopMatrix();
-
-		rotY += 0.6f;
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/GradientTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/GradientTab.java
deleted file mode 100644
index 61e9309..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/GradientTab.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class GradientTab extends OpenGLTab {
-	private float xPos = 0.0f, yPos = 0.0f, zPos = -7.0f;
-	private float xRot = 180.0f, yRot = 180.0f, zRot = 180.0f;
-	private int currentSelection = 1;
-	private final static float[] BEZIER_COLORS = {
-		0.0f, 1.0f, 0.0f, 0.0f, 0.3f, 0.6f, 0.1f, 0.0f,
-		0.8f, 0.2f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f,
-		0.0f, 0.0f, 1.0f, 0.0f, 0.8f, 0.8f, 0.8f, 0.0f
-	};
-	private final static float[] BEZIER_POINTS = {
-		-1.5f, -1.5f, 4.0f, -0.5f, -1.5f, 2.0f, 0.5f, -1.5f,
-		-1.0f, 1.5f, -1.5f, 2.0f, -1.5f, -0.5f, 1.0f, -0.5f,
-		-0.5f, 3.0f, 0.5f, -0.5f, 0.0f, 1.5f, -0.5f, -1.0f,
-		-1.5f, 0.5f, 4.0f, -0.5f, 0.5f, 0.0f, 0.5f, 0.5f,
-		3.0f, 1.5f, 0.5f, 4.0f, -1.5f, 1.5f, -2.0f, -0.5f,
-		1.5f, -2.0f, 0.5f, 1.5f, 0.0f, 1.5f, 1.5f, -1.0f,
-	};
-	private final static String[] OBJECT_NAMES = { "Bezier", "Square" };
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(12);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(5);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(12);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(5);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(12);
-		zMove.setMinimum(0);
-		zMove.setThumb(2);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(5);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 12;
-			}
-		});
-
-		Group rotationGroup = new Group(composite, SWT.NONE);
-		rotationGroup.setText("Rotation");
-		rotationGroup.setLayout(new GridLayout(2, false));
-
-		new Label(rotationGroup, SWT.NONE).setText("X:");
-		final Slider xRotation = new Slider(rotationGroup, SWT.NONE);
-		xRotation.setIncrement(10);
-		xRotation.setMaximum(362);
-		xRotation.setMinimum(0);
-		xRotation.setThumb(2);
-		xRotation.setPageIncrement(20);
-		xRotation.setSelection(180);
-		xRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xRot = xRotation.getSelection();
-			}
-		});
-
-		new Label(rotationGroup, SWT.NONE).setText("Y:");
-		final Slider yRotation = new Slider(rotationGroup, SWT.NONE);
-		yRotation.setIncrement(10);
-		yRotation.setMaximum(362);
-		yRotation.setMinimum(0);
-		yRotation.setThumb(2);
-		yRotation.setPageIncrement(20);
-		yRotation.setSelection(180);
-		yRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yRot = yRotation.getSelection();
-			}
-		});
-
-		new Label(rotationGroup, SWT.NONE).setText("Z:");
-		final Slider zRotation = new Slider(rotationGroup, SWT.NONE);
-		zRotation.setIncrement(10);
-		zRotation.setMaximum(362);
-		zRotation.setMinimum(0);
-		zRotation.setThumb(2);
-		zRotation.setPageIncrement(20);
-		zRotation.setSelection(180);
-		zRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zRot = zRotation.getSelection();
-			}
-		});
-		
-		Composite objectGroup = new Composite(composite,SWT.NONE);
-		GridLayout layout = new GridLayout(2,false);
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		objectGroup.setLayout(layout);
-		objectGroup.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-
-		new Label(objectGroup, SWT.NONE).setText("Object:");
-		final Combo objectCombo = new Combo(objectGroup, SWT.READ_ONLY);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.grabExcessHorizontalSpace = true;
-		objectCombo.setLayoutData(data);
-		objectCombo.setItems(OBJECT_NAMES);
-		objectCombo.select(0);
-		objectCombo.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				currentSelection = objectCombo.getSelectionIndex() + 1;
-			}
-		});
-	}
-	
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GL.glDeleteLists(1, 2);
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Gradients";
-	}
-	
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glHint(GL.GL_LINE_SMOOTH_HINT, GL.GL_NICEST);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glPolygonMode(GL.GL_FRONT_AND_BACK, GL.GL_FILL);
-		GL.glMap2f(GL.GL_MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, BEZIER_POINTS);
-		GL.glMap2f(GL.GL_MAP2_COLOR_4, 0, 1, 4, 1, 0, 1, 4, 6, BEZIER_COLORS);
-		GL.glMapGrid2f(20, 0.0f, 1.0f, 20, 0.0f, 1.0f);
-		GL.glShadeModel(GL.GL_SMOOTH);
-		GL.glEnable(GL.GL_LINE_SMOOTH);
-		GL.glEnable(GL.GL_LINE_STIPPLE);
-		GL.glEnable(GL.GL_BLEND);
-		GL.glEnable(GL.GL_MAP2_COLOR_4);
-		GL.glEnable(GL.GL_MAP2_VERTEX_3);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-
-		// create display lists
-		GL.glNewList(1, GL.GL_COMPILE);
-		GL.glEvalMesh2(GL.GL_FILL, 0, 20, 0, 20);
-		GL.glEndList();
-		GL.glNewList(2, GL.GL_COMPILE);
-		GL.glBegin(GL.GL_TRIANGLE_FAN);
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(0.0f, 0.0f, 0.0f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(0.0f, 2.0f, 0.0f);
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-2.0f, 2.0f, 0.0f);
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(-2.0f, 0.0f, 0.0f);
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(-2.0f, -2.0f, 0.0f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(0.0f, -2.0f, 0.0f);
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(2.0f, -2.0f, 0.0f);
-		GL.glColor3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3f(2.0f, 0.0f, 0.0f);
-		GL.glColor3f(0.0f, 1.0f, 0.0f);
-		GL.glVertex3f(2.0f, 2.0f, 0.0f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(0.0f, 2.0f, 0.0f);
-		GL.glEnd();
-		GL.glEndList();
-	}
-	
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glRotatef(xRot, 1.0f, 0.0f, 0.0f);
-		GL.glRotatef(yRot, 0.0f, 1.0f, 0.0f);
-		GL.glRotatef(zRot, 0.0f, 0.0f, 1.0f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glCallList(currentSelection);
-	}
-}
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/IColorSelectionListener.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/IColorSelectionListener.java
deleted file mode 100644
index 346b563..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/IColorSelectionListener.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-import org.eclipse.swt.graphics.RGB;
-
- 
-public interface IColorSelectionListener {
-	public void handleColorSelection(RGB rgb);
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/LightTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/LightTab.java
deleted file mode 100644
index 701eb9c..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/LightTab.java
+++ /dev/null
@@ -1,354 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class LightTab extends OpenGLTab {
-	private float[] materialShininess = { 25.0f };
-	private float[] lightPosition = { 0.0f, 0.0f, 0.0f, 1.0f };
-	private float[][] colorValues = {
-		{ 1.0f, 1.0f, 1.0f, 1.0f },	// light diffuse
-		{ 1.0f, 1.0f, 1.0f, 1.0f },	// light ambient
-		{ 1.0f, 1.0f, 1.0f, 1.0f },	// light specular
-		{ 0.5f, 0.5f, 0.5f, 1.0f },	// light main ambient
-		{ 0.0f, 0.0f, 1.0f, 1.0f },	// material diffuse
-		{ 0.3f, 0.3f, 0.3f, 1.0f },	// material ambient
-		{ 1.0f, 1.0f, 1.0f, 1.0f }	// material specular
-	};
-	private float yPos = 0.0f, xPos = 0.0f, zPos = -20.0f;
-	private int quadratic, sphere;
-	// sourceType values: 0 = light, 1 = material
-	private int sourceType;
-	// lightType values: 0 = diffuse, 1 = ambient, 2 = specular, 3 = main ambient 
-	private int lightType = 0;
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(22);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(10);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(22);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(10);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(22);
-		zMove.setMinimum(0);
-		zMove.setThumb(2);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(10);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 30;
-			}
-		});
-
-		Group positionGroup = new Group(composite, SWT.NONE);
-		positionGroup.setText("Light Position");
-		positionGroup.setLayout(new GridLayout(2, false));
-
-		new Label(positionGroup, SWT.NONE).setText("X:");
-		final Slider lightX = new Slider(positionGroup, SWT.NONE);
-		lightX.setIncrement(1);
-		lightX.setMaximum(22);
-		lightX.setMinimum(0);
-		lightX.setThumb(2);
-		lightX.setPageIncrement(2);
-		lightX.setSelection(10);
-		lightX.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				lightPosition[0] = ((float) lightX.getSelection() * 10) - 100;
-			}
-		});
-
-		new Label(positionGroup, SWT.NONE).setText("Y:");
-		final Slider lightY = new Slider(positionGroup, SWT.NONE);
-		lightY.setIncrement(1);
-		lightY.setMaximum(22);
-		lightY.setMinimum(0);
-		lightY.setThumb(2);
-		lightY.setPageIncrement(2);
-		lightY.setSelection(10);
-		lightY.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				lightPosition[1] = ((float) lightY.getSelection() * 10) - 100;
-			}
-		});
-
-		new Label(positionGroup, SWT.NONE).setText("Z:");
-		final Slider lightZ = new Slider(positionGroup, SWT.NONE);
-		lightZ.setIncrement(1);
-		lightZ.setMaximum(22);
-		lightZ.setMinimum(0);
-		lightZ.setThumb(2);
-		lightZ.setPageIncrement(2);
-		lightZ.setSelection(10);
-		lightZ.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				lightPosition[2] = ((float) lightZ.getSelection() * 10) - 20;
-			}
-		});
-
-		Group lightColorsGroup = new Group(composite, SWT.NONE);
-		lightColorsGroup.setText("Light Colors");
-		lightColorsGroup.setLayout(new GridLayout());
-		GridData data = new GridData(GridData.FILL_BOTH);
-		lightColorsGroup.setLayoutData(data);
-
-		ColorSelectionGroup lightDiffuseButton =
-			new ColorSelectionGroup(lightColorsGroup, SWT.NONE);
-		lightDiffuseButton.setText("Diffuse");
-		lightDiffuseButton.setRGB(
-			new RGB(
-				(int) (colorValues[0][0] * 255),
-				(int) (colorValues[0][1] * 255),
-				(int) (colorValues[0][2] * 255)));
-		lightDiffuseButton
-			.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				colorValues[0][0] = ((float) rgb.red) / 255;
-				colorValues[0][1] = ((float) rgb.green) / 255;
-				colorValues[0][2] = ((float) rgb.blue) / 255;
-				setColorValues();
-			}
-		});
-
-		ColorSelectionGroup lightAmbientButton =
-			new ColorSelectionGroup(lightColorsGroup, SWT.NONE);
-		lightAmbientButton.setText("Ambient");
-		lightAmbientButton.setRGB(
-			new RGB(
-				(int) (colorValues[1][0] * 255),
-				(int) (colorValues[1][1] * 255),
-				(int) (colorValues[1][2] * 255)));
-		lightAmbientButton
-			.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				colorValues[1][0] = ((float) rgb.red) / 255;
-				colorValues[1][1] = ((float) rgb.green) / 255;
-				colorValues[1][2] = ((float) rgb.blue) / 255;
-				setColorValues();
-			}
-		});
-
-		ColorSelectionGroup lightSpecularButton =
-			new ColorSelectionGroup(lightColorsGroup, SWT.NONE);
-		lightSpecularButton.setText("Specular");
-		lightSpecularButton.setRGB(
-			new RGB(
-				(int) (colorValues[2][0] * 255),
-				(int) (colorValues[2][1] * 255),
-				(int) (colorValues[2][2] * 255)));
-		lightSpecularButton
-			.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				colorValues[2][0] = ((float) rgb.red) / 255;
-				colorValues[2][1] = ((float) rgb.green) / 255;
-				colorValues[2][2] = ((float) rgb.blue) / 255;
-				setColorValues();
-			}
-		});
-
-		ColorSelectionGroup lightMainAmbientButton =
-			new ColorSelectionGroup(lightColorsGroup, SWT.NONE);
-		lightMainAmbientButton.setText("Main Ambient");
-		lightMainAmbientButton.setRGB(
-			new RGB(
-				(int) (colorValues[3][0] * 255),
-				(int) (colorValues[3][1] * 255),
-				(int) (colorValues[3][2] * 255)));
-		lightMainAmbientButton
-			.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				colorValues[3][0] = ((float) rgb.red) / 255;
-				colorValues[3][1] = ((float) rgb.green) / 255;
-				colorValues[3][2] = ((float) rgb.blue) / 255;
-				setColorValues();
-			}
-		});
-
-		Group materialColorsGroup = new Group(composite, SWT.NONE);
-		materialColorsGroup.setText("Material Colors");
-		materialColorsGroup.setLayout(new GridLayout());
-		data = new GridData(GridData.FILL_BOTH);
-		materialColorsGroup.setLayoutData(data);
-
-		ColorSelectionGroup materialDiffuseButton =
-			new ColorSelectionGroup(materialColorsGroup, SWT.NONE);
-		materialDiffuseButton.setText("Diffuse");
-		materialDiffuseButton.setRGB(
-			new RGB(
-				(int) (colorValues[4][0] * 255),
-				(int) (colorValues[4][1] * 255),
-				(int) (colorValues[4][2] * 255)));
-		materialDiffuseButton
-			.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				colorValues[4][0] = ((float) rgb.red) / 255;
-				colorValues[4][1] = ((float) rgb.green) / 255;
-				colorValues[4][2] = ((float) rgb.blue) / 255;
-				setColorValues();
-			}
-		});
-
-		ColorSelectionGroup materialAmbientButton =
-			new ColorSelectionGroup(materialColorsGroup, SWT.NONE);
-		materialAmbientButton.setText("Ambient");
-		materialAmbientButton.setRGB(
-			new RGB(
-				(int) (colorValues[5][0] * 255),
-				(int) (colorValues[5][1] * 255),
-				(int) (colorValues[5][2] * 255)));
-		materialAmbientButton
-			.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				colorValues[5][0] = ((float) rgb.red) / 255;
-				colorValues[5][1] = ((float) rgb.green) / 255;
-				colorValues[5][2] = ((float) rgb.blue) / 255;
-				setColorValues();
-			}
-		});
-
-		ColorSelectionGroup materialSpecularButton =
-			new ColorSelectionGroup(materialColorsGroup, SWT.NONE);
-		materialSpecularButton.setText("Specular");
-		materialSpecularButton.setRGB(
-			new RGB(
-				(int) (colorValues[6][0] * 255),
-				(int) (colorValues[6][1] * 255),
-				(int) (colorValues[6][2] * 255)));
-		materialSpecularButton
-			.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				colorValues[6][0] = ((float) rgb.red) / 255;
-				colorValues[6][1] = ((float) rgb.green) / 255;
-				colorValues[6][2] = ((float) rgb.blue) / 255;
-				setColorValues();
-			}
-		});
-
-		new Label(composite, SWT.NONE).setText("Material Shininess:");
-		final Slider shineSlider = new Slider(composite, SWT.NONE);
-		shineSlider.setIncrement(5);
-		shineSlider.setMaximum(102);
-		shineSlider.setMinimum(0);
-		shineSlider.setThumb(2);
-		shineSlider.setPageIncrement(10);
-		shineSlider.setSelection(25);
-		shineSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				materialShininess[0] = shineSlider.getSelection();
-				GL.glMaterialfv(GL.GL_FRONT_AND_BACK,
-					GL.GL_SHININESS,
-					materialShininess);
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GLU.gluDeleteQuadric(quadratic);
-		GL.glDeleteLists(sphere, 1);
-	}
-
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Light";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glClearDepth(1.0);
-		setColorValues();
-		GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SHININESS, materialShininess);
-		quadratic = GLU.gluNewQuadric();
-		GLU.gluQuadricNormals(quadratic, GLU.GLU_SMOOTH);
-		GL.glHint(GL.GL_LINE_SMOOTH_HINT, GL.GL_NICEST);
-		GL.glHint(GL.GL_PERSPECTIVE_CORRECTION_HINT, GL.GL_NICEST);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glPointSize(2.0f);
-		GL.glEnable(GL.GL_LIGHTING);
-		GL.glEnable(GL.GL_LIGHT0);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		sphere = GL.glGenLists(1);
-		GL.glNewList(sphere, GL.GL_COMPILE);
-		GLU.gluSphere(quadratic, 3, 32, 32);
-		GL.glEndList();
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, lightPosition);
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glCallList(sphere);
-	}
-
-	/**
-	 * Sets the current color values into the rendered display.
-	 */
-	void setColorValues() {
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_DIFFUSE, colorValues[0]);
-		GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_DIFFUSE, colorValues[4]);
-		GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT, colorValues[5]);
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_AMBIENT, colorValues[1]);
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_SPECULAR, colorValues[2]);
-		GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SPECULAR, colorValues[6]);
-		GL.glLightModelfv(GL.GL_LIGHT_MODEL_AMBIENT, colorValues[3]);
-		GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SHININESS, materialShininess);
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/NurbTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/NurbTab.java
deleted file mode 100644
index c25e8c6..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/NurbTab.java
+++ /dev/null
@@ -1,294 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class NurbTab extends OpenGLTab {
-	private float xPos = -5.0f, yPos = -5.0f, zPos = -25.0f;
-	private float xRot = 330.0f, yRot = 0.0f, zRot = 0.0f;
-	private int nurb;
-
-	/**
-	 * Returns a 3 dimensional array to store vertex points for the nurb
-	 * surface.
-	 * 
-	 * @return the array
-	 */
-	float[][][] buildNurb() {
-		float[][][] ctrl = new float[4][4][3];
-		for (int i = 0; i < 4; i++) {
-			for (int j = 0; j < 4; j++) {
-				// set the x value
-				ctrl[i][j][0] = 2 * (i + (float) Math.cos(i + j));
-				// set the y value
-				ctrl[i][j][1] = 2 * (j + (float) Math.cos(i + j));
-				// set the z value
-				if ((i == 1 && j == 1) || (i == 2 && j == 2)) {
-					// this makes the hill
-					ctrl[i][j][2] = 6.0f;
-				} else {
-					ctrl[i][j][2] = 0.0f;
-				}
-			}
-		}
-		// sets this particular z value to a large number to make a high
-		// hill
-		ctrl[2][2][2] = 8.0f;
-
-		return ctrl;
-	}
-	
-	/**
-	 * Returns a 1 dimensional array representing the 3 dimensional
-	 * argument.  This result can be passed to the nurb renderer
-	 * 
-	 * @param ctrl source 3D array
-	 * @return 1D array
-	 */
-	float[] convert(float[][][] ctrl) {
-		float[] pts =
-			new float[ctrl.length * ctrl[0].length * ctrl[0][0].length];
-		int row = 0;
-		int col = 0;
-		// set rowIncr to number of columns * depth 
-		int rowIncr = ctrl[0].length * ctrl[0][0].length;
-		// set colIncr to depth 
-		int colIncr = ctrl[0][0].length;
-		// loop through rows 
-		for (int i = 0; i < ctrl.length; i++) {
-			col = 0;
-			// loop through columns
-			for (int j = 0; j < ctrl[0].length; j++) {
-				// loop through to get the depth values
-				for (int k = 0; k < ctrl[0][0].length; k++) {
-					pts[row + col + k] = ctrl[i][j][k];
-				}
-				col += colIncr;
-			}
-			row += rowIncr;
-		}
-		return pts;
-	}
-	
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(final Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(12);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(5);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(12);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(5);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(12);
-		zMove.setMinimum(0);
-		zMove.setThumb(2);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(5);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 30;
-			}
-		});
-
-		Group rotationGroup = new Group(composite, SWT.NONE);
-		rotationGroup.setText("Rotation");
-		rotationGroup.setLayout(new GridLayout(2, false));
-
-		new Label(rotationGroup, SWT.NONE).setText("X:");
-		final Slider xRotation = new Slider(rotationGroup, SWT.NONE);
-		xRotation.setIncrement(10);
-		xRotation.setMaximum(362);
-		xRotation.setMinimum(0);
-		xRotation.setThumb(2);
-		xRotation.setPageIncrement(20);
-		xRotation.setSelection(330);
-		xRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xRot = xRotation.getSelection();
-			}
-		});
-
-		new Label(rotationGroup, SWT.NONE).setText("Y:");
-		final Slider yRotation = new Slider(rotationGroup, SWT.NONE);
-		yRotation.setIncrement(10);
-		yRotation.setMaximum(362);
-		yRotation.setMinimum(0);
-		yRotation.setThumb(2);
-		yRotation.setPageIncrement(20);
-		yRotation.setSelection(0);
-		yRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yRot = yRotation.getSelection();
-			}
-		});
-
-		new Label(rotationGroup, SWT.NONE).setText("Z:");
-		final Slider zRotation = new Slider(rotationGroup, SWT.NONE);
-		zRotation.setIncrement(10);
-		zRotation.setMaximum(362);
-		zRotation.setMinimum(0);
-		zRotation.setThumb(2);
-		zRotation.setPageIncrement(20);
-		zRotation.setSelection(0);
-		zRotation.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zRot = zRotation.getSelection();
-			}
-		});
-
-		new Label(composite, SWT.NONE).setText("Sampling Tolerance:");
-		final Slider sSlider = new Slider(composite, SWT.NONE);
-		sSlider.setIncrement(1);
-		sSlider.setMaximum(101);
-		sSlider.setMinimum(0);
-		sSlider.setThumb(2);
-		sSlider.setPageIncrement(2);
-		sSlider.setSelection(75);
-		sSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				GLU.gluNurbsProperty(
-					nurb,
-					GLU.GLU_SAMPLING_TOLERANCE,
-					sSlider.getSelection() + 1);
-			}
-		});
-
-		final Button fillButton = new Button(composite, SWT.CHECK);
-		fillButton.setText("Fill");
-		fillButton.setSelection(true);
-		fillButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (fillButton.getSelection()) {
-					GLU.gluNurbsProperty(
-						nurb,
-						GLU.GLU_DISPLAY_MODE,
-						GLU.GLU_FILL);
-				} else {
-					GLU.gluNurbsProperty(
-						nurb,
-						GLU.GLU_DISPLAY_MODE,
-						GLU.GLU_OUTLINE_POLYGON);
-				}
-			}
-		});
-		
-		ColorSelectionGroup colorGroup =
-			new ColorSelectionGroup(composite, SWT.NONE);
-		colorGroup.setText("Foreground color");
-		colorGroup.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				GL.glColor3ub((byte) rgb.red, (byte) rgb.green, (byte) rgb.blue);
-			}
-		});
-	}
-	
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GLU.gluDeleteNurbsRenderer(nurb);
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Nurb";
-	}
-	
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		// set up material color which helps show curves
-		float mat_specular[] = { 1.0f, 1.0f, 1.0f, 1.0f };
-		float mat_shininess[] = { 100.0f };
-		GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SPECULAR, mat_specular);
-		GL.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SHININESS, mat_shininess);
-		GL.glColorMaterial(GL.GL_FRONT_AND_BACK, GL.GL_AMBIENT_AND_DIFFUSE);
-		
-		GL.glEnable(GL.GL_LIGHTING);
-		GL.glEnable(GL.GL_LIGHT0);
-		GL.glEnable(GL.GL_COLOR_MATERIAL);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glEnable(GL.GL_AUTO_NORMAL);
-		GL.glEnable(GL.GL_NORMALIZE);
-		
-		nurb = GLU.gluNewNurbsRenderer();
-
-		GLU.gluNurbsProperty(
-			nurb,
-			GLU.GLU_SAMPLING_METHOD,
-			GLU.GLU_PATH_LENGTH);
-		// sampling tolerance is specific for GLU.GLU_PATH_LENGTH
-		GLU.gluNurbsProperty(nurb, GLU.GLU_SAMPLING_TOLERANCE, 75.0f);
-		GLU.gluNurbsProperty(nurb, GLU.GLU_DISPLAY_MODE, GLU.GLU_FILL);
-	}
-	
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		// do translation and rotation
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glRotatef(xRot, 1.0f, 0.0f, 0.0f);
-		GL.glRotatef(yRot, 0.0f, 1.0f, 0.0f);
-		GL.glRotatef(zRot, 0.0f, 0.0f, 1.0f);
-		// define nurbs surface
-		float[] knots = { 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, 1.0f };
-		GLU.gluBeginSurface(nurb);
-		GLU.gluNurbsSurface(
-			nurb, 8, knots, 8, knots, 12, 3,
-			convert(buildNurb()), 4, 4, GL.GL_MAP2_VERTEX_3);
-		GLU.gluEndSurface(nurb);
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ObjectsTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ObjectsTab.java
deleted file mode 100644
index 3ef288e..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ObjectsTab.java
+++ /dev/null
@@ -1,376 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class ObjectsTab extends OpenGLTab {
-	private class Shape {
-		private String name;
-		private int index;
-		/**
-		 * Constructor.
-		 * 
-		 * @param name the display name of this shape
-		 * @param index the display list index corresponding to this shape
-		 */
-		Shape(String name, int index) {
-			super();
-			this.index = index;
-			this.name = name;
-		}
-		void dispose() {
-			GL.glDeleteLists(index, 1);
-		}
-		void draw() {
-			GL.glCallList(index);
-		}
-		String getName() {
-			return name;
-		}
-	}
-
-	private Shape[] shapes;
-	private Shape currentShape;
-	private float xRot = 0.0f, yRot = 0.0f;
-	private boolean fill = true;
-	private int quadratic;
-	private final static int SLEEP_LENGTH = 50;
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(final Composite composite) {
-		GridLayout layout = new GridLayout(2, false);
-		layout.marginWidth = 0;
-		Composite controls = new Composite(composite, SWT.NONE);
-		controls.setLayout(layout);
-		
-		new Label(controls, SWT.NONE).setText("Object:");
-		final Combo objectsCombo = new Combo(controls, SWT.READ_ONLY);
-		for (int i = 0; i < shapes.length; i++) {
-			objectsCombo.add(shapes[i].getName());
-		}
-		objectsCombo.select(0);
-		objectsCombo.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				currentShape = shapes[objectsCombo.getSelectionIndex()];
-			}
-		});
-
-		final Button fillToggleButton = new Button(controls, SWT.CHECK);
-		fillToggleButton.setText("Fill");
-		fillToggleButton.setSelection(true);
-		fillToggleButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				fill = fillToggleButton.getSelection();
-			}
-		});
-		
-		ColorSelectionGroup colorGroup =
-			new ColorSelectionGroup(composite, SWT.NONE);
-		colorGroup.setText("Foreground color");
-		colorGroup.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				GL.glColor3ub((byte) rgb.red, (byte) rgb.green, (byte) rgb.blue);
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GLU.gluDeleteQuadric(quadratic);
-		for (int i = 0; i < shapes.length; i++) {
-			shapes [i].dispose();
-		}
-	}
-	
-	/**
-	 * Creates a circle centered at 0,0 in the viewport.
-	 * 
-	 * @param radius
-	 * @param xShrink
-	 * @param yShrink
-	 */
-	void drawCircle(float radius, float xShrink, float yShrink) {
-		GL.glBegin(GL.GL_POLYGON);
-		float dia = (float) 2.0 * (float) Math.PI;
-		for (float angle = 0.0f; angle <= dia; angle += 0.1f) {
-			GL.glVertex2d(radius * Math.cos(angle), radius * Math.sin(angle));
-		}
-		GL.glEnd();
-	}
-	
-	/**
-	 * Creates a cube centered at 0,0 in the viewport.
-	 * 
-	 * @param width
-	 * @param height
-	 * @param depth
-	 */
-	void drawCube(float width, float height, float depth) {
-		GL.glBegin(GL.GL_QUADS);
-		// front
-		GL.glVertex3f(-width, -height, depth);	// bottom left 			
-		GL.glVertex3f(width, -height, depth);	// bottom right
-		GL.glVertex3f(width, height, depth);	// top right
-		GL.glVertex3f(-width, height, depth);	// top left
-		// back
-		GL.glVertex3f(-width, -height, -depth);	// bottom left 			
-		GL.glVertex3f(width, -height, -depth);	// bottom right
-		GL.glVertex3f(width, height, -depth);	// top right
-		GL.glVertex3f(-width, height, -depth);	// top left
-		// left
-		GL.glVertex3f(-width, -height, -depth);	// bottom left				
-		GL.glVertex3f(-width, -height, depth);	// bottom right
-		GL.glVertex3f(-width, height, depth);	// top right
-		GL.glVertex3f(-width, height, -depth);	// top left	
-		// right
-		GL.glVertex3f(width, -height, depth);	// bottom left				
-		GL.glVertex3f(width, -height, -depth);	// bottom right
-		GL.glVertex3f(width, height, -depth);	// top right
-		GL.glVertex3f(width, height, depth);	// top left
-		// top
-		GL.glVertex3f(width, height, -depth);	// back right
-		GL.glVertex3f(-width, height, -depth);	// back left
-		GL.glVertex3f(-width, height, depth);	// front left
-		GL.glVertex3f(width, height, depth);	// front right
-		// bottom
-		GL.glVertex3f(width, -height, depth);	// front right
-		GL.glVertex3f(-width, -height, depth);	// front left
-		GL.glVertex3f(-width, -height, -depth);	// back left
-		GL.glVertex3f(width, -height, -depth);	// back right
-		GL.glEnd();
-	}
-	
-	/**
-	 * Creates a pyramid centered at 0,0 in the viewport.
-	 * 
-	 * @param width
-	 * @param height
-	 * @param depth
-	 */
-	void drawPyramid(float width, float height, float depth) {
-		GL.glBegin(GL.GL_TRIANGLES);
-		// front
-		GL.glVertex3f(0.0f, height, 0.0f);		// top				
-		GL.glVertex3f(-width, -height, depth);	// left	
-		GL.glVertex3f(width, -height, depth);	// right
-		// left
-		GL.glVertex3f(0.0f, height, 0.0f);		// top				
-		GL.glVertex3f(-width, -height, -depth);	// left	
-		GL.glVertex3f(-width, -height, depth);	// right	
-		// front
-		GL.glVertex3f(-width, -height, -depth);	// left	
-		GL.glVertex3f(0.0f, height, 0.0f);		// top						
-		GL.glVertex3f(width, -height, -depth);	// right
-		// right
-		GL.glVertex3f(0.0f, height, 0.0f);		// top				
-		GL.glVertex3f(width, -height, depth);	// left	
-		GL.glVertex3f(width, -height, -depth);	// right			
-		GL.glEnd();
-		GL.glBegin(GL.GL_QUADS);
-		// bottom
-		GL.glVertex3f(-width, -height, depth);	// front left
-		GL.glVertex3f(-width, -height, -depth);	// back left
-		GL.glVertex3f(width, -height, -depth);	// back right
-		GL.glVertex3f(width, -height, depth);	// front right
-		GL.glEnd();
-	}
-	
-	/**
-	 * Creates a square centered at 0,0 in the viewport.
-	 * 
-	 * @param width
-	 * @param height
-	 */
-	void drawSquare(float width, float height) {
-		GL.glBegin(GL.GL_QUADS);
-		GL.glVertex3f(-width, -height, 0.0f);	// bottom left 			
-		GL.glVertex3f(width, -height, 0.0f);	// bottom right
-		GL.glVertex3f(width, height, 0.0f);		// top right
-		GL.glVertex3f(-width, height, 0.0f);	// top left
-		GL.glEnd();
-	}
-	
-	/**
-	 * This method is from glut_shapes.c .
-	 * 
-	 * @param r
-	 * @param R
-	 * @param nsides
-	 * @param rings
-	 */
-	void drawTorus(float r, float R, int nsides, int rings) {
-		float ringDelta = 2.0f * (float) Math.PI / rings;
-		float sideDelta = 2.0f * (float) Math.PI / nsides;
-		float theta = 0.0f;
-		float cosTheta = 1.0f;
-		float sinTheta = 0.0f;
-		
-		for (int i = rings - 1; i >= 0; i--) {
-			float theta1 = theta + ringDelta;
-			float cosTheta1 = (float) Math.cos(theta1);
-			float sinTheta1 = (float) Math.sin(theta1);
-			GL.glBegin(GL.GL_QUAD_STRIP);
-			float phi = 0.0f;
-			
-			for (int j = nsides; j >= 0; j--) {
-				phi += sideDelta;
-				float cosPhi = (float) Math.cos(phi);
-				float sinPhi = (float) Math.sin(phi);
-				float dist = R + r * cosPhi;
-				GL.glNormal3f(cosTheta1 * cosPhi, -sinTheta1 * cosPhi, sinPhi);
-				GL.glVertex3f(cosTheta1 * dist, -sinTheta1 * dist, r * sinPhi);
-				GL.glNormal3f(cosTheta * cosPhi, -sinTheta * cosPhi, sinPhi);
-				GL.glVertex3f(cosTheta * dist, -sinTheta * dist, r * sinPhi);
-			}
-			
-			GL.glEnd();
-			theta = theta1;
-			cosTheta = cosTheta1;
-			sinTheta = sinTheta1;
-		}
-	}
-	
-	/**
-	 * Creates a triangle centered at 0,0 in the viewport.
-	 * 
-	 * @param width
-	 * @param height
-	 */
-	void drawTriangle(float width, float height) {
-		GL.glBegin(GL.GL_TRIANGLES);
-		GL.glVertex3f(0.0f, height, 0.0f);		// middle 
-		GL.glVertex3f(-width, -height, 0.0f);	// left 
-		GL.glVertex3f(width, -height, 0.0f);	// right		 		
-		GL.glEnd();
-	}
-	
-	/**
-	 * @see OpenGLTab#getSleepLength()
-	 */
-	int getSleepLength() {
-		return SLEEP_LENGTH;	
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Objects";
-	}
-	
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glColor3f(1.0f, 0.0f, 0.0f);
-		GL.glHint(GL.GL_PERSPECTIVE_CORRECTION_HINT, GL.GL_NICEST);
-		GL.glClearDepth(1.0);
-		quadratic = GLU.gluNewQuadric();
-		GLU.gluQuadricNormals(quadratic, GLU.GLU_SMOOTH);
-		GL.glLineWidth(2);
-
-		GL.glEnable(GL.GL_DEPTH_TEST);
-
-		// create the display lists and shapes
-		shapes = new Shape[11];
-		int index = 1;
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawTriangle(2.0f, 2.0f);
-		GL.glEndList();
-		shapes[0] = new Shape("Triangle", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawPyramid(2.0f, 2.0f, 2.0f);
-		GL.glEndList();
-		shapes[1] = new Shape("Pyramid", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawSquare(2.0f, 2.0f);
-		GL.glEndList();
-		shapes[2] = new Shape("Square", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawCube(2.0f, 2.0f, 2.0f);
-		GL.glEndList();
-		shapes[3] = new Shape("Cube", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawCircle(2.0f, 0.0f, 0.0f);
-		GL.glEndList();
-		shapes[4] = new Shape("Circle", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		GLU.gluPartialDisk(quadratic, 0.5, 2.0, 18, 18, 90, 125);
-		GL.glEndList();
-		shapes[5] = new Shape("Partial Disk", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		GLU.gluDisk(quadratic, 0.5, 2.0, 18, 18);
-		GL.glEndList();
-		shapes[6] = new Shape("Disk", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		drawTorus(1, 2, 18, 18);
-		GL.glEndList();
-		shapes[7] = new Shape("Torus", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		GLU.gluSphere(quadratic, 2.0, 18, 18);
-		GL.glEndList();
-		shapes[8] = new Shape("Sphere", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		GLU.gluCylinder(quadratic, 2.0, 2.0, 4, 18, 18);
-		GL.glEndList();
-		shapes[9] = new Shape("Cylinder", index++);
-
-		GL.glNewList(index, GL.GL_COMPILE);
-		GLU.gluCylinder(quadratic, 0, 2.0, 4, 18, 18);
-		GL.glEndList();
-		shapes[10] = new Shape("Cone", index++);
-
-		currentShape = shapes[0];
-	}
-	
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glTranslatef(0.0f, 0.0f, -14.0f);
-		// rotate around X and Y axis
-		GL.glRotatef(yRot, 0.0f, 1.0f, 0.0f);
-		GL.glRotatef(xRot, 1.0f, 0.0f, 0.0f);
-		// sets polygon fill mode
-		if (fill) {
-			GL.glPolygonMode(GL.GL_FRONT_AND_BACK, GL.GL_FILL);
-		} else {
-			GL.glPolygonMode(GL.GL_FRONT_AND_BACK, GL.GL_LINE);
-		}
-		currentShape.draw();
-		yRot += 1.5;
-		xRot += 1.5;
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLExample.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLExample.java
deleted file mode 100644
index 9e7e10d..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLExample.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class OpenGLExample {
-	private TabFolder tabFolder;
-	private OpenGLTab[] tabs;
-	private int sleep;
-
-	/**
-	 * Renders the scene of the current tab.
-	 */
-	void display() {
-		int index = tabFolder.getSelectionIndex();
-		tabs[index].render();
-		tabs[index].swap();
-	}
-	
-	/**
-	 * Disposes of all contained tabs.
-	 */
-	void dispose() {
-		tabFolder = null;
-		for (int i = 0; i < tabs.length; i++) {
-			tabs[i].dispose();
-		}
-	}
-
-	/**
-	 * Runs the OpenGL example
-	 */
-	void run() {
-		final Display display = new Display();
-		final Shell shell =
-			new Shell(display, SWT.SHELL_TRIM | SWT.NO_BACKGROUND);
-		shell.setLayout(new FillLayout());
-
-		tabFolder = new TabFolder(shell, SWT.NONE);
-		tabs =
-			new OpenGLTab[] {
-				new AntialiasingTab(),
-				new AreaTab(),
-				new BezierTab(),
-				new BitmapTextTab(),
-				new FogTab(),
-				new GradientTab(),
-				new LightTab(),
-				new NurbTab(),
-				new ObjectsTab(),
-				// outline tab is windows specific
-				new OutlineTextTab (),
-				new ReflectionTab(),
-				new StencilTab(),
-				new TextureTab(),
-				new TransparencyTab()};
-				
-		for (int i = 0; i < tabs.length; i++) {
-			TabItem item = new TabItem(tabFolder, SWT.NONE);
-			item.setText(tabs[i].getTabText());
-			item.setControl(tabs[i].createTabFolderPage(tabFolder));
-		}
-		
-		tabFolder.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				OpenGLTab tab = tabs[tabFolder.getSelectionIndex()];
-				tab.setCurrent();
-				sleep = tab.getSleepLength();
-			}
-		});
-		if (tabs.length > 0) {
-			tabs[0].setCurrent();
-			sleep = tabs[0].getSleepLength();
-		}
-		
-		shell.setText("OpenGL Example");
-		Runnable timer = new Runnable() {
-			public void run() {
-				if (shell.isDisposed()) return;
-				display();
-				display.timerExec(sleep, this);
-			}
-		};
-		timer.run();
-		shell.addListener(SWT.Dispose, new Listener() {
-			public void handleEvent(Event e) {
-				dispose();
-			}
-		});
-		shell.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch()) {
-				display.sleep();
-			}
-		}
-	}
-	
-	/**
-	 * Invokes as a standalone program.
-	 */
-	public static void main(String[] args) {
-		new OpenGLExample().run();
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLTab.java
deleted file mode 100644
index d8523b9..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OpenGLTab.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-
-/**
- * <code>OpenGLTab</code> is the abstract superclass of every page
- * in the example's tab folder.  Each page in the tab folder
- * displays a different example.
- *
- * An OpenGLTab itself is not a control but instead provides a hierarchy
- * with which to share code that is common to every page in the folder.
- */
-abstract class OpenGLTab {
-	private Canvas glCanvas;
-	private Composite tabFolderPage;
-	private GLContext context;
-	private boolean stencilSupport;
-	private final static int DEFAULT_SLEEP_LENGTH = 100;
-
-	/**
-	 * Creates this tab's controls.  Subclasses must override.
-	 *
-	 * @param composite the parent composite
-	 */
-	abstract void createControls(Composite composite);
-
-	/**
-	 * Creates the OpenGL canvas on which all drawing is done.
-	 */
-	void createOpenGLContext() {
-		context = new GLContext(glCanvas);
-		setCurrent();
-		setupViewingArea();
-	}
-
-	/**
-	 * Creates the tab folder page.
-	 *
-	 * @param tabFolder the parent tab folder
-	 * @return the new page
-	 */
-	Composite createTabFolderPage(TabFolder tabFolder) {
-		tabFolderPage = new Composite(tabFolder, SWT.NONE);
-		tabFolderPage.setLayout(new GridLayout(2, false));
-
-		GridData gridData = new GridData();
-		gridData.heightHint = 400;
-		gridData.widthHint = 400;
-		gridData.verticalAlignment = GridData.BEGINNING;
-		glCanvas = new Canvas(tabFolderPage, SWT.NONE);
-		glCanvas.setLayout(new GridLayout());
-		glCanvas.setLayoutData(gridData);
-		glCanvas.setSize(400, 400);		// needed for windows
-
-		gridData = new GridData();
-		gridData.verticalAlignment = GridData.BEGINNING;
-		Composite controlComposite = new Composite(tabFolderPage, SWT.NONE);
-		controlComposite.setLayout(new GridLayout());
-		controlComposite.setLayoutData(gridData);
-
-		// create the OpenGL Screen and controls
-		createOpenGLContext();
-
-		// determine if native stencil support is available
-		int[] param = new int[1];
-		GL.glGetIntegerv(GL.GL_STENCIL_BITS, param);
-		stencilSupport = param[0] != 0;
-
-		init();
-
-		if (!isStencilSupportNeeded() || hasStencilSupport()) {
-			createControls(controlComposite);
-		} else {
-			Label label = new Label(controlComposite, SWT.NONE);
-			label.setText("This tab requires native stencil support.");
-		}
-
-		return tabFolderPage;
-	}
-
-	/**
-	 * Disposes all resources allocated by this tab.
-	 */
-	void dispose() {
-		context.dispose();
-	}
-
-	/**
-	 * Returns the context for this tab.
-	 * 
-	 * @return GLContext
-	 */
-	GLContext getContext() {
-		return context;
-	}
-
-	/**
-	 * Returns the glCanvas for this tab.
-	 * 
-	 * @return Canvas
-	 */
-	Canvas getGlCanvas() {
-		return glCanvas;
-	}
-
-	/**
-	 * Returns the length of time in milliseconds that the example
-	 * should sleep between animation redraws.  As this length
-	 * increases, user responsiveness increases and the frequency of
-	 * animation redraws decreases.  Subclasses with moving animations
-	 * may wish to override this default implementation to return a
-	 * smaller value if their animations do not occur frequently enough. 
-	 *
-	 * @return the length of time in milliseconds to sleep between redraws
-	 */
-	int getSleepLength() {
-		return DEFAULT_SLEEP_LENGTH;	
-	}
-
-	/**
-	 * Returns the text for this tab.  Subclasses must override.
-	 *
-	 * @return the text for the tab item
-	 */
-	abstract String getTabText();
-
-	/**
-	 * Returns whether this machine has native stencils support.
-	 * 
-	 * @return boolean
-	 */
-	boolean hasStencilSupport() {
-		return stencilSupport;
-	}
-
-	/**
-	 * Initialize OpenGL resources for this tab.  Subclasses must override.
-	 */
-	abstract void init();
-
-	/**
-	 * Loads a texture.
-	 * 
-	 * @param context
-	 * @param fileName
-	 * @param index
-	 * @param texture[]
-	 */
-	static void loadTexture(GLContext context, String fileName, int index, int[] texture) {
-		GL.glBindTexture(GL.GL_TEXTURE_2D, texture[index]);
-		ImageData source =
-			new ImageData(OpenGLTab.class.getResourceAsStream(fileName));
-		Image image = new Image(Display.getCurrent(), source);
-		Image newImage = new Image(Display.getCurrent(), 256, 256);
-		GC gc = new GC(newImage);
-		gc.drawImage(image, 0, 0, source.width, source.height, 0, 0, 256, 256);
-		source = newImage.getImageData();
-		gc.dispose();
-		source = context.convertImageData(source);
-		newImage.dispose();
-		image.dispose();
-		GL.glTexImage2D(
-			GL.GL_TEXTURE_2D, 0, 3, 
-			source.width, source.height, 0,
-			GL.GL_RGB, GL.GL_UNSIGNED_BYTE, source.data);
-		GL.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_MIN_FILTER, GL.GL_LINEAR);
-		GL.glTexParameteri(GL.GL_TEXTURE_2D, GL.GL_TEXTURE_MAG_FILTER, GL.GL_LINEAR);
-	}
-
-	/**
-	 * Renders this tab.
-	 */
-	void render() {
-		if (!isStencilSupportNeeded() || hasStencilSupport()) {
-			renderScene();
-		} else {
-			GL.glClear(GL.GL_COLOR_BUFFER_BIT);
-		}
-	}
-
-	/**
-	 * Renders the scene for this tab.  Subclasses must override.
-	 */
-	abstract void renderScene();
-
-	/**
-	 * Returns whether this tab requires stencil support in order to display
-	 * properly. Subclasses may wish to override this method.
-	 * 
-	 * @return boolean
-	 */
-	boolean isStencilSupportNeeded() {
-		return false;
-	}
-
-	/**
-	 * Sets this rendering context to be current.
-	 */
-	void setCurrent() {
-		context.setCurrent();
-	}
-	
-	/**
-	 * Sets up the viewing area for the OpenGL screen.  The default
-	 * behavior is to use a perspective view, but there also exist frustrum
-	 * and ortho views.  Subclasses may wish to override this method.
-	 */
-	void setupViewingArea() {
-		Rectangle rect = glCanvas.getClientArea();
-		int width = rect.width;
-		int height = rect.height;
-		height = Math.max(height, 1);
-		GL.glViewport(0, 0, width, height);
-		GL.glMatrixMode(GL.GL_PROJECTION);	// select the projection matrix
-		GL.glLoadIdentity();				// reset the projection matrix
-		float fAspect = (float) width / (float) height;
-		GLU.gluPerspective(45.0f, fAspect, 0.5f, 400.0f);
-		GL.glMatrixMode(GL.GL_MODELVIEW);	// select the modelview matrix
-		GL.glLoadIdentity();
-	}
-
-	/**
-	 * Swaps the buffers.
-	 */
-	void swap() {
-		context.swapBuffers();
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OutlineTextTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OutlineTextTab.java
deleted file mode 100644
index 0742f00..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/OutlineTextTab.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class OutlineTextTab extends OpenGLTab {
-	private Text messageText;
-	private FontData fontData;
-	private float[] textColor = { 1.0f, 0.0f, 0.0f };
-	private boolean fill = true;
-	private float extrude = 0.0f;
-	private float xPos = 0.0f, yPos = 0.0f, zPos = -10.0f;
-	private float xRot = 0.0f;
-	private int listIndexBase;
-	private final static int LIST_INDEX_SIZE = 256;
-	private final static int DEFAULT_FONT_SIZE = 24;
-	private final static String DEFAULT_FONT_NAME = "Arial";
-	private final static int SLEEP_LENGTH = 50;
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(final Composite composite) {
-		if (!SWT.getPlatform().startsWith("win32")) {
-			new Label(composite, SWT.NONE).setText("This tab requires win32.");
-			return;
-		}
-		
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(22);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(10);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(22);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(10);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 10;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(22);
-		zMove.setMinimum(0);
-		zMove.setThumb(2);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(10);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 20;
-			}
-		});
-
-		Composite textGroup = new Composite(composite,SWT.NONE);
-		GridLayout layout = new GridLayout(2,false);
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		textGroup.setLayout(layout);
-		textGroup.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-		
-		new Label(textGroup, SWT.NONE).setText("Text:");
-		messageText = new Text(textGroup, SWT.BORDER);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.grabExcessHorizontalSpace = true;
-		messageText.setLayoutData(data);
-		messageText.setText("OpenGL - SWT");
-		
-		new Label(composite, SWT.NONE).setText("Extrude:");
-		final Slider extrudeSlider = new Slider(composite, SWT.NONE);
-		extrudeSlider.setIncrement(1);
-		extrudeSlider.setMaximum(22);
-		extrudeSlider.setMinimum(0);
-		extrudeSlider.setThumb(2);
-		extrudeSlider.setPageIncrement(2);
-		extrudeSlider.setSelection(0);
-		extrudeSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				extrude = (float) extrudeSlider.getSelection() / 10;
-				getContext().loadOutlineFont(
-					fontData, extrudeSlider.getDisplay(),
-					listIndexBase, 0, 255, 0.0f, extrude,
-					fill ? GL.GL_POLYGON : GL.GL_LINE,
-					null);
-			}
-		});
-
-		final Button fontSelectButton = new Button(composite, SWT.NONE);
-		fontSelectButton.setText("Set Font");
-		final ColorSelectionGroup colorGroup =
-			new ColorSelectionGroup(composite, SWT.NONE);
-		colorGroup.setText("Text color");
-		colorGroup.addColorSelectionListener(new IColorSelectionListener() {
-			public void handleColorSelection(RGB rgb) {
-				GL.glColor3ub((byte) rgb.red, (byte) rgb.green, (byte) rgb.blue);
-			}
-		});
-		
-		fontSelectButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				FontDialog fontDialog = new FontDialog(fontSelectButton.getShell());
-				fontDialog.setText("Choose Font Options");
-				double[] currentColor = new double[4];
-				GL.glGetDoublev(GL.GL_CURRENT_COLOR, currentColor);
-				fontDialog.setRGB(
-					new RGB(
-						(int) currentColor[0] * 255,
-						(int) currentColor[1] * 255,
-						(int) currentColor[2] * 255));
-				fontDialog.setFontData(fontData);
-				FontData result = fontDialog.open();
-				if (result != null) {
-					fontData = result;
-					RGB rgb = fontDialog.getRGB();
-					GL.glColor3ub((byte) rgb.red, (byte) rgb.green, (byte) rgb.blue);
-					colorGroup.setRGB(rgb);
-					getContext().loadOutlineFont(
-						fontData, fontSelectButton.getDisplay(),
-						listIndexBase, 0, 255, 0.0f, extrude,
-						fill ? GL.GL_POLYGON : GL.GL_LINE,
-						null);
-				}
-			}
-		});
-
-		final Button fillButton = new Button(composite, SWT.CHECK);
-		fillButton.setText("Fill");
-		fillButton.setSelection(true);
-		fillButton.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				fill = fillButton.getSelection();
-				getContext().loadOutlineFont(
-					fontData, fillButton.getDisplay(),
-					listIndexBase, 0, 255, 0.0f, extrude,
-					fill ? GL.GL_POLYGON : GL.GL_LINE,
-					null);
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GL.glDeleteLists(listIndexBase, LIST_INDEX_SIZE);
-	}
-
-	/**
-	 * Draws the text to the screen
-	 * 
-	 * @param string the text to draw
-	 */
-	void drawText(String string) {
-		char[] stringChars = string.toCharArray();
-		int[] text = new int[stringChars.length];
-		for (int i = 0; i < text.length; i++) {
-			text[i] = (int) stringChars[i];
-		}
-		GL.glPushAttrib(GL.GL_LIST_BIT);
-		GL.glListBase(listIndexBase);
-		GL.glCallLists(text.length, GL.GL_UNSIGNED_INT, text);
-		GL.glPopAttrib();
-	}
-
-	/**
-	 * @see OpenGLTab#getSleepLength()
-	 */
-	int getSleepLength() {
-		return SLEEP_LENGTH;
-	}
-
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Outline Text";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glColor3fv(textColor);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glEnable(GL.GL_BLEND);
-		// build the initial font
-		listIndexBase = GL.glGenLists(LIST_INDEX_SIZE);
-		fontData = new FontData();
-		fontData.setHeight(DEFAULT_FONT_SIZE);
-		fontData.setName(DEFAULT_FONT_NAME);
-		getContext().loadOutlineFont(
-			fontData, getGlCanvas().getDisplay(),
-			listIndexBase, 0, 255, 0f, extrude,
-			fill ? GL.GL_POLYGON : GL.GL_LINE,
-			null);
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glRotatef(xRot, 1.0f, 0.0f, 0.0f); // rotate on X axis
-		// use GL.glScalef to change size since outline fonts
-		// don't support size
-		float size = (float) fontData.getHeight() / 24;
-		GL.glScalef(size, size, 1.0f);
-		// draw the text, assuming that we're running on win32
-		if (messageText != null) drawText(messageText.getText());
-		xRot += 1.2f;
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ReflectionTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ReflectionTab.java
deleted file mode 100644
index 883bda0..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/ReflectionTab.java
+++ /dev/null
@@ -1,556 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class ReflectionTab extends OpenGLTab {
-	private float ballY = 0.0f;
-	private float ballZ = 1.6666666f;
-	private float ballX = 0.0f;
-	private float ballRot = 0.0f;
-	private float cubeX = 2.5f;
-	private float cubeY = -2.0f;
-	private float cubeZ = 2.0f;
-	private float xPos = 0.0f;
-	private float yPos = 0.0f;
-	private float zPos = 22.0f;
-	private float ballRotSpeed = 0.0f;
-	private int quadratic;
-	private int[] textures = new int[3];
-	private final static int
-		LIST_INDEX_BALL = 1,LIST_INDEX_BOX = 2,
-		LIST_INDEX_MIRROR = 3, LIST_INDEX_ROOM = 4;
-	private final static int
-		TEXTURE_INDEX_BALL = 0, TEXTURE_INDEX_FLOOR = 1,
-		TEXTURE_INDEX_BOX = 2;
-	private final static String[] IMAGES = {
-		"images/Ball.jpg", "images/Floor.jpg", "images/Box.bmp" };
-	private final static int SLEEP_LENGTH = 50;
-
-	/**
-	 * Draws the ball
-	 */
-	void createBall() {
-		GL.glNewList(LIST_INDEX_BALL, GL.GL_COMPILE);
-		GL.glColor3f(1.0f, 1.0f, 1.0f);
-		GL.glBindTexture(GL.GL_TEXTURE_2D, textures[TEXTURE_INDEX_BALL]);
-		GLU.gluSphere(quadratic, 0.35f, 32, 16);
-		GL.glDisable(GL.GL_BLEND);
-		GL.glEndList();
-	}
-
-	/**
-	 * Draws the box
-	 */
-	void createBox() {
-		float size = 1.0f;
-		GL.glNewList(LIST_INDEX_BOX, GL.GL_COMPILE);
-		GL.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glBindTexture(GL.GL_TEXTURE_2D, textures[TEXTURE_INDEX_BOX]);
-		GL.glBegin(GL.GL_QUADS);
-		// front	
-		GL.glNormal3f(0.0f, 0.0f, 1.0f);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-size, -size, size);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(size, -size, size);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(size, size, size);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(-size, size, size);
-		// back	
-		GL.glNormal3f(0.0f, 0.0f, -1.0f);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-size, -size, -size);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(size, -size, -size);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(size, size, -size);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(-size, size, -size);
-		// left	
-		GL.glNormal3f(-1.0f, 0.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-size, -size, -size);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(-size, -size, size);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(-size, size, size);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(-size, size, -size);
-		// right	
-		GL.glNormal3f(1.0f, 0.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(size, -size, -size);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(size, -size, size);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(size, size, size);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(size, size, -size);
-		// top	
-		GL.glNormal3f(0.0f, 1.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(size, size, -size);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(-size, size, -size);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(-size, size, size);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(size, size, size);
-		// bottom	
-		GL.glNormal3f(0.0f, -1.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(size, -size, -size);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(-size, -size, -size);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(-size, -size, size);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(size, -size, size);
-		GL.glEnd();
-		GL.glEndList();
-	}
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group ballTranslation = new Group(composite, SWT.NONE);
-		ballTranslation.setLayout(new GridLayout(2, false));
-		ballTranslation.setText("Ball Translation");
-
-		new Label(ballTranslation, SWT.NONE).setText("X:");
-		final Slider ballXPosSlider = new Slider(ballTranslation, SWT.NONE);
-		ballXPosSlider.setIncrement(1);
-		ballXPosSlider.setMaximum(38);
-		ballXPosSlider.setMinimum(0);
-		ballXPosSlider.setThumb(2);
-		ballXPosSlider.setPageIncrement(2);
-		ballXPosSlider.setSelection(18);
-		ballXPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				ballX = (float) (ballXPosSlider.getSelection() - 18) / 5;
-			}
-		});
-
-		new Label(ballTranslation, SWT.NONE).setText("Y:");
-		final Slider ballYPosSlider = new Slider(ballTranslation, SWT.NONE);
-		ballYPosSlider.setIncrement(1);
-		ballYPosSlider.setMaximum(38);
-		ballYPosSlider.setMinimum(0);
-		ballYPosSlider.setThumb(2);
-		ballYPosSlider.setPageIncrement(2);
-		ballYPosSlider.setSelection(18);
-		ballYPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				ballY = (float) (ballYPosSlider.getSelection() - 18) / 5;
-			}
-		});
-
-		new Label(ballTranslation, SWT.NONE).setText("Z:");
-		final Slider ballZPosSlider = new Slider(ballTranslation, SWT.NONE);
-		ballZPosSlider.setIncrement(1);
-		ballZPosSlider.setMaximum(24);
-		ballZPosSlider.setMinimum(0);
-		ballZPosSlider.setThumb(1);
-		ballZPosSlider.setPageIncrement(2);
-		ballZPosSlider.setSelection(4);
-		ballZPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				ballZ = (float) (ballZPosSlider.getSelection() + 1) / 3;
-			}
-		});
-
-		Group cubeTranslation = new Group(composite, SWT.NONE);
-		cubeTranslation.setLayout(new GridLayout(2, false));
-		cubeTranslation.setText("Cube Translation");
-
-		new Label(cubeTranslation, SWT.NONE).setText("X:");
-		final Slider cubeXPosSlider = new Slider(cubeTranslation, SWT.NONE);
-		cubeXPosSlider.setIncrement(1);
-		cubeXPosSlider.setMaximum(14);
-		cubeXPosSlider.setMinimum(0);
-		cubeXPosSlider.setThumb(2);
-		cubeXPosSlider.setPageIncrement(2);
-		cubeXPosSlider.setSelection(11);
-		cubeXPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				cubeX = (float) (cubeXPosSlider.getSelection() - 6) / 2;
-			}
-		});
-
-		new Label(cubeTranslation, SWT.NONE).setText("Y:");
-		final Slider cubeYPosSlider = new Slider(cubeTranslation, SWT.NONE);
-		cubeYPosSlider.setIncrement(1);
-		cubeYPosSlider.setMaximum(14);
-		cubeYPosSlider.setMinimum(0);
-		cubeYPosSlider.setThumb(2);
-		cubeYPosSlider.setPageIncrement(2);
-		cubeYPosSlider.setSelection(2);
-		cubeYPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				cubeY = (float) (cubeYPosSlider.getSelection() - 6) / 2;
-			}
-		});
-
-		new Label(cubeTranslation, SWT.NONE).setText("Z:");
-		final Slider cubeZPosSlider = new Slider(cubeTranslation, SWT.NONE);
-		cubeZPosSlider.setIncrement(1);
-		cubeZPosSlider.setMaximum(10);
-		cubeZPosSlider.setMinimum(1);
-		cubeZPosSlider.setThumb(1);
-		cubeZPosSlider.setPageIncrement(2);
-		cubeZPosSlider.setSelection(2);
-		cubeZPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				cubeZ = (float) (cubeZPosSlider.getSelection() + 2) / 2;
-			}
-		});
-
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setLayout(new GridLayout(2, false));
-		movementGroup.setText("Room Rotation");
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider screenXPosSlider = new Slider(movementGroup, SWT.NONE);
-		screenXPosSlider.setIncrement(1);
-		screenXPosSlider.setMaximum(42);
-		screenXPosSlider.setMinimum(0);
-		screenXPosSlider.setThumb(2);
-		screenXPosSlider.setPageIncrement(2);
-		screenXPosSlider.setSelection(20);
-		screenXPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = screenXPosSlider.getSelection() - 20;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider screenYPosSlider = new Slider(movementGroup, SWT.NONE);
-		screenYPosSlider.setIncrement(1);
-		screenYPosSlider.setMaximum(42);
-		screenYPosSlider.setMinimum(0);
-		screenYPosSlider.setThumb(2);
-		screenYPosSlider.setPageIncrement(2);
-		screenYPosSlider.setSelection(20);
-		screenYPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = screenYPosSlider.getSelection() - 20;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider screenZPosSlider = new Slider(movementGroup, SWT.NONE);
-		screenZPosSlider.setIncrement(1);
-		screenZPosSlider.setMaximum(42);
-		screenZPosSlider.setMinimum(0);
-		screenZPosSlider.setThumb(2);
-		screenZPosSlider.setPageIncrement(2);
-		screenZPosSlider.setSelection(20);
-		screenZPosSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = screenZPosSlider.getSelection() + 2;
-			}
-		});
-
-		new Label(composite, SWT.NONE).setText("Ball Rotation Speed:");
-		final Slider ballRotSlider = new Slider(composite, SWT.NONE);
-		ballRotSlider.setIncrement(1);
-		ballRotSlider.setMaximum(22);
-		ballRotSlider.setMinimum(0);
-		ballRotSlider.setThumb(2);
-		ballRotSlider.setPageIncrement(2);
-		ballRotSlider.setSelection(0);
-		ballRotSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				ballRotSpeed = ballRotSlider.getSelection();
-			}
-		});
-	}
-	
-	/**
-	 * Draws the mirror
-	 */
-	void createMirror() {
-		GL.glNewList(LIST_INDEX_MIRROR, GL.GL_COMPILE);
-		GL.glDisable(GL.GL_TEXTURE_2D);
-		GL.glColor4f(1.0f, 1.0f, 1.0f, 0.4f);
-		GL.glNormal3f(0.0f, 0.0f, 1.0f);
-		GL.glBegin(GL.GL_QUADS);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-2.0f, 2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(-2.0f, -2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(2.0f, -2.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(2.0f, 2.0f, 0.0f);
-		GL.glEnd();
-		GL.glEnable(GL.GL_TEXTURE_2D);
-		GL.glEndList();
-	}
-	
-	/**
-	 * Draws the room
-	 */
-	void createRoom() {
-		GL.glNewList(LIST_INDEX_ROOM, GL.GL_COMPILE);
-		GL.glDisable(GL.GL_TEXTURE_2D);
-		GL.glBegin(GL.GL_QUADS);
-		// left wall
-		GL.glNormal3f(1.0f, 0.0f, 0.0f);
-		GL.glVertex3f(-4.0f, 4.0f, 0.0f);
-		GL.glVertex3f(-4.0f, 4.0f, 6.0f);
-		GL.glVertex3f(-4.0f, -4.0f, 6.0f);
-		GL.glVertex3f(-4.0f, -4.0f, 0.0f);
-		// right wall
-		GL.glNormal3f(-1.0f, 0.0f, 01.0f);
-		GL.glVertex3f(4.0f, 4.0f, 0.0f);
-		GL.glVertex3f(4.0f, 4.0f, 6.0f);
-		GL.glVertex3f(4.0f, -4.0f, 6.0f);
-		GL.glVertex3f(4.0f, -4.0f, 0.0f);
-		// ceiling	
-		GL.glNormal3f(0.0f, -1.0f, 0.0f);
-		GL.glColor3f(0.9f, 0.9f, 0.9f);
-		GL.glVertex3f(-4.0f, 4.0f, 0.0f);
-		GL.glVertex3f(-4.0f, 4.0f, 6.0f);
-		GL.glVertex3f(4.0f, 4.0f, 6.0f);
-		GL.glVertex3f(4.0f, 4.0f, 0.0f);
-		GL.glEnd();
-		// back wall with triangle strip to illiminate t-intersections 
-		GL.glBegin(GL.GL_TRIANGLE_STRIP);
-		GL.glNormal3f(0.0f, 0.0f, 1.0f);
-		GL.glVertex3d(-4.0, -4.0, 0.0);
-		GL.glVertex3d(-2.2, -4.0, 0.0);
-		GL.glVertex3d(-2.2, -2.2, 0.0);
-		GL.glVertex3d(2.2, -4.0, 0.0);
-		GL.glVertex3d(2.2, -2.2, 0.0);
-		GL.glVertex3d(4.0, -4.0, 0.0);
-		GL.glVertex3d(2.2, -2.2, 0.0);
-		GL.glVertex3d(4.0, -2.2, 0.0);
-		GL.glVertex3d(2.2, 2.2, 0.0);
-		GL.glVertex3d(4.0, 2.2, 0.0);
-		GL.glVertex3d(2.2, 2.2, 0.0);
-		GL.glVertex3d(4.0, 4.0, 0.0);
-		GL.glVertex3d(2.2, 2.2, 0.0);
-		GL.glVertex3d(2.2, 4.0, 0.0);
-		GL.glVertex3d(-2.2, 2.2, 0.0);
-		GL.glVertex3d(-2.2, 4.0, 0.0);
-		GL.glVertex3d(-4.0, 4.0, 0.0);
-		GL.glVertex3d(-2.2, 2.2, 0.0);
-		GL.glVertex3d(-4.0, 2.2, 0.0);
-		GL.glVertex3d(-2.2, -2.2, 0.0);
-		GL.glVertex3d(-4.0, -2.2, 0.0);
-		GL.glVertex3d(-4.0, -4.0, 0.0);
-		GL.glEnd();
-		GL.glEnable(GL.GL_TEXTURE_2D);
-		// draw floor
-		GL.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glBindTexture(GL.GL_TEXTURE_2D, textures[TEXTURE_INDEX_FLOOR]);
-		GL.glNormal3f(0.0f, 1.0f, 0.0f);
-		GL.glBegin(GL.GL_QUADS);
-		// floor
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-4.0f, -4.0f, 6.0f);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(-4.0f, -4.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(4.0f, -4.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(4.0f, -4.0f, 6.0f);
-		GL.glEnd();
-		// draw mirror frame
-		GL.glBindTexture(GL.GL_TEXTURE_2D, textures[TEXTURE_INDEX_BOX]);
-		GL.glNormal3f(0.0f, 0.0f, 1.0f);
-		GL.glBegin(GL.GL_QUADS);
-		// top
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-2.2f, 2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(2.2f, 2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(2.2f, 2.2f, 0.0f);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(-2.2f, 2.2f, 0.0f);
-		// right
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(2.0f, 2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(2.0f, -2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(2.2f, -2.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(2.2f, 2.0f, 0.0f);
-		// bottom
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-2.2f, -2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(2.2f, -2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(2.2f, -2.2f, 0.0f);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(-2.2f, -2.2f, 0.0f);
-		// left
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-2.0f, 2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(-2.0f, -2.0f, 0.0f);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(-2.2f, -2.0f, 0.0f);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(-2.2f, 2.0f, 0.0f);
-		GL.glEnd();
-		GL.glEndList();
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GLU.gluDeleteQuadric(quadratic);
-		GL.glDeleteLists(LIST_INDEX_BALL, 1);
-		GL.glDeleteLists(LIST_INDEX_BOX, 1);
-		GL.glDeleteLists(LIST_INDEX_MIRROR, 1);
-		GL.glDeleteLists(LIST_INDEX_ROOM, 1);
-	}
-
-	/**
-	 * @see OpenGLTab#getSleepLength()
-	 */
-	int getSleepLength() {
-		return SLEEP_LENGTH;
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Reflection";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		if (!hasStencilSupport()) return;
-
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glClearDepth(1.0f);
-		GL.glClearStencil(0);
-		GL.glGenTextures(IMAGES.length, textures);
-		for (int i = 0; i < IMAGES.length; i++) {
-			loadTexture(getContext(), IMAGES[i], i, textures);
-		}
-
-		GL.glShadeModel(GL.GL_SMOOTH);
-		quadratic = GLU.gluNewQuadric();
-		GLU.gluQuadricNormals(quadratic, GL.GL_SMOOTH);
-		GLU.gluQuadricTexture(quadratic, true);
-		GL.glDepthFunc(GL.GL_LEQUAL);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glHint(GL.GL_PERSPECTIVE_CORRECTION_HINT, GL.GL_NICEST);
-
-		// set up the lights
-		float[] LightAmb = { 0.7f, 0.7f, 0.7f, 1.0f };
-		float[] LightDif = { 1.0f, 1.0f, 1.0f, 1.0f };
-		float[] lightsAmbient = { 0.5f, 0.5f, 0.5f, 1.0f };
-		GL.glLightModelfv(GL.GL_LIGHT_MODEL_AMBIENT, lightsAmbient);
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_AMBIENT, LightAmb);
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_DIFFUSE, LightDif);
-
-		GL.glEnable(GL.GL_LIGHT0);
-		GL.glEnable(GL.GL_LIGHTING);
-		GL.glEnable(GL.GL_LINE_SMOOTH);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glEnable(GL.GL_TEXTURE_2D);
-		GL.glEnable(GL.GL_BLEND);
-
-		createRoom();
-		createBall();
-		createBox();
-		createMirror();
-	}
-
-	/**
-	 * @see OpenGLTab#isStencilSupportNeeded
-	 */
-	boolean isStencilSupportNeeded() {
-		return true;
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(
-			GL.GL_COLOR_BUFFER_BIT
-				| GL.GL_DEPTH_BUFFER_BIT
-				| GL.GL_STENCIL_BUFFER_BIT);
-
-		GL.glLoadIdentity();
-		GLU.gluLookAt(xPos, yPos, zPos, 0, 0, 0, 0, 1, 0);
-		// clip plane equation
-		double clipEquation[] = { 0.0f, 0.0f, -1.0f, 0.0f };
-		float[] LightPos = { 0.0f, 2.0f, 7.0f, 1.0f };
-		GL.glColorMask(false, false, false, false);
-		// enable stencil buffer for "marking" the mirror		
-		GL.glEnable(GL.GL_STENCIL_TEST);
-		// set the stencil buffer to 1 where a polygon is drawn
-		GL.glStencilFunc(GL.GL_ALWAYS, 1, 1);
-		GL.glStencilOp(GL.GL_KEEP, GL.GL_KEEP, GL.GL_REPLACE);
-		GL.glDisable(GL.GL_DEPTH_TEST);
-		GL.glCallList(LIST_INDEX_MIRROR);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glColorMask(true, true, true, true);
-		GL.glStencilFunc(GL.GL_EQUAL, 1, 1);
-		// draw where the stencil is 1						
-		GL.glStencilOp(GL.GL_KEEP, GL.GL_KEEP, GL.GL_KEEP);
-		GL.glEnable(GL.GL_CLIP_PLANE0);
-		GL.glClipPlane(GL.GL_CLIP_PLANE0, clipEquation);
-		GL.glPushMatrix();
-		GL.glScalef(1.0f, 1.0f, -1.0f);
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, LightPos);
-		GL.glCallList(LIST_INDEX_ROOM);			// reflection
-		GL.glPushMatrix();
-		GL.glTranslatef(cubeX, cubeY, cubeZ);
-		GL.glCallList(LIST_INDEX_BOX);			// reflection
-		GL.glPopMatrix();
-		GL.glTranslatef(ballX, ballY, ballZ);
-		GL.glRotatef(ballRot, 1.0f, 0.0f, 0.0f);
-		GL.glCallList(LIST_INDEX_BALL);			// reflection
-		GL.glPopMatrix();
-		GL.glDisable(GL.GL_CLIP_PLANE0);
-		GL.glDisable(GL.GL_STENCIL_TEST);
-		GL.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, LightPos);
-		GL.glEnable(GL.GL_BLEND);
-		GL.glDisable(GL.GL_LIGHTING);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		GL.glCallList(LIST_INDEX_MIRROR);
-		GL.glEnable(GL.GL_LIGHTING);
-		GL.glDisable(GL.GL_BLEND);
-		GL.glCallList(LIST_INDEX_ROOM);
-		GL.glPushMatrix();
-		GL.glTranslatef(cubeX, cubeY, cubeZ);
-		GL.glCallList(LIST_INDEX_BOX);
-		GL.glPopMatrix();
-		GL.glTranslatef(ballX, ballY, ballZ);
-		GL.glRotatef(ballRot, 1.0f, 0.0f, 0.0f);
-		GL.glCallList(LIST_INDEX_BALL);
-		ballRot += ballRotSpeed;
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/SelectionTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/SelectionTab.java
deleted file mode 100644
index e4c8fa8..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/SelectionTab.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.opengl.*;
-
-abstract class SelectionTab extends OpenGLTab {
-	private final static int BUFFER_LENGTH = 64;
-
-	/**
-	 * Sets the selected object.  Subclasses must override this method.
-	 */
-	abstract void processPick(int[] pSelectBuff, int hits);
-
-	/**
-	 * Invoke processPick for the object at the specified coordinate.
-	 */
-	int processSelection(int xPos, int yPos, int pointSize) {
-		int[] selectBuffer = new int[BUFFER_LENGTH];
-		int[] viewport = new int[4];
-		// new fix for sun jre
-		int ptr = getContext().getSelectBufferPtr(selectBuffer);
-
-		GL.glSelectBuffer(BUFFER_LENGTH, ptr);
-		GL.glGetIntegerv(GL.GL_VIEWPORT, viewport);
-		GL.glRenderMode(GL.GL_SELECT);
-		GL.glMatrixMode(GL.GL_PROJECTION);
-		GL.glPushMatrix();
-		GL.glLoadIdentity();
-		GLU.gluPickMatrix(xPos, yPos, pointSize, pointSize, viewport);
-		Rectangle rect = getGlCanvas().getClientArea();
-		float fAspect = (float) rect.width / (float) rect.height;
-		GLU.gluPerspective(45.0f, fAspect, 0.5f, 600.0f);
-		GL.glMatrixMode(GL.GL_MODELVIEW);
-		GL.glInitNames();
-		render();
-		int hits = GL.glRenderMode(GL.GL_RENDER);
-		// new fix for sun jre
-		// must be called after render mode is switched
-		getContext().getSelectBuffer(ptr, selectBuffer);
-		if (hits != 0) processPick(selectBuffer, hits);
-		GL.glMatrixMode(GL.GL_PROJECTION);
-		GL.glPopMatrix();
-		GL.glMatrixMode(GL.GL_MODELVIEW);
-		return hits;
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/StencilTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/StencilTab.java
deleted file mode 100644
index be5f4a4..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/StencilTab.java
+++ /dev/null
@@ -1,230 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class StencilTab extends OpenGLTab {
-	private abstract class Shape {
-		private String name;
-		/**
-		 * Constructor
-		 * 
-		 * @param name the shape's name
-		 */
-		Shape(String name) {
-			super();
-			this.name = name;
-		}
-		/**
-		 * Draws this shape.
-		 */
-		abstract void draw();
-		/**
-		 * Returns the name.
-		 * 
-		 * @return String
-		 */
-		String getName() {
-			return name;
-		}
-	}
-
-	private Shape[] shapes = new Shape[5];
-	private Shape currentShape;
-	private float xPos = 0, yPos = 0;
-	private float size = 0.45f;
-	private int texture;
-	private int quadratic;
-	private final static String IMAGE = "images/splash.bmp";
-	private final static int SLEEP_LENGTH = 50;
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Composite controls = new Composite(composite, SWT.NONE);
-		GridLayout layout = new GridLayout(2, false);
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		controls.setLayout(layout);
-		new Label(controls, SWT.NONE).setText("Object:");
-		final Combo shapeCombo = new Combo(controls, SWT.READ_ONLY);
-		for (int i = 0; i < shapes.length; i++) {
-			shapeCombo.add(shapes[i].getName());
-		}
-		shapeCombo.select(0);
-		shapeCombo.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				currentShape = shapes[shapeCombo.getSelectionIndex()];
-			}
-		});
-
-		new Label(composite, SWT.NONE).setText("Size:");
-		final Slider sizeSlider = new Slider(composite, SWT.HORIZONTAL);
-		sizeSlider.setValues(0, 15, 75, 5, 5, 10);
-		sizeSlider.setSelection(45);
-		sizeSlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				size = ((float) sizeSlider.getSelection()) / 100;
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GLU.gluDeleteQuadric(quadratic);
-	}
-
-	/**
-	 * @see OpenGLTab#getSleepLength()
-	 */
-	int getSleepLength() {
-		return SLEEP_LENGTH;
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Stencil";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		if (!hasStencilSupport()) return;
-		
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glClearDepth(1.0f);
-		int[] textureOut = new int[1];
-		GL.glGenTextures(1, textureOut);
-		loadTexture(getContext(), IMAGE, 0, textureOut);
-		this.texture = textureOut[0];
-		quadratic = GLU.gluNewQuadric();
-		GLU.gluQuadricNormals(quadratic, GLU.GLU_SMOOTH);
-		GL.glDepthFunc(GL.GL_LEQUAL);
-		GL.glEnable(GL.GL_STENCIL_TEST);
-		GL.glEnable(GL.GL_TEXTURE_2D);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		// create shapes
-		shapes[0] = new Shape("Triangle") {
-			public void draw() {
-				GL.glBegin(GL.GL_TRIANGLES);
-				GL.glVertex3f(0.0f, size, 0.0f);
-				GL.glVertex3f(-size, -size, 0.0f);
-				GL.glVertex3f(size, -size, 0.0f);
-				GL.glEnd();
-			}
-		};
-
-		shapes[1] = new Shape("Disk") {
-			public void draw() {
-				GLU.gluDisk(quadratic, 0.0f, size, 32, 32);
-			}
-		};
-
-		shapes[2] = new Shape("Square") {
-			public void draw() {
-				GL.glRectf(-size, -size, size, size);
-			}
-		};
-
-		shapes[3] = new Shape("Hour Glass") {
-			public void draw() {
-				GL.glBegin(GL.GL_TRIANGLES);
-				GL.glVertex3f(0.0f, size, 0.0f);
-				GL.glVertex3f(-size, -size, 0.0f);
-				GL.glVertex3f(size, -size, 0.0f);
-				GL.glVertex3f(0.0f, -size, 0.0f);
-				GL.glVertex3f(size, size, 0.0f);
-				GL.glVertex3f(-size, size, 0.0f);
-				GL.glEnd();
-			}
-		};
-
-		shapes[4] = new Shape("Star") {
-			public void draw() {
-				GL.glBegin(GL.GL_TRIANGLES);
-				GL.glVertex3f(-0.3f, 0, 0.0f);
-				GL.glVertex3f(2 * size - 0.3f, 0, 0.0f);
-				GL.glVertex3f(size - 0.3f, 2 * size * 0.85f, 0.0f);
-				GL.glVertex3f(2 * size - 0.3f, size, 0.0f);
-				GL.glVertex3f(0 - 0.3f, size, 0.0f);
-				GL.glVertex3f(size - 0.3f, -size * 0.85f, 0.0f);
-				GL.glEnd();
-			}
-		};
-
-		currentShape = shapes[0];
-	}
-
-	/**
-	 * @see OpenGLTab#isStencilSupportNeeded
-	 */
-	boolean isStencilSupportNeeded() {
-		return true;
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(
-			GL.GL_COLOR_BUFFER_BIT
-				| GL.GL_DEPTH_BUFFER_BIT
-				| GL.GL_STENCIL_BUFFER_BIT);
-
-		GL.glLoadIdentity();
-		GL.glTranslatef(
-			(float) (1.5 * Math.cos(xPos)),
-			(float) (1.0 * Math.sin(yPos)),
-			-3.0f);
-		xPos += 0.15f;
-		yPos += 0.3f;
-
-		GL.glColorMask(false, false, false, false);
-		GL.glStencilFunc(GL.GL_ALWAYS, 1, 1);
-		GL.glStencilOp(GL.GL_KEEP, GL.GL_KEEP, GL.GL_REPLACE);
-		GL.glDisable(GL.GL_DEPTH_TEST);
-		GL.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
-
-		currentShape.draw();
-
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glColorMask(true, true, true, true);
-		GL.glStencilFunc(GL.GL_EQUAL, 1, 1);
-		GL.glStencilOp(GL.GL_KEEP, GL.GL_KEEP, GL.GL_KEEP);
-
-		GL.glLoadIdentity();
-		// load the texture behind the stencil object
-		GL.glTranslatef(0.0f, 0.0f, -3.1f);
-		GL.glBindTexture(GL.GL_TEXTURE_2D, texture);
-		GL.glBegin(GL.GL_QUADS);
-		GL.glTexCoord2f(0.0f, 0.0f);
-		GL.glVertex3f(-0.85f, -0.85f, 1.0f);
-		GL.glTexCoord2f(1.0f, 0.0f);
-		GL.glVertex3f(0.85f, -0.85f, 1.0f);
-		GL.glTexCoord2f(1.0f, 1.0f);
-		GL.glVertex3f(0.85f, 0.85f, 1.0f);
-		GL.glTexCoord2f(0.0f, 1.0f);
-		GL.glVertex3f(-0.85f, 0.85f, 1.0f);
-		GL.glEnd();
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TextureTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TextureTab.java
deleted file mode 100644
index 1375b6f..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TextureTab.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class TextureTab extends OpenGLTab {
-	private float yrot = 0, zrot = 0;
-	private float xPos = 0.0f, yPos = 0.0f, zPos = -20;
-	private int texture = 0;
-	private float[][][] points = new float[45][45][3];
-	private final static String IMAGE = "images/splash.bmp";
-	private final static int SLEEP_LENGTH = 50;
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Group movementGroup = new Group(composite, SWT.NONE);
-		movementGroup.setText("Translation");
-		movementGroup.setLayout(new GridLayout(2, false));
-
-		new Label(movementGroup, SWT.NONE).setText("X:");
-		final Slider xMove = new Slider(movementGroup, SWT.NONE);
-		xMove.setIncrement(1);
-		xMove.setMaximum(12);
-		xMove.setMinimum(0);
-		xMove.setThumb(2);
-		xMove.setPageIncrement(2);
-		xMove.setSelection(5);
-		xMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				xPos = xMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Y:");
-		final Slider yMove = new Slider(movementGroup, SWT.NONE);
-		yMove.setIncrement(1);
-		yMove.setMaximum(12);
-		yMove.setMinimum(0);
-		yMove.setThumb(2);
-		yMove.setPageIncrement(2);
-		yMove.setSelection(5);
-		yMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				yPos = yMove.getSelection() - 5;
-			}
-		});
-
-		new Label(movementGroup, SWT.NONE).setText("Z:");
-		final Slider zMove = new Slider(movementGroup, SWT.NONE);
-		zMove.setIncrement(1);
-		zMove.setMaximum(24);
-		zMove.setMinimum(0);
-		zMove.setThumb(4);
-		zMove.setPageIncrement(2);
-		zMove.setSelection(10);
-		zMove.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				zPos = zMove.getSelection() - 30;
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#getSleepLength()
-	 */
-	int getSleepLength() {
-		return SLEEP_LENGTH;
-	}
-	
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Texture";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		//GL.glClearColor(0.0f, 0.0f, 0.3f, 1.0f); 
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glClearDepth(1.0f);
-		int[] textureOut = new int[1];
-		GL.glGenTextures(1, textureOut);
-		loadTexture(getContext(), IMAGE, 0, textureOut);
-		texture = textureOut[0];
-		GL.glDepthFunc(GL.GL_LEQUAL);
-		GL.glPolygonMode(GL.GL_BACK, GL.GL_FILL);
-		GL.glPolygonMode(GL.GL_FRONT, GL.GL_LINE);
-		GL.glEnable(GL.GL_LIST_MODE);
-		GL.glEnable(GL.GL_TEXTURE_2D);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		// initialize points	
-		for (int x = 0; x < 45; x++) {
-			for (int y = 0; y < 45; y++) {
-				points[x][y][0] = x / 5.0f - 4.5f;
-				points[x][y][1] = y / 5.0f - 4.5f;
-				points[x][y][2] =
-					(float) Math.sin(
-						(((x / 5.0f) * 40.0f) / 360.0f) * Math.PI * 2);
-			}
-		}
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		GL.glClear(
-			GL.GL_COLOR_BUFFER_BIT
-				| GL.GL_DEPTH_BUFFER_BIT
-				| GL.GL_STENCIL_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glTranslatef(xPos, yPos, zPos);
-		GL.glRotatef(yrot, 0.0f, 1.0f, 0.0f);
-		GL.glRotatef(zrot, 0.0f, 0.0f, 1.0f);
-		GL.glBindTexture(GL.GL_TEXTURE_2D, texture);
-
-		GL.glBegin(GL.GL_QUADS);
-		for (int x = 0; x < 44; x++) {
-			for (int y = 0; y < 44; y++) {
-				float fx = x / 44.0f;
-				float fy = y / 44.0f;
-				float fxb = (x + 1) / 44.0f;
-				float fyb = (y + 1) / 44.0f;
-				GL.glTexCoord2f(fx, fy);
-				GL.glVertex3f(
-					points[x][y][0],
-					points[x][y][1],
-					points[x][y][2]);
-				GL.glTexCoord2f(fx, fyb);
-				GL.glVertex3f(
-					points[x][y + 1][0],
-					points[x][y + 1][1],
-					points[x][y + 1][2]);
-				GL.glTexCoord2f(fxb, fyb);
-				GL.glVertex3f(
-					points[x + 1][y + 1][0],
-					points[x + 1][y + 1][1],
-					points[x + 1][y + 1][2]);
-				GL.glTexCoord2f(fxb, fy);
-				GL.glVertex3f(
-					points[x + 1][y][0],
-					points[x + 1][y][1],
-					points[x + 1][y][2]);
-			}
-		}
-		GL.glEnd();
-		// perform wave motion
-		for (int y = 0; y < 45; y++) {
-			float hold = points[0][y][2];
-			for (int x = 0; x < 44; x++) {
-				points[x][y][2] = points[x + 1][y][2];
-			}
-			points[44][y][2] = hold;
-		}
-		yrot += 0.9f;
-		zrot += 0.6f;
-	}
-}
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TransparencyTab.java b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TransparencyTab.java
deleted file mode 100644
index 11f39fb..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/TransparencyTab.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.opengl.examples;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.opengl.*;
-import org.eclipse.swt.widgets.*;
-
-class TransparencyTab extends SelectionTab {
-	private float[] alphas = { 0.3f, 0.5f, 1.0f };
-	private int quadratic;
-	private int currentSelection = 1;
-	private final static int
-		INDEX_TRIANGLE = 1, INDEX_SPHERE = 2, INDEX_DISK = 3;
-	private final static String[] OBJECTS = {"Triangle", "Sphere", "Disk" };
-
-	/**
-	 * @see OpenGLTab#createControls(Composite)
-	 */
-	void createControls(Composite composite) {
-		Composite objectGroup = new Composite(composite, SWT.NONE);
-		GridLayout layout = new GridLayout(2, false);
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		objectGroup.setLayout(layout);
-		objectGroup.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-
-		new Label(objectGroup, SWT.NONE).setText("Object:");
-		final Combo objectCombo = new Combo(objectGroup, SWT.READ_ONLY);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.grabExcessHorizontalSpace = true;
-		objectCombo.setLayoutData(data);
-		objectCombo.setItems(OBJECTS);
-		objectCombo.select(0);
-		
-		new Label(composite, SWT.NONE).setText("Transparency:");
-		final Slider transparencySlider = new Slider(composite, SWT.HORIZONTAL);
-		transparencySlider.setValues(0, 0, 11, 1, 1, 2);
-		transparencySlider.setSelection(7);
-		transparencySlider.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				float alpha = transparencySlider.getSelection();
-				alpha = 1.0f - alpha / 10;
-				alphas[currentSelection - 1] = alpha;
-			}
-		});
-		objectCombo.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				currentSelection = objectCombo.getSelectionIndex() + 1;
-				transparencySlider.setSelection(
-					(int) ((1.0f - alphas[currentSelection - 1]) * 10));
-			}
-		});
-
-		final Canvas glCanvas = getGlCanvas();
-		glCanvas.addMouseListener(new MouseAdapter() {
-			public void mouseUp(MouseEvent e) {
-				Rectangle rect = glCanvas.getClientArea();
-				e.y = rect.height - e.y;
-				if (e.button == 1) {
-					processSelection(e.x, e.y, 2);
-					transparencySlider.setSelection(
-						(int) ((1.0f - alphas[currentSelection - 1]) * 10));
-					objectCombo.select(currentSelection - 1);
-				}
-			}
-		});
-	}
-
-	/**
-	 * @see OpenGLTab#dispose()
-	 */
-	void dispose() {
-		super.dispose();
-		GLU.gluDeleteQuadric(quadratic);
-		GL.glDeleteLists(INDEX_DISK, 1);
-		GL.glDeleteLists(INDEX_SPHERE, 1);
-		GL.glDeleteLists(INDEX_TRIANGLE, 1);
-	}
-
-	/**
-	 * @see OpenGLTab#getTabText()
-	 */
-	String getTabText() {
-		return "Transparency";
-	}
-
-	/**
-	 * @see OpenGLTab#init()
-	 */
-	void init() {
-		GL.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-		GL.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
-		quadratic = GLU.gluNewQuadric();
-		GLU.gluQuadricNormals(quadratic, GLU.GLU_SMOOTH);
-		GL.glEnable(GL.GL_CULL_FACE);
-		GL.glEnable(GL.GL_DEPTH_TEST);
-		GL.glEnable(GL.GL_BLEND);
-		// create display lists		
-		GL.glNewList(INDEX_SPHERE, GL.GL_COMPILE);
-		GLU.gluQuadricDrawStyle(quadratic, GLU.GLU_FILL);
-		GLU.gluSphere(quadratic, 1.5, 32, 32);
-		GL.glEndList();
-		GL.glNewList(INDEX_DISK, GL.GL_COMPILE);
-		GLU.gluQuadricDrawStyle(quadratic, GLU.GLU_FILL);
-		GLU.gluDisk(quadratic, 1.0, 3, 32, 32);
-		GL.glEndList();
-		GL.glNewList(INDEX_TRIANGLE, GL.GL_COMPILE);
-		GL.glBegin(GL.GL_TRIANGLES);
-		GL.glVertex3f(0.0f, 2.0f, 0.0f);
-		GL.glVertex3f(-2.0f, -2.0f, 2.0f);
-		GL.glVertex3f(2.0f, -2.0f, 2.0f);
-		GL.glEnd();
-		GL.glEndList();
-	}
-
-	/**
-	 * @see SelectionTab.processPick (int[], int)
-	 */
-	void processPick(int[] pSelectBuff, int hits) {
-		int count, zDepth;
-		int tempSelection = pSelectBuff[3];
-		zDepth = pSelectBuff[2];
-		// pick object with largest z value
-		for (int i = 4; i <= 4 * (hits - 1); i = i + 4) {
-			if (zDepth > pSelectBuff[i + 2]) {
-				zDepth = pSelectBuff[i + 2];
-				tempSelection = pSelectBuff[i + 3];
-			}
-		}
-		if (tempSelection > 0) currentSelection = tempSelection;
-	}
-
-	/**
-	 * @see OpenGLTab#renderScene()
-	 */
-	void renderScene() {
-		// draw items with transparent qualities in reverse Z order
-		GL.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
-		GL.glLoadIdentity();
-		GL.glTranslatef(0.0f, 0.0f, -14.0f);
-		GL.glPushName(0);
-
-		// draw disk
-		GL.glPushMatrix();
-		GL.glTranslatef(-1.0f, 0.0f, 1.0f);
-		GL.glColor4f(0.0f, 1.0f, 0.0f, alphas[2]);
-		GL.glLoadName(INDEX_DISK);
-		GL.glCallList(INDEX_DISK);
-		if (currentSelection == INDEX_DISK) {
-			GL.glColor3f(1.0f, 0.0f, 0.0f);
-			GLU.gluQuadricDrawStyle(quadratic, GLU.GLU_LINE);
-			GLU.gluDisk(quadratic, 0.98, 3.02, 32, 32);
-		}
-		GL.glPopMatrix();
-
-		// draw triangle
-		GL.glTranslatef(0.0f, 0.0f, +3.0f);
-		GL.glLoadName(INDEX_TRIANGLE);
-		GL.glColor4f(1.0f, 0.0f, 0.0f, alphas[0]);
-		GL.glCallList(INDEX_TRIANGLE);
-		GL.glPointSize(5.0f);
-		if (currentSelection == INDEX_TRIANGLE) {
-			GL.glBegin(GL.GL_POINTS);
-			GL.glColor3f(1.0f, 0.0f, 0.0f);
-			GL.glVertex3f(0.0f, 2.0f, 0.0f);
-			GL.glVertex3f(-2.0f, -2.0f, 2.0f);
-			GL.glVertex3f(2.0f, -2.0f, 2.0f);
-			GL.glEnd();
-		}
-
-		// draw sphere
-		GL.glPushMatrix();
-		GL.glTranslatef(1.0f, 0.0f, +3.0f);
-		GL.glColor4f(0.0f, 0.0f, 1.0f, alphas[1]);
-		GL.glLoadName(INDEX_SPHERE);
-		GL.glCallList(INDEX_SPHERE);
-		if (currentSelection == INDEX_SPHERE) {
-			GL.glColor3f(1.0f, 0.0f, 0.0f);
-			GLU.gluQuadricDrawStyle(quadratic, GLU.GLU_LINE);
-			GLU.gluSphere(quadratic, 1.51, 8, 8);
-		}
-		GL.glPopMatrix();
-	}
-}
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Ball.jpg b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Ball.jpg
deleted file mode 100644
index 6890d26..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Ball.jpg
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Box.bmp b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Box.bmp
deleted file mode 100644
index 5eef663..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Box.bmp
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Floor.jpg b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Floor.jpg
deleted file mode 100644
index 4934c9c..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/Floor.jpg
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/splash.bmp b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/splash.bmp
deleted file mode 100644
index 6ec75da..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/splash.bmp
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/untitled.jpg b/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/untitled.jpg
deleted file mode 100644
index f5d6aa1..0000000
--- a/examples/org.eclipse.swt.opengl.examples/src/org/eclipse/swt/opengl/examples/images/untitled.jpg
+++ /dev/null
Binary files differ
diff --git a/examples/org.eclipse.swt.snippets/.classpath b/examples/org.eclipse.swt.snippets/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/examples/org.eclipse.swt.snippets/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/org.eclipse.swt.snippets/.cvsignore b/examples/org.eclipse.swt.snippets/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/examples/org.eclipse.swt.snippets/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.snippets/.project b/examples/org.eclipse.swt.snippets/.project
deleted file mode 100644
index 069b3a1..0000000
--- a/examples/org.eclipse.swt.snippets/.project
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.swt.examples</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.swt</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/org.eclipse.swt.snippets/about.html b/examples/org.eclipse.swt.snippets/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/examples/org.eclipse.swt.snippets/about.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.snippets/build.properties b/examples/org.eclipse.swt.snippets/build.properties
deleted file mode 100644
index 6bd494b..0000000
--- a/examples/org.eclipse.swt.snippets/build.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-source.swtsnippets.jar = src/
diff --git a/examples/org.eclipse.swt.snippets/plugin.properties b/examples/org.eclipse.swt.snippets/plugin.properties
deleted file mode 100644
index cfc2a84..0000000
--- a/examples/org.eclipse.swt.snippets/plugin.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName = SWT Snippets
-providerName = Eclipse.org
diff --git a/examples/org.eclipse.swt.snippets/plugin.xml b/examples/org.eclipse.swt.snippets/plugin.xml
deleted file mode 100644
index 1190339..0000000
--- a/examples/org.eclipse.swt.snippets/plugin.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin
-   id="org.eclipse.swt.snippets"
-   name="%pluginName"
-   version="3.1.0"
-   provider-name="%providerName">
-
-   <requires>
-      <import plugin="org.eclipse.swt" export="true"/>
-   </requires>
-
-</plugin>
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet1.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet1.java
deleted file mode 100644
index 9492aba..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet1.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/* 
- * example snippet: Hello World
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet1 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell(display);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet10.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet10.java
deleted file mode 100644
index 7205af6..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet10.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-public class Snippet10 {
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet100.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet100.java
deleted file mode 100644
index bbb1c4d..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet100.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Font example snippet: create a large font for use by a text widget
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet100 {
-
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setBounds(10, 10, 200, 200);
-	Text text = new Text(shell, SWT.MULTI);
-	text.setBounds(10, 10, 150, 150);
-	Font initialFont = text.getFont();
-	FontData[] fontData = initialFont.getFontData();
-	for (int i = 0; i < fontData.length; i++) {
-		fontData[i].setHeight(24);
-	}
-	Font newFont = new Font(display, fontData);
-	text.setFont(newFont);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	newFont.dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet101.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet101.java
deleted file mode 100644
index 6a94d7d..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet101.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: insert a table item (at an index)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet101 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Table table = new Table (shell, SWT.BORDER | SWT.MULTI);
-	table.setSize (200, 200);
-	for (int i=0; i<12; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		item.setText ("Item " + i);
-	}
-	TableItem item = new TableItem (table, SWT.NONE, 1);
-	item.setText ("*** New Item " + table.indexOf (item) + " ***");
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-}
-
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet102.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet102.java
deleted file mode 100644
index 881a72a..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet102.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tree example snippet: insert a tree item (at an index)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet102 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Tree tree = new Tree (shell, SWT.BORDER | SWT.MULTI);
-	tree.setSize (200, 200);
-	for (int i=0; i<12; i++) {
-		TreeItem item = new TreeItem (tree, SWT.NONE);
-		item.setText ("Item " + i);
-	}
-	TreeItem item = new TreeItem (tree, SWT.NONE, 1);
-	TreeItem [] items = tree.getItems ();
-	int index = 0;
-	while (index < items.length && items [index] != item) index++;
-	item.setText ("*** New Item " + index + " ***");
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet103.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet103.java
deleted file mode 100644
index a75a7c4..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet103.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: update table item text
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet103 {
-
-static char content = 'a';
-public static void main(String[] args) {
-	final Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setBounds(10, 10, 200, 240);
-	Table table = new Table(shell, SWT.NONE);
-	table.setBounds(10, 10, 160, 160);
-
-	final TableItem[] items = new TableItem[4];
-	for (int i = 0; i < 4; i++) {
-		new TableColumn(table, SWT.NONE).setWidth(40);
-	}
-	for (int i = 0; i < 4; i++) {
-		items[i] = new TableItem(table, SWT.NONE);
-		populateItem(items[i]);
-	}
-
-	Button button = new Button(shell, SWT.PUSH);
-	button.setBounds(10, 180, 50, 30);
-	button.setText("Change");
-	button.addListener(SWT.Selection, new Listener() {
-		public void handleEvent(Event event) {
-			for (int i = 0; i < 4; i++) {
-				populateItem(items[i]);
-			}
-		}
-	});
-
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch()) display.sleep();
-	}
-	display.dispose();
-}
-
-static void populateItem(TableItem item) {
-	String stringContent = String.valueOf(content);
-	item.setText(
-		new String[] {
-			stringContent,
-			stringContent,
-			stringContent,
-			stringContent });
-	content++;
-	if (content > 'z') content = 'a';
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet104.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet104.java
deleted file mode 100644
index e40d1c5..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet104.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Shell example snippet: create a splash screen
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet104 {
-
-public static void main(String[] args) {
-	final Display display = new Display();
-	final int [] count = new int [] {4};
-	final Image image = new Image(display, 300, 300);
-	final Shell splash = new Shell(SWT.ON_TOP);
-	final ProgressBar bar = new ProgressBar(splash, SWT.NONE);
-	bar.setMaximum(count[0]);
-	Label label = new Label(splash, SWT.NONE);
-	label.setImage(image);
-	FormLayout layout = new FormLayout();
-	splash.setLayout(layout);
-	FormData labelData = new FormData ();
-	labelData.right = new FormAttachment (100, 0);
-	labelData.bottom = new FormAttachment (100, 0);
-	label.setLayoutData(labelData);
-	FormData progressData = new FormData ();
-	progressData.left = new FormAttachment (0, 5);
-	progressData.right = new FormAttachment (100, -5);
-	progressData.bottom = new FormAttachment (100, -5);
-	bar.setLayoutData(progressData);
-	splash.pack();
-	Rectangle splashRect = splash.getBounds();
-	Rectangle displayRect = display.getBounds();
-	int x = (displayRect.width - splashRect.width) / 2;
-	int y = (displayRect.height - splashRect.height) / 2;
-	splash.setLocation(x, y);
-	splash.open();
-	display.asyncExec(new Runnable() {
-		public void run() {
-			Shell [] shells = new Shell[count[0]];
-			for (int i=0; i<count[0]; i++) {
-				shells [i] = new Shell(display);
-				shells [i].setSize (300, 300);
-				shells [i].addListener(SWT.Close, new Listener() {
-					public void handleEvent (Event e) {
-						--count[0];
-					}
-				});
-				bar.setSelection(i+1);
-				try {Thread.sleep(1000);} catch (Throwable e) {}
-			}
-			splash.close();
-			image.dispose();
-			for (int i=0; i<count[0]; i++) {
-				shells [i].open();
-			}
-		}
-	});
-	while (count [0] != 0) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet105.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet105.java
deleted file mode 100644
index c22fa12..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet105.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Program example snippet: invoke an external batch file
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.program.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet105 {
-
-public static void main(String[] args) {
-	Display display = new Display ();
-	Program.launch("c:\\cygwin\\cygwin.bat");
-	display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet106.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet106.java
deleted file mode 100644
index fe1cecc..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet106.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: insert a table column (at an index)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet106 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new RowLayout (SWT.VERTICAL));
-	final Table table = new Table (shell, SWT.BORDER | SWT.MULTI);
-	table.setHeaderVisible (true);
-	for (int i=0; i<4; i++) {
-		TableColumn column = new TableColumn (table, SWT.NONE);
-		column.setText ("Column " + i);
-	}
-	final TableColumn [] columns = table.getColumns ();
-	for (int i=0; i<12; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		for (int j=0; j<columns.length; j++) {
-			item.setText (j, "Item " + i);
-		}
-	}
-	for (int i=0; i<columns.length; i++) columns [i].pack ();
-	Button button = new Button (shell, SWT.PUSH);
-	final int index = 1;
-	button.setText ("Insert Column " + index + "a");
-	button.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			TableColumn column = new TableColumn (table, SWT.NONE, index);
-			column.setText ("Column " + index + "a");
-			TableItem [] items = table.getItems ();
-			for (int i=0; i<items.length; i++) {
-				items [i].setText (index, "Item " + i + "a");
-			}
-			column.pack ();
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet107.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet107.java
deleted file mode 100644
index 4a51169..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet107.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-/*
- * Sash example snippet: implement a simple splitter (with a 20 pixel limit)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet107 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	Button button1 = new Button (shell, SWT.PUSH);
-	button1.setText ("Button 1");
-	final Sash sash = new Sash (shell, SWT.VERTICAL);
-	Button button2 = new Button (shell, SWT.PUSH);
-	button2.setText ("Button 2");
-	
-	final FormLayout form = new FormLayout ();
-	shell.setLayout (form);
-	
-	FormData button1Data = new FormData ();
-	button1Data.left = new FormAttachment (0, 0);
-	button1Data.right = new FormAttachment (sash, 0);
-	button1Data.top = new FormAttachment (0, 0);
-	button1Data.bottom = new FormAttachment (100, 0);
-	button1.setLayoutData (button1Data);
-
-	final int limit = 20, percent = 50;
-	final FormData sashData = new FormData ();
-	sashData.left = new FormAttachment (percent, 0);
-	sashData.top = new FormAttachment (0, 0);
-	sashData.bottom = new FormAttachment (100, 0);
-	sash.setLayoutData (sashData);
-	sash.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			Rectangle sashRect = sash.getBounds ();
-			Rectangle shellRect = shell.getClientArea ();
-			int right = shellRect.width - sashRect.width - limit;
-			e.x = Math.max (Math.min (e.x, right), limit);
-			if (e.x != sashRect.x)  {
-				sashData.left = new FormAttachment (0, e.x);
-				shell.layout ();
-			}
-		}
-	});
-	
-	FormData button2Data = new FormData ();
-	button2Data.left = new FormAttachment (sash, 0);
-	button2Data.right = new FormAttachment (100, 0);
-	button2Data.top = new FormAttachment (0, 0);
-	button2Data.bottom = new FormAttachment (100, 0);
-	button2.setLayoutData (button2Data);
-	
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet108.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet108.java
deleted file mode 100644
index 1bb0d31..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet108.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Button example snippet: set the default button
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet108 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Label label = new Label (shell, SWT.NONE);
-	label.setText ("Enter your name:");
-	Text text = new Text (shell, SWT.BORDER);
-	text.setLayoutData (new RowData (100, SWT.DEFAULT));
-	Button ok = new Button (shell, SWT.PUSH);
-	ok.setText ("Ok");
-	Button cancel = new Button (shell, SWT.PUSH);
-	cancel.setText ("Cancel");
-	shell.setDefaultButton (cancel);
-	shell.setLayout (new RowLayout ());
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet109.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet109.java
deleted file mode 100644
index 7e8d35c..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet109.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * SashForm example snippet: create a sash form with three children
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.custom.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet109 {
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	Shell shell = new Shell(display);
-	shell.setLayout (new FillLayout());
-
-	SashForm form = new SashForm(shell,SWT.HORIZONTAL);
-	form.setLayout(new FillLayout());
-	
-	Composite child1 = new Composite(form,SWT.NONE);
-	child1.setLayout(new FillLayout());
-	new Label(child1,SWT.NONE).setText("Label in pane 1");
-	
-	Composite child2 = new Composite(form,SWT.NONE);
-	child2.setLayout(new FillLayout());
-	new Button(child2,SWT.PUSH).setText("Button in pane2");
-
-	Composite child3 = new Composite(form,SWT.NONE);
-	child3.setLayout(new FillLayout());
-	new Label(child3,SWT.PUSH).setText("Label in pane3");
-	
-	form.setWeights(new int[] {30,40,30});
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet11.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet11.java
deleted file mode 100644
index 11137b0..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet11.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Text example snippet: set the selection (i-beam)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet11 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Text text = new Text (shell, SWT.BORDER | SWT.V_SCROLL);
-	text.setBounds (10, 10, 100, 100);
-	for (int i=0; i<16; i++) {
-		text.append ("Line " + i + "\n");
-	}
-	shell.open ();
-	text.setSelection (30);
-	System.out.println (text.getCaretLocation ());
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet110.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet110.java
deleted file mode 100644
index 714a111..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet110.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: find a table cell from mouse down (works for any table style)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.graphics.*;
-
-public class Snippet110 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Table table = new Table (shell, SWT.BORDER | SWT.V_SCROLL);
-	table.setHeaderVisible (true);
-	table.setLinesVisible (true);
-	final int rowCount = 64, columnCount = 4;
-	for (int i=0; i < columnCount; i++) {
-		TableColumn column = new TableColumn (table, SWT.NULL);
-		column.setText ("Column " + i);
-	}
-	for (int i=0; i < rowCount; i++) {
-		TableItem item = new TableItem (table, SWT.NULL);
-		for (int j=0; j < columnCount; j++) {
-			item.setText (j, "Item " + i + "-" + j);
-		}
-	}
-	for (int i=0; i < columnCount; i++) {
-		table.getColumn (i).pack ();
-	}
-	Point size = table.computeSize (SWT.DEFAULT, 200);
-	table.setSize (size);
-	shell.pack ();
-	table.addListener (SWT.MouseDown, new Listener () {
-		public void handleEvent (Event event) {
-			Rectangle clientArea = table.getClientArea ();
-			Point pt = new Point (event.x, event.y);
-			int index = table.getTopIndex ();
-			while (index < table.getItemCount ()) {
-				boolean visible = false;
-				TableItem item = table.getItem (index);
-				for (int i=0; i < columnCount; i++) {
-					Rectangle rect = item.getBounds (i);
-					if (rect.contains (pt)) {
-						System.out.println ("Item " + index + "-" + i);
-					}
-					if (!visible && rect.intersects (clientArea)) {
-						visible = true;
-					}
-				}
-				if (!visible) return;
-				index++;
-			}
-		}
-	});
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet111.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet111.java
deleted file mode 100644
index 20d1c5e..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet111.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * TreeEditor example snippet: edit the text of a tree item (in place, fancy)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.custom.*;
-
-public class Snippet111 {
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Color black = display.getSystemColor (SWT.COLOR_BLACK);
-	Shell shell = new Shell (display);
-	shell.setLayout (new FillLayout ());
-	final Tree tree = new Tree (shell, SWT.BORDER);
-	for (int i=0; i<16; i++) {
-		TreeItem itemI = new TreeItem (tree, SWT.NONE);
-		itemI.setText ("Item " + i);
-		for (int j=0; j<16; j++) {
-			TreeItem itemJ = new TreeItem (itemI, SWT.NONE);
-			itemJ.setText ("Item " + j);
-		}
-	}
-	final TreeItem [] lastItem = new TreeItem [1];
-	final TreeEditor editor = new TreeEditor (tree);
-	tree.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			final TreeItem item = (TreeItem) e.item;
-			if (item != null && item == lastItem [0]) {
-				final Composite composite = new Composite (tree, SWT.NONE);
-				composite.setBackground (black);
-				final Text text = new Text (composite, SWT.NONE);
-				composite.addListener (SWT.Resize, new Listener () {
-					public void handleEvent (Event e) {
-						Rectangle rect = composite.getClientArea ();
-						text.setBounds (rect.x + 1, rect.y + 1, rect.width - 2, rect.height - 2);
-					}
-				});
-				Listener textListener = new Listener () {
-					public void handleEvent (final Event e) {
-						switch (e.type) {
-							case SWT.FocusOut:
-								item.setText (text.getText ());
-								composite.dispose ();
-								break;
-							case SWT.Verify:
-								String newText = text.getText ();
-								String leftText = newText.substring (0, e.start);
-								String rightText = newText.substring (e.end, newText.length ());
-								GC gc = new GC (text);
-								Point size = gc.textExtent (leftText + e.text + rightText);
-								gc.dispose ();
-								size = text.computeSize (size.x, SWT.DEFAULT);
-								editor.horizontalAlignment = SWT.LEFT;
-								Rectangle itemRect = item.getBounds (), rect = tree.getClientArea ();
-								editor.minimumWidth = Math.max (size.x, itemRect.width) + 2;
-								int left = itemRect.x, right = rect.x + rect.width;
-								editor.minimumWidth = Math.min (editor.minimumWidth, right - left);
-								editor.layout ();
-								break;
-							case SWT.Traverse:
-								switch (e.detail) {
-									case SWT.TRAVERSE_RETURN:
-										item.setText (text.getText ());
-										//FALL THROUGH
-									case SWT.TRAVERSE_ESCAPE:
-										composite.dispose ();
-										e.doit = false;
-								}
-								break;
-						}
-					}
-				};
-				text.addListener (SWT.FocusOut, textListener);
-				text.addListener (SWT.Traverse, textListener);
-				text.addListener (SWT.Verify, textListener);
-				editor.setEditor (composite, item);
-				text.setText (item.getText ());
-				text.selectAll ();
-				text.setFocus ();
-			}
-			lastItem [0] = item;
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet112.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet112.java
deleted file mode 100644
index 41eedd5..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet112.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Image example snippet: display an image in a group
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet112 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Image image = new Image (display, 20, 20);
-	Color color = display.getSystemColor (SWT.COLOR_RED);
-	GC gc = new GC (image);
-	gc.setBackground (color);
-	gc.fillRectangle (image.getBounds ());
-	gc.dispose ();
-	color.dispose ();
-
-	Shell shell = new Shell (display);
-	shell.setLayout (new FillLayout ());
-	Group group = new Group (shell, SWT.NONE);
-	group.setLayout (new FillLayout ());
-	group.setText ("a square");
-	Canvas canvas = new Canvas (group, SWT.NONE);
-	canvas.addPaintListener (new PaintListener () {
-		public void paintControl (PaintEvent e) {
-			e.gc.drawImage (image, 0, 0);
-		}
-	});
-
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ())
-			display.sleep ();
-	}
-	image.dispose ();
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet113.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet113.java
deleted file mode 100644
index a997987..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet113.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Table example snippet: detect a selection or check event in a table (SWT.CHECK)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet113 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Table table = new Table (shell, SWT.CHECK | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-	for (int i=0; i<12; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		item.setText ("Item " + i);
-	}
-	table.setSize (100, 100);
-	table.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			String string = event.detail == SWT.CHECK ? "Checked" : "Selected";
-			System.out.println (event.item + " " + string);
-		}
-	});
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet114.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet114.java
deleted file mode 100644
index a7284fb..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet114.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Tree example snippet: detect a selection or check event in a tree (SWT.CHECK)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet114 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Tree tree = new Tree (shell, SWT.CHECK | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-	for (int i=0; i<12; i++) {
-		TreeItem item = new TreeItem (tree, SWT.NONE);
-		item.setText ("Item " + i);
-	}
-	tree.setSize (100, 100);
-	tree.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			String string = event.detail == SWT.CHECK ? "Checked" : "Selected";
-			System.out.println (event.item + " " + string);
-		}
-	});
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet115.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet115.java
deleted file mode 100644
index 118ea2d..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet115.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Composite example snippet: force radio behavior on two different composites
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet115 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new RowLayout (SWT.VERTICAL));
-	Composite c1 = new Composite (shell, SWT.BORDER | SWT.NO_RADIO_GROUP);
-	c1.setLayout (new RowLayout ());
-	Composite c2 = new Composite (shell, SWT.BORDER | SWT.NO_RADIO_GROUP);
-	c2.setLayout (new RowLayout ());
-	final Composite [] composites = new Composite [] {c1, c2};
-	Listener radioGroup = new Listener () {
-		public void handleEvent (Event event) {
-			for (int i=0; i<composites.length; i++) {
-				Composite composite = composites [i];
-				Control [] children = composite.getChildren ();
-				for (int j=0; j<children.length; j++) {
-					Control child = children [j];
-					if (child instanceof Button) {
-						Button button = (Button) child;
-						if ((button.getStyle () & SWT.RADIO) != 0) button.setSelection (false);
-					}
-				}
-			}
-			Button button = (Button) event.widget;
-			button.setSelection (true);
-		}
-	};
-	for (int i=0; i<4; i++) {
-		Button button = new Button (c1, SWT.RADIO);
-		button.setText ("Button " + i);
-		button.addListener (SWT.Selection, radioGroup);
-	}
-	for (int i=0; i<4; i++) {
-		Button button = new Button (c2, SWT.RADIO);
-		button.setText ("Button " + (i + 4));
-		button.addListener (SWT.Selection, radioGroup);
-	}
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet116.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet116.java
deleted file mode 100644
index 9263b53..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet116.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Text example snippet: stop CR from going to the default button
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet116  {
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new GridLayout());
-	Text text = new Text(shell, SWT.SINGLE | SWT.BORDER);
-	text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-	text.setText("Here is some text");
-	text.addSelectionListener(new SelectionAdapter() {
-		public void widgetDefaultSelected(SelectionEvent e) {
-			System.out.println("Text default selected (overrides default button)");
-		}
-	});
-	text.addTraverseListener(new TraverseListener() {
-		public void keyTraversed(TraverseEvent e) {
-			if (e.detail == SWT.TRAVERSE_RETURN) {
-				e.doit = false;
-				e.detail = SWT.TRAVERSE_NONE;
-			}
-		}
-	});
-	Button button = new Button(shell, SWT.PUSH);
-	button.setText("Ok");
-	button.addSelectionListener(new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent e) {
-			System.out.println("Button selected");
-		}
-	});
-	shell.setDefaultButton(button);
-	shell.pack();
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet117.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet117.java
deleted file mode 100644
index d49fced..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet117.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Text example snippet: add a select all menu item to the control
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet117  {
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	final Text t = new Text(shell, SWT.BORDER | SWT.MULTI);
-    
-	Menu bar = new Menu (shell, SWT.BAR);
-	shell.setMenuBar (bar);
-	MenuItem editItem = new MenuItem (bar, SWT.CASCADE);
-	editItem.setText ("Edit");
-	Menu submenu = new Menu (shell, SWT.DROP_DOWN);
-	editItem.setMenu (submenu);
-
-	MenuItem item = new MenuItem (submenu, SWT.PUSH);
-	item.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			t.selectAll();
-		}
-	});
-	item.setText ("Select &All\tCtrl+A");
-	item.setAccelerator (SWT.CTRL + 'A');
-	
-	// Note that as long as your application has not overridden 
-	// the global accelerators for copy, paste, and cut 
-	//(CTRL+C or CTRL+INSERT, CTRL+V or SHIFT+INSERT, and CTRL+X or SHIFT+DELETE)
-	// these behaviours are already available by default.
-	// If your application overrides these accelerators,
-	// you will need to call Text.copy(), Text.paste() and Text.cut()
-	// from the Selection callback for the accelerator when the 
-	// text widget has focus.
-
-	shell.setSize(200, 200);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet118.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet118.java
deleted file mode 100644
index 899faa9..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet118.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Cursor example snippet: create a color cursor from an image file
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet118 {
-
-public static void main (String [] args) {
-	final Display display = new Display();
-	final Shell shell = new Shell(display);
-	shell.setSize(150, 150);
-	final Cursor[] cursor = new Cursor[1];
-	Button button = new Button(shell, SWT.PUSH);
-	button.setText("Change cursor");
-	Point size = button.computeSize(SWT.DEFAULT, SWT.DEFAULT);
-	button.setSize(size);
-	button.addListener(SWT.Selection, new Listener() {
-		public void handleEvent(Event e) {
-			FileDialog dialog = new FileDialog(shell);
-			dialog.setFilterExtensions(new String[] {"*.ico", "*.gif", "*.*"});
-			String name = dialog.open();
-			if (name == null) return;
-			ImageData image = new ImageData(name);
-			Cursor oldCursor = cursor[0];
-			cursor[0] = new Cursor(display, image, 0, 0);
-			shell.setCursor(cursor[0]);
-			if (oldCursor != null) oldCursor.dispose();
-		}
-	});
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	if (cursor[0] != null) cursor[0].dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet119.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet119.java
deleted file mode 100644
index ec98102..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet119.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Cursor example snippet: create a color cursor from a source and a mask
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet119 {
-
-static byte[] source = {
-	(byte)0x11, (byte)0x11, (byte)0x11, (byte)0x00, (byte)0x00, (byte)0x11, (byte)0x11, (byte)0x11,
-	(byte)0x11, (byte)0x10, (byte)0x00, (byte)0x01, (byte)0x10, (byte)0x00, (byte)0x01, (byte)0x11, 
-	(byte)0x11, (byte)0x00, (byte)0x22, (byte)0x01, (byte)0x10, (byte)0x33, (byte)0x00, (byte)0x11,
-	(byte)0x10, (byte)0x02, (byte)0x22, (byte)0x01, (byte)0x10, (byte)0x33, (byte)0x30, (byte)0x01,
-	(byte)0x10, (byte)0x22, (byte)0x22, (byte)0x01, (byte)0x10, (byte)0x33, (byte)0x33, (byte)0x01,
-	(byte)0x10, (byte)0x22, (byte)0x22, (byte)0x01, (byte)0x10, (byte)0x33, (byte)0x33, (byte)0x01,
-	(byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
-	(byte)0x01, (byte)0x11, (byte)0x11, (byte)0x01, (byte)0x10, (byte)0x11, (byte)0x11, (byte)0x10,
-	(byte)0x01, (byte)0x11, (byte)0x11, (byte)0x01, (byte)0x10, (byte)0x11, (byte)0x11, (byte)0x10,
-	(byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00,
-	(byte)0x10, (byte)0x44, (byte)0x44, (byte)0x01, (byte)0x10, (byte)0x55, (byte)0x55, (byte)0x01,
-	(byte)0x10, (byte)0x44, (byte)0x44, (byte)0x01, (byte)0x10, (byte)0x55, (byte)0x55, (byte)0x01,
-	(byte)0x10, (byte)0x04, (byte)0x44, (byte)0x01, (byte)0x10, (byte)0x55, (byte)0x50, (byte)0x01,
-	(byte)0x11, (byte)0x00, (byte)0x44, (byte)0x01, (byte)0x10, (byte)0x55, (byte)0x00, (byte)0x11,
-	(byte)0x11, (byte)0x10, (byte)0x00, (byte)0x01, (byte)0x10, (byte)0x00, (byte)0x01, (byte)0x11,
-	(byte)0x11, (byte)0x11, (byte)0x11, (byte)0x00, (byte)0x00, (byte)0x11, (byte)0x11, (byte)0x11,
-};
-
-static byte[] mask = {
-	(byte)0x03, (byte)0xc0, 
-	(byte)0x1f, (byte)0xf8,
-	(byte)0x3f, (byte)0xfc,
-	(byte)0x7f, (byte)0xfe,
-	(byte)0x7f, (byte)0xfe,
-	(byte)0x7f, (byte)0xfe,
-	(byte)0xff, (byte)0xff,
-	(byte)0xfe, (byte)0x7f,
-	(byte)0xfe, (byte)0x7f,
-	(byte)0xff, (byte)0xff,
-	(byte)0x7f, (byte)0xfe,
-	(byte)0x7f, (byte)0xfe,
-	(byte)0x7f, (byte)0xfe,
-	(byte)0x3f, (byte)0xfc,
-	(byte)0x1f, (byte)0xf8,
-	(byte)0x03, (byte)0xc0
-};
-
-public static void main (String [] args) {
-	Display display = new Display();
-	Color white = display.getSystemColor (SWT.COLOR_WHITE);
-	Color black = display.getSystemColor (SWT.COLOR_BLACK);
-	Color yellow = display.getSystemColor (SWT.COLOR_YELLOW);
-	Color red = display.getSystemColor (SWT.COLOR_RED);
-	Color green = display.getSystemColor (SWT.COLOR_GREEN);
-	Color blue = display.getSystemColor (SWT.COLOR_BLUE);
-	
-	//Create a source ImageData of depth 4
-	PaletteData palette = new PaletteData (new RGB[] {
-		black.getRGB(), white.getRGB(), yellow.getRGB(), 
-		red.getRGB(), blue.getRGB(), green.getRGB()});
-	ImageData sourceData = new ImageData (16, 16, 4, palette, 1, source);
-	
-	//Create a mask ImageData of depth 1 (monochrome)
-	palette = new PaletteData (new RGB [] {black.getRGB(), white.getRGB(),});
-	ImageData maskData = new ImageData (16, 16, 1, palette, 1, mask);
-
-	//Set mask
-	sourceData.maskData = maskData.data;
-	sourceData.maskPad = maskData.scanlinePad;
-
-	//Create cursor
-	Cursor cursor = new Cursor(display, sourceData, 10, 10);
-
-	//Remove mask to draw them separately just to show what they look like
-	sourceData.maskData = null;
-	sourceData.maskPad = -1;
-
-	Shell shell = new Shell(display);
-	final Image source = new Image (display,sourceData);
-	final Image mask = new Image (display, maskData);
-	shell.addPaintListener(new PaintListener() {
-		public void paintControl(PaintEvent e) {
-			GC gc = e.gc;
-			int x = 10, y = 10;
-			String stringSource = "source: ";
-			String stringMask = "mask: ";
-			gc.drawString(stringSource, x, y);
-			gc.drawString(stringMask, x, y + 30);
-			x += Math.max(gc.stringExtent(stringSource).x, gc.stringExtent(stringMask).x);
-			gc.drawImage(source, x, y);
-			gc.drawImage(mask, x, y + 30);
-		}
-	});
-	shell.setSize(150, 150);
-	shell.open();
-	shell.setCursor(cursor);
-	
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	cursor.dispose();
-	source.dispose();
-	mask.dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet12.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet12.java
deleted file mode 100644
index be40869..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet12.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Text example snippet: set the selection (start, end)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet12 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Text text = new Text (shell, SWT.BORDER | SWT.V_SCROLL);
-	text.setBounds (10, 10, 100, 100);
-	for (int i=0; i<16; i++) {
-		text.append ("Line " + i + "\n");
-	}
-	shell.open ();
-	text.setSelection (30, 32);
-	System.out.println (text.getCaretLocation ());
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-} 
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet120.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet120.java
deleted file mode 100644
index 01b31a9..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet120.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Monitor example snippet: center a shell on the primary monitor
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet120 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setSize (200, 200);
-	Monitor primary = display.getPrimaryMonitor ();
-	Rectangle bounds = primary.getBounds ();
-	Rectangle rect = shell.getBounds ();
-	int x = bounds.x + (bounds.width - rect.width) / 2;
-	int y = bounds.y + (bounds.height - rect.height) / 2;
-	shell.setLocation (x, y);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet121.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet121.java
deleted file mode 100644
index ecba3c8..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet121.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Text example snippet: prompt for a password (set the echo character)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet121 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new FillLayout ());
-	Text text = new Text (shell, SWT.SINGLE | SWT.BORDER);
-	text.setEchoChar ('*');
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet122.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet122.java
deleted file mode 100644
index d2a3c30..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet122.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Clipboard example snippet: enable/disable menu depending on clipboard content availability
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.dnd.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet122 {
-	
-public static void main(String[] args) {
-	Display display = new Display();
-	final Clipboard cb = new Clipboard(display);
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	final Text text = new Text(shell, SWT.BORDER | SWT.MULTI | SWT.WRAP);
-	Menu menu = new Menu(shell, SWT.POP_UP);
-	final MenuItem copyItem = new MenuItem(menu, SWT.PUSH);
-	copyItem.setText("Copy");
-	copyItem.addSelectionListener(new SelectionAdapter(){
-		public void widgetSelected(SelectionEvent e) {
-			String selection = text.getSelectionText();
-			if (selection == null) return;
-			Object[] data = new Object[]{selection};
-			Transfer[] types = new Transfer[] {TextTransfer.getInstance()};
-			cb.setContents(data, types);
-		}
-	});
-	final MenuItem pasteItem = new MenuItem(menu, SWT.PUSH);
-	pasteItem.setText ("Paste");
-	pasteItem.addSelectionListener(new SelectionAdapter(){
-		public void widgetSelected(SelectionEvent e) {
-			String string = (String)(cb.getContents(TextTransfer.getInstance()));
-			if (string != null) {
-				text.insert(string);
-			}
-		}
-	});
-	menu.addMenuListener(new MenuAdapter() {
-		public void menuShown(MenuEvent e) {
-			TransferData[] available = cb.getAvailableTypes();
-			boolean enabled = false;
-			for (int i = 0; i < available.length; i++) {
-				if (TextTransfer.getInstance().isSupportedType(available[i])) {
-					enabled = true;
-					break;
-				}
-			}
-			pasteItem.setEnabled(enabled);
-		}
-	});
-	text.setMenu (menu);
-
-	shell.setSize(200, 200);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	cb.dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet123.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet123.java
deleted file mode 100644
index b606063..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet123.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * OLE and ActiveX example snippet: get events from IE control
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.ole.win32.*;
-import org.eclipse.swt.internal.ole.win32.*;
-
-public class Snippet123 {
-
-public static void main(String[] args) {
-	final Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	OleControlSite controlSite;
-	try {
-		OleFrame frame = new OleFrame(shell, SWT.NONE);
-		controlSite = new OleControlSite(frame, SWT.NONE, "Shell.Explorer");
-		controlSite.doVerb(OLE.OLEIVERB_INPLACEACTIVATE);
-	} catch (SWTError e) {
-		System.out.println("Unable to open activeX control");
-		return;
-	}
-	shell.open();
-	
-	// IWebBrowser
-	final OleAutomation webBrowser = new OleAutomation(controlSite);
-
-	// When a new document is loaded, access the document object for the new page.
-	int DownloadComplete = 104;
-	controlSite.addEventListener(DownloadComplete, new OleListener() {
-		public void handleEvent(OleEvent event) {
-			int[] htmlDocumentID = webBrowser.getIDsOfNames(new String[]{"Document"}); 
-			if (htmlDocumentID == null) return;
-			Variant pVarResult = webBrowser.getProperty(htmlDocumentID[0]);
-			if (pVarResult == null || pVarResult.getType() == 0) return;
-			//IHTMLDocument2
-			OleAutomation htmlDocument = pVarResult.getAutomation();
-
-			// Request to be notified of click, double click and key down events
-			EventDispatch myDispatch = new EventDispatch(EventDispatch.onclick);
-			IDispatch idispatch = new IDispatch(myDispatch.getAddress());
-			Variant dispatch = new Variant(idispatch);
-			htmlDocument.setProperty(EventDispatch.onclick, dispatch);
-
-			myDispatch = new EventDispatch(EventDispatch.ondblclick);
-			idispatch = new IDispatch(myDispatch.getAddress());
-			dispatch = new Variant(idispatch);
-			htmlDocument.setProperty(EventDispatch.ondblclick, dispatch);
-
-			myDispatch = new EventDispatch(EventDispatch.onkeydown);
-			idispatch = new IDispatch(myDispatch.getAddress());
-			dispatch = new Variant(idispatch);
-			htmlDocument.setProperty(EventDispatch.onkeydown, dispatch);
-			
-			//Remember to release OleAutomation Object
-			htmlDocument.dispose();
-		}
-	});
-	
-	// Navigate to a web site
-	int[] ids = webBrowser.getIDsOfNames(new String[]{"Navigate", "URL"}); 
-	Variant[] rgvarg = new Variant[] {new Variant("http://www.google.com")};
-	int[] rgdispidNamedArgs = new int[]{ids[1]};
-	webBrowser.invoke(ids[0], rgvarg, rgdispidNamedArgs);
-		
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	//Remember to release OleAutomation Object
-	webBrowser.dispose();
-	display.dispose();
-	
-}
-}
-// EventDispatch implements a simple IDispatch interface which will be called 
-// when the event is fired.
-class EventDispatch {
-	private COMObject iDispatch;
-	private int refCount = 0;
-	private int eventID;
-	
-	final static int onhelp = 0x8001177d;
-	final static int onclick = 0x80011778;
-	final static int ondblclick = 0x80011779;
-	final static int onkeyup = 0x80011776;
-	final static int onkeydown = 0x80011775;
-	final static int onkeypress = 0x80011777;
-	final static int onmouseup = 0x80011773;
-	final static int onmousedown = 0x80011772;
-	final static int onmousemove = 0x80011774;
-	final static int onmouseout = 0x80011771;
-	final static int onmouseover = 0x80011770;
-	final static int onreadystatechange = 0x80011789;
-	final static int onafterupdate = 0x80011786;
-	final static int onrowexit= 0x80011782;
-	final static int onrowenter = 0x80011783;
-	final static int ondragstart = 0x80011793;
-	final static int onselectstart = 0x80011795;
-
-	EventDispatch(int eventID) {
-		this.eventID = eventID;
-		createCOMInterfaces();
-	}
-	int getAddress() {
-		return iDispatch.getAddress();
-	}
-	private void createCOMInterfaces() {
-		iDispatch = new COMObject(new int[]{2, 0, 0, 1, 3, 4, 8}){
-			public int method0(int[] args) {return QueryInterface(args[0], args[1]);}
-			public int method1(int[] args) {return AddRef();}
-			public int method2(int[] args) {return Release();}
-			// method3 GetTypeInfoCount - not implemented
-			// method4 GetTypeInfo - not implemented
-			// method5 GetIDsOfNames - not implemented
-			public int method6(int[] args) {return Invoke(args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7]);}
-		};
-	}
-	private void disposeCOMInterfaces() {
-		if (iDispatch != null)
-			iDispatch.dispose();
-		iDispatch = null;
-		
-	}
-	private int AddRef() {
-		refCount++;
-		return refCount;
-	}
-	private int Invoke(int dispIdMember, int riid, int lcid, int dwFlags, int pDispParams, int pVarResult, int pExcepInfo, int pArgErr)	{
-		switch (eventID) {
-			case onhelp: System.out.println("onhelp"); break;
-			case onclick: System.out.println("onclick"); break;
-			case ondblclick: System.out.println("ondblclick"); break;
-			case onkeyup: System.out.println("onkeyup"); break;
-			case onkeydown: System.out.println("onkeydown"); break;
-			case onkeypress: System.out.println("onkeypress"); break;
-			case onmouseup: System.out.println("onmouseup"); break;
-			case onmousedown: System.out.println("onmousedown"); break;
-			case onmousemove: System.out.println("onmousemove"); break;
-			case onmouseout: System.out.println("onmouseout"); break;
-			case onmouseover: System.out.println("onmouseover"); break;
-			case onreadystatechange: System.out.println("onreadystatechange"); break;
-			case onafterupdate: System.out.println("onafterupdate"); break;
-			case onrowexit: System.out.println("onrowexit"); break;
-			case onrowenter: System.out.println("onrowenter"); break;
-			case ondragstart: System.out.println("ondragstart"); break;
-			case onselectstart: System.out.println("onselectstart"); break;
-		}
-		return COM.S_OK;
-	}
-	private int QueryInterface(int riid, int ppvObject) {
-		if (riid == 0 || ppvObject == 0) return COM.E_INVALIDARG;
-		GUID guid = new GUID();
-		COM.MoveMemory(guid, riid, GUID.sizeof);
-	
-		if ( COM.IsEqualGUID(guid, COM.IIDIUnknown) || COM.IsEqualGUID(guid, COM.IIDIDispatch)) {
-			COM.MoveMemory(ppvObject, new int[] {iDispatch.getAddress()}, 4);
-			AddRef();
-			return COM.S_OK;
-		}
-		COM.MoveMemory(ppvObject, new int[] {0}, 4);
-		return COM.E_NOINTERFACE;
-	}
-	int Release() {
-		refCount--;
-		if (refCount == 0) {
-			disposeCOMInterfaces();
-		}
-		return refCount;
-	}
-}
-
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet124.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet124.java
deleted file mode 100644
index bd863ac..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet124.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * TableEditor example snippet: edit a cell in a table (in place, fancy)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.custom.*;
-
-public class Snippet124 {
-public static void main (String[] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new FillLayout ());
-	final Table table = new Table(shell, SWT.BORDER | SWT.MULTI);
-	table.setLinesVisible (true);
-	for (int i=0; i<3; i++) {
-		TableColumn column = new TableColumn (table, SWT.NONE);
-		column.setWidth(100);
-	}
-	for (int i=0; i<3; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		item.setText(new String [] {"" + i, "" + i , "" + i});
-	}
-	final TableEditor editor = new TableEditor (table);
-	editor.horizontalAlignment = SWT.LEFT;
-	editor.grabHorizontal = true;
-	table.addListener (SWT.MouseDown, new Listener () {
-		public void handleEvent (Event event) {
-			Rectangle clientArea = table.getClientArea ();
-			Point pt = new Point (event.x, event.y);
-			int index = table.getTopIndex ();
-			while (index < table.getItemCount ()) {
-				boolean visible = false;
-				final TableItem item = table.getItem (index);
-				for (int i=0; i<table.getColumnCount (); i++) {
-					Rectangle rect = item.getBounds (i);
-					if (rect.contains (pt)) {
-						final int column = i;
-						final Text text = new Text (table, SWT.NONE);
-						Listener textListener = new Listener () {
-							public void handleEvent (final Event e) {
-								switch (e.type) {
-									case SWT.FocusOut:
-										item.setText (column, text.getText ());
-										text.dispose ();
-										break;
-									case SWT.Traverse:
-										switch (e.detail) {
-											case SWT.TRAVERSE_RETURN:
-												item.setText (column, text.getText ());
-												//FALL THROUGH
-											case SWT.TRAVERSE_ESCAPE:
-												text.dispose ();
-												e.doit = false;
-										}
-										break;
-								}
-							}
-						};
-						text.addListener (SWT.FocusOut, textListener);
-						text.addListener (SWT.Traverse, textListener);
-						editor.setEditor (text, item, i);
-						text.setText (item.getText (i));
-						text.selectAll ();
-						text.setFocus ();
-						return;
-					}
-					if (!visible && rect.intersects (clientArea)) {
-						visible = true;
-					}
-				}
-				if (!visible) return;
-				index++;
-			}
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet125.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet125.java
deleted file mode 100644
index 55e035f..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet125.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tool Tips example snippet: create fake tool tips for items in a table
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet125 {
-
-public static void main (String[] args) {
-	final Display display = new Display ();
-	final Shell shell = new Shell (display);
-	shell.setLayout (new FillLayout ());
-	final Table table = new Table (shell, SWT.BORDER);
-	for (int i = 0; i < 20; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		item.setText ("item " + i);
-	}
-	// Disable native tooltip
-	table.setToolTipText ("");
-	
-	// Implement a "fake" tooltip
-	final Listener labelListener = new Listener () {
-		public void handleEvent (Event event) {
-			Label label = (Label)event.widget;
-			Shell shell = label.getShell ();
-			switch (event.type) {
-				case SWT.MouseDown:
-					Event e = new Event ();
-					e.item = (TableItem) label.getData ("_TABLEITEM");
-					// Assuming table is single select, set the selection as if
-					// the mouse down event went through to the table
-					table.setSelection (new TableItem [] {(TableItem) e.item});
-					table.notifyListeners (SWT.Selection, e);
-					// fall through
-				case SWT.MouseExit:
-					shell.dispose ();
-					break;
-			}
-		}
-	};
-	
-	Listener tableListener = new Listener () {
-		Shell tip = null;
-		Label label = null;
-		public void handleEvent (Event event) {
-			switch (event.type) {
-				case SWT.Dispose:
-				case SWT.KeyDown:
-				case SWT.MouseMove: {
-					if (tip == null) break;
-					tip.dispose ();
-					tip = null;
-					label = null;
-					break;
-				}
-				case SWT.MouseHover: {
-					TableItem item = table.getItem (new Point (event.x, event.y));
-					if (item != null) {
-						if (tip != null  && !tip.isDisposed ()) tip.dispose ();
-						tip = new Shell (shell, SWT.ON_TOP);
-						tip.setLayout (new FillLayout ());
-						label = new Label (tip, SWT.NONE);
-						label.setForeground (display.getSystemColor (SWT.COLOR_INFO_FOREGROUND));
-						label.setBackground (display.getSystemColor (SWT.COLOR_INFO_BACKGROUND));
-						label.setData ("_TABLEITEM", item);
-						label.setText ("tooltip "+item.getText ());
-						label.addListener (SWT.MouseExit, labelListener);
-						label.addListener (SWT.MouseDown, labelListener);
-						Point size = tip.computeSize (SWT.DEFAULT, SWT.DEFAULT);
-						Rectangle rect = item.getBounds (0);
-						Point pt = table.toDisplay (rect.x, rect.y);
-						tip.setBounds (pt.x, pt.y, size.x, size.y);
-						tip.setVisible (true);
-					}
-				}
-			}
-		}
-	};
-	table.addListener (SWT.Dispose, tableListener);
-	table.addListener (SWT.KeyDown, tableListener);
-	table.addListener (SWT.MouseMove, tableListener);
-	table.addListener (SWT.MouseHover, tableListener);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet126.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet126.java
deleted file mode 100644
index aa565ba..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet126.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Table example snippet: place arbitrary controls in a table
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.custom.*;
-
-public class Snippet126 {
-public static void main(String[] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new FillLayout ());
-	Table table = new Table (shell, SWT.BORDER | SWT.MULTI);
-	table.setLinesVisible (true);
-	for (int i=0; i<3; i++) {
-		TableColumn column = new TableColumn(table, SWT.NONE);
-		column.setWidth (100);
-	}
-	for (int i=0; i<12; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-	}
-	TableItem [] items = table.getItems ();
-	for (int i=0; i<items.length; i++) {
-		TableEditor editor = new TableEditor (table);
-		CCombo combo = new CCombo (table, SWT.NONE);
-		editor.grabHorizontal = true;
-		editor.setEditor(combo, items[i], 0);
-		editor = new TableEditor (table);
-		Text text = new Text (table, SWT.NONE);
-		editor.grabHorizontal = true;
-		editor.setEditor(text, items[i], 1);
-		editor = new TableEditor (table);
-		Button button = new Button (table, SWT.CHECK);
-		button.pack ();
-		editor.minimumWidth = button.getSize ().x;
-		editor.horizontalAlignment = SWT.LEFT;
-		editor.setEditor (button, items[i], 2);
-	}
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet127.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet127.java
deleted file mode 100644
index f54d712..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet127.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Control example snippet: prevent Tab from traversing out of a control
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet127 {
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Button button1 = new Button(shell, SWT.PUSH);
-	button1.setBounds(10,10,80,30);
-	button1.setText("no traverse");
-	button1.addTraverseListener(new TraverseListener () {
-		public void keyTraversed(TraverseEvent e) {
-			switch (e.detail) {
-				case SWT.TRAVERSE_TAB_NEXT:
-				case SWT.TRAVERSE_TAB_PREVIOUS: {
-					e.doit = false;
-				}
-			}
-		}
-	});
-	Button button2 = new Button (shell, SWT.PUSH);
-	button2.setBounds(100,10,80,30);
-	button2.setText("can traverse");
-	shell.pack ();
-	shell.open();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet128.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet128.java
deleted file mode 100644
index 26f2894..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet128.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Browser example snippet: bring up a browser
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.browser.*;
-
-public class Snippet128 {
-	public static void main(String [] args) {
-		Display display = new Display();
-		final Shell shell = new Shell(display);
-		GridLayout gridLayout = new GridLayout();
-		gridLayout.numColumns = 3;
-		shell.setLayout(gridLayout);
-		ToolBar toolbar = new ToolBar(shell, SWT.NONE);
-		ToolItem itemBack = new ToolItem(toolbar, SWT.PUSH);
-		itemBack.setText("Back");
-		ToolItem itemForward = new ToolItem(toolbar, SWT.PUSH);
-		itemForward.setText("Forward");
-		ToolItem itemStop = new ToolItem(toolbar, SWT.PUSH);
-		itemStop.setText("Stop");
-		ToolItem itemRefresh = new ToolItem(toolbar, SWT.PUSH);
-		itemRefresh.setText("Refresh");
-		ToolItem itemGo = new ToolItem(toolbar, SWT.PUSH);
-		itemGo.setText("Go");
-		
-		GridData data = new GridData();
-		data.horizontalSpan = 3;
-		toolbar.setLayoutData(data);
-
-		Label labelAddress = new Label(shell, SWT.NONE);
-		labelAddress.setText("Address");
-		
-		final Text location = new Text(shell, SWT.BORDER);
-		data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.horizontalSpan = 2;
-		data.grabExcessHorizontalSpace = true;
-		location.setLayoutData(data);
-
-		final Browser browser = new Browser(shell, SWT.NONE);
-		data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.verticalAlignment = GridData.FILL;
-		data.horizontalSpan = 3;
-		data.grabExcessHorizontalSpace = true;
-		data.grabExcessVerticalSpace = true;
-		browser.setLayoutData(data);
-
-		final Label status = new Label(shell, SWT.NONE);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 2;
-		status.setLayoutData(data);
-
-		final ProgressBar progressBar = new ProgressBar(shell, SWT.NONE);
-		data = new GridData();
-		data.horizontalAlignment = GridData.END;
-		progressBar.setLayoutData(data);
-
-		/* event handling */
-		Listener listener = new Listener() {
-			public void handleEvent(Event event) {
-				ToolItem item = (ToolItem)event.widget;
-				String string = item.getText();
-				if (string.equals("Back")) browser.back(); 
-				else if (string.equals("Forward")) browser.forward();
-				else if (string.equals("Stop")) browser.stop();
-				else if (string.equals("Refresh")) browser.refresh();
-				else if (string.equals("Go")) browser.setUrl(location.getText());
-		   }
-		};
-		browser.addProgressListener(new ProgressListener() {
-			public void changed(ProgressEvent event) {
-					if (event.total == 0) return;                            
-					int ratio = event.current * 100 / event.total;
-					progressBar.setSelection(ratio);
-			}
-			public void completed(ProgressEvent event) {
-				progressBar.setSelection(0);
-			}
-		});
-		browser.addStatusTextListener(new StatusTextListener() {
-			public void changed(StatusTextEvent event) {
-				status.setText(event.text);	
-			}
-		});
-		browser.addLocationListener(new LocationListener() {
-			public void changed(LocationEvent event) {
-				if (event.top) location.setText(event.location);
-			}
-			public void changing(LocationEvent event) {
-			}
-		});
-		itemBack.addListener(SWT.Selection, listener);
-		itemForward.addListener(SWT.Selection, listener);
-		itemStop.addListener(SWT.Selection, listener);
-		itemRefresh.addListener(SWT.Selection, listener);
-		itemGo.addListener(SWT.Selection, listener);
-		location.addListener(SWT.DefaultSelection, new Listener() {
-			public void handleEvent(Event e) {
-				browser.setUrl(location.getText());
-			}
-		});
-		
-		shell.open();
-		browser.setUrl("http://eclipse.org");
-		
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch())
-				display.sleep();
-		}
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet129.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet129.java
deleted file mode 100644
index c6f3b05..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet129.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Table example snippet: color cells and rows in table
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet129 {
- 
-public static void main(String[] args) {
-	Display display = new Display();
-	Color red = display.getSystemColor(SWT.COLOR_RED);
-	Color blue = display.getSystemColor(SWT.COLOR_BLUE);
-	Color white = display.getSystemColor(SWT.COLOR_WHITE);
-	Color gray = display.getSystemColor(SWT.COLOR_GRAY);
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	Table table = new Table(shell, SWT.BORDER);
-	table.setBackground(gray);
-	TableColumn column1 = new TableColumn(table, SWT.NONE);
-	TableColumn column2 = new TableColumn(table, SWT.NONE);
-	TableColumn column3 = new TableColumn(table, SWT.NONE);
-	TableItem item = new TableItem(table, SWT.NONE);
-	item.setText(new String[] {"entire","row","red foreground"});
-	item.setForeground(red);
-	item = new TableItem(table, SWT.NONE);
-	item.setText(new String[] {"entire","row","red background"});
-	item.setBackground(red);
-	item = new TableItem(table, SWT.NONE);
-	item.setText(new String[] {"entire","row","white fore/red back"});
-	item.setForeground(white);
-	item.setBackground(red);
-	item = new TableItem(table, SWT.NONE);
-	item.setText(new String[] {"normal","blue foreground","red foreground"});
-	item.setForeground(1, blue);
-	item.setForeground(2, red);
-	item = new TableItem(table, SWT.NONE);
-	item.setText(new String[] {"normal","blue background","red background"});
-	item.setBackground(1, blue);
-	item.setBackground(2, red);
-	item = new TableItem(table, SWT.NONE);
-	item.setText(new String[] {"white fore/blue back","normal","white fore/red back"});
-	item.setForeground(0, white);
-	item.setBackground(0, blue);
-	item.setForeground(2, white);
-	item.setBackground(2, red);
-	
-	column1.pack();
-	column2.pack();
-	column3.pack();
-	
-	shell.pack();
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet13.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet13.java
deleted file mode 100644
index 4a87ca1..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet13.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * GC example snippet: draw a thick line
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet13 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.open ();
-	GC gc = new GC (shell);
-	gc.setLineWidth (4);
-	gc.drawRectangle (20, 20, 100, 100);
-	gc.dispose ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet130.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet130.java
deleted file mode 100644
index d7a7060..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet130.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * BusyIndicator example snippet: display busy cursor during long running task
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.custom.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet130 {
-
-	public static void main(String[] args) {
-		final Display display = new Display();
-		final Shell shell = new Shell(display);
-		shell.setLayout(new GridLayout());
-		final Text text = new Text(shell, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL);
-		text.setLayoutData(new GridData(GridData.FILL_BOTH));
-		final int[] nextId = new int[1];
-		Button b = new Button(shell, SWT.PUSH);
-		b.setText("invoke long running job");
-		b.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				Runnable longJob = new Runnable() {
-					boolean done = false;
-					int id;
-					public void run() {
-						Thread thread = new Thread(new Runnable() {
-							public void run() {
-								id = nextId[0]++;
-								display.syncExec(new Runnable() {
-									public void run() {
-										if (text.isDisposed()) return;
-										text.append("\nStart long running task "+id);
-									}
-								});
-								for (int i = 0; i < 100000; i++) {
-									if (display.isDisposed()) return;
-									System.out.println("do task that takes a long time in a separate thread "+id);
-								}
-								if (display.isDisposed()) return;
-								display.syncExec(new Runnable() {
-									public void run() {
-										if (text.isDisposed()) return;
-										text.append("\nCompleted long running task "+id);
-									}
-								});
-								done = true;
-								display.wake();
-							}
-						});
-						thread.start();
-						while (!done && !shell.isDisposed()) {
-							if (!display.readAndDispatch())
-								display.sleep();
-						}
-					}
-				};
-				BusyIndicator.showWhile(display, longJob);
-			}
-		});
-		shell.setSize(250, 150);
-		shell.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch())
-				display.sleep();
-		}
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet131.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet131.java
deleted file mode 100644
index 0fc210e..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet131.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Menu example snippet: show a popup menu (wait for it to close)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet131 {
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Shell shell = new Shell (display);
-	shell.addListener (SWT.MenuDetect, new Listener () {
-		public void handleEvent (Event event) {
-			Menu menu = new Menu (shell, SWT.POP_UP);
-			MenuItem item = new MenuItem (menu, SWT.PUSH);
-			item.setText ("Menu Item");
-			item.addListener (SWT.Selection, new Listener () {
-				public void handleEvent (Event e) {
-					System.out.println ("Item Selected");
-				}
-			});
-			menu.setLocation (event.x, event.y);
-			menu.setVisible (true);
-			while (!menu.isDisposed () && menu.isVisible ()) {
-				if (!display.readAndDispatch ()) display.sleep ();
-			}
-			menu.dispose ();
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet132.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet132.java
deleted file mode 100644
index 92f871e..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet132.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-  
-/*
- * Printing example snippet: print "Hello World!" in black, outlined in red, to default printer
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.printing.*;
-
-public class Snippet132 {
-
-public static void main (String [] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.open ();
-	PrinterData data = Printer.getDefaultPrinterData();
-	if (data == null) {
-		System.out.println("Warning: No default printer.");
-		return;
-	}
-	Printer printer = new Printer(data);
-	if (printer.startJob("SWT Printing Snippet")) {
-		Color black = printer.getSystemColor(SWT.COLOR_BLACK);
-		Color white = printer.getSystemColor(SWT.COLOR_WHITE);
-		Color red = printer.getSystemColor(SWT.COLOR_RED);
-		Rectangle trim = printer.computeTrim(0, 0, 0, 0);
-		Point dpi = printer.getDPI();
-		int leftMargin = dpi.x + trim.x; // one inch from left side of paper
-		int topMargin = dpi.y / 2 + trim.y; // one-half inch from top edge of paper
-		GC gc = new GC(printer);
-		Font font = gc.getFont(); // example just uses printer's default font
-		if (printer.startPage()) {
-			gc.setBackground(white);
-			gc.setForeground(black);
-			String testString = "Hello World!";
-			Point extent = gc.stringExtent(testString);
-			gc.drawString(testString, leftMargin, topMargin + font.getFontData()[0].getHeight());
-			gc.setForeground(red);
-			gc.drawRectangle(leftMargin, topMargin, extent.x, extent.y);
-			printer.endPage();
-		}
-		gc.dispose();
-		printer.endJob();
-		}
-	printer.dispose();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet133.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet133.java
deleted file mode 100644
index c1b5bf8..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet133.java
+++ /dev/null
@@ -1,323 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-  
-/*
- * Printing example snippet: print text to printer, with word wrap and pagination
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import java.io.*;
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.printing.*;
-
-public class Snippet133 {
-	Display display;
-	Shell shell;
-	Text text;
-	Font font;
-	Color foregroundColor, backgroundColor;
-	
-	Printer printer;
-	GC gc;
-	Font printerFont;
-	Color printerForegroundColor, printerBackgroundColor;
-
-	int lineHeight = 0;
-	int tabWidth = 0;
-	int leftMargin, rightMargin, topMargin, bottomMargin;
-	int x, y;
-	int index, end;
-	String textToPrint;
-	String tabs;
-	StringBuffer wordBuffer;
-
-	public static void main(String[] args) {
-		new Snippet133().open();
-	}
-	
-	void open() {
-		display = new Display();
-		font = new Font(display, "Courier", 10, SWT.NORMAL);
-		foregroundColor = display.getSystemColor(SWT.COLOR_BLACK);
-		backgroundColor = display.getSystemColor(SWT.COLOR_WHITE);
-		shell = new Shell(display);
-		shell.setLayout(new FillLayout());
-		shell.setText("Print Text");
-		shell.setMaximized(true);
-		text = new Text(shell, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
-		text.setFont(font);
-		text.setForeground(foregroundColor);
-		text.setBackground(backgroundColor);
-		
-		Menu menuBar = new Menu(shell, SWT.BAR);
-		shell.setMenuBar(menuBar);
-		MenuItem item = new MenuItem(menuBar, SWT.CASCADE);
-		item.setText("&File");
-		Menu fileMenu = new Menu(shell, SWT.DROP_DOWN);
-		item.setMenu(fileMenu);
-		item = new MenuItem(fileMenu, SWT.PUSH);
-		item.setText("&Open...");
-		item.setAccelerator(SWT.CTRL + 'O');
-		item.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				menuOpen();
-			}
-		});
-		item = new MenuItem(fileMenu, SWT.PUSH);
-		item.setText("Font...");
-		item.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				menuFont();
-			}
-		});
-		item = new MenuItem(fileMenu, SWT.PUSH);
-		item.setText("Foreground Color...");
-		item.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				menuForegroundColor();
-			}
-		});
-		item = new MenuItem(fileMenu, SWT.PUSH);
-		item.setText("Background Color...");
-		item.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				menuBackgroundColor();
-			}
-		});
-		item = new MenuItem(fileMenu, SWT.PUSH);
-		item.setText("&Print...");
-		item.setAccelerator(SWT.CTRL + 'P');
-		item.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				menuPrint();
-			}
-		});
-		new MenuItem(fileMenu, SWT.SEPARATOR);
-		item = new MenuItem(fileMenu, SWT.PUSH);
-		item.setText("E&xit");
-		item.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				System.exit(0);
-			}
-		});
-		
-		shell.pack();
-		shell.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch()) display.sleep();
-		}
-		if (font != null) font.dispose();
-		if (foregroundColor != null) foregroundColor.dispose();
-		if (backgroundColor != null) backgroundColor.dispose();
-	}
-		
-	void menuOpen() {
-		final String textString;
-		FileDialog dialog = new FileDialog(shell, SWT.OPEN);
-		dialog.setFilterExtensions(new String[] {"*.java", "*.*"});
-		String name = dialog.open();
-		if ((name == null) || (name.length() == 0)) return;
-	
-		try {
-			File file = new File(name);
-			FileInputStream stream= new FileInputStream(file.getPath());
-			try {
-				Reader in = new BufferedReader(new InputStreamReader(stream));
-				char[] readBuffer= new char[2048];
-				StringBuffer buffer= new StringBuffer((int) file.length());
-				int n;
-				while ((n = in.read(readBuffer)) > 0) {
-					buffer.append(readBuffer, 0, n);
-				}
-				textString = buffer.toString();
-				stream.close();
-			} catch (IOException e) {
-				MessageBox box = new MessageBox(shell, SWT.ICON_ERROR);
-				box.setMessage("Error reading file:\n" + name);
-				box.open();
-				return;
-			}
-		} catch (FileNotFoundException e) {
-			MessageBox box = new MessageBox(shell, SWT.ICON_ERROR);
-			box.setMessage("File not found:\n" + name);
-			box.open();
-			return;
-		}	
-		text.setText(textString);
-	}
-
-	void menuFont() {
-		FontDialog fontDialog = new FontDialog(shell);
-		fontDialog.setFontList(font.getFontData());
-		FontData fontData = fontDialog.open();
-		if (fontData != null) {
-			if (font != null) font.dispose();
-			font = new Font(display, fontData);
-			text.setFont(font);
-		}
-	}
-
-	void menuForegroundColor() {
-		ColorDialog colorDialog = new ColorDialog(shell);
-		colorDialog.setRGB(foregroundColor.getRGB());
-		RGB rgb = colorDialog.open();
-		if (rgb != null) {
-			if (foregroundColor != null) foregroundColor.dispose();
-			foregroundColor = new Color(display, rgb);
-			text.setForeground(foregroundColor);
-		}
-	}
-
-	void menuBackgroundColor() {
-		ColorDialog colorDialog = new ColorDialog(shell);
-		colorDialog.setRGB(backgroundColor.getRGB());
-		RGB rgb = colorDialog.open();
-		if (rgb != null) {
-			if (backgroundColor != null) backgroundColor.dispose();
-			backgroundColor = new Color(display, rgb);
-			text.setBackground(backgroundColor);
-		}
-	}
-
-	void menuPrint() {
-		PrintDialog dialog = new PrintDialog(shell, SWT.NULL);
-		PrinterData data = dialog.open();
-		if (data == null) return;
-		if (data.printToFile) {
-			data.fileName = "print.out"; // you probably want to ask the user for a filename
-		}
-		
-		/* Get the text to print from the Text widget (you could get it from anywhere, i.e. your java model) */
-		textToPrint = text.getText();
-
-		/* Do the printing in a background thread so that spooling does not freeze the UI. */
-		printer = new Printer(data);
-		Thread printingThread = new Thread("Printing") {
-			public void run() {
-				print(printer);
-				printer.dispose();
-			}
-		};
-		printingThread.start();
-	}
-	
-	void print(Printer printer) {
-		if (printer.startJob("Text")) {   // the string is the job name - shows up in the printer's job list
-			Rectangle clientArea = printer.getClientArea();
-			Rectangle trim = printer.computeTrim(0, 0, 0, 0);
-			Point dpi = printer.getDPI();
-			leftMargin = dpi.x + trim.x; // one inch from left side of paper
-			rightMargin = clientArea.width - dpi.x + trim.x + trim.width; // one inch from right side of paper
-			topMargin = dpi.y + trim.y; // one inch from top edge of paper
-			bottomMargin = clientArea.height - dpi.y + trim.y + trim.height; // one inch from bottom edge of paper
-			
-			/* Create a buffer for computing tab width. */
-			int tabSize = 4; // is tab width a user setting in your UI?
-			StringBuffer tabBuffer = new StringBuffer(tabSize);
-			for (int i = 0; i < tabSize; i++) tabBuffer.append(' ');
-			tabs = tabBuffer.toString();
-
-			/* Create printer GC, and create and set the printer font & foreground color. */
-			gc = new GC(printer);
-			
-			FontData fontData = font.getFontData()[0];
-			printerFont = new Font(printer, fontData.getName(), fontData.getHeight(), fontData.getStyle());
-			gc.setFont(printerFont);
-			tabWidth = gc.stringExtent(tabs).x;
-			lineHeight = gc.getFontMetrics().getHeight();
-			
-			RGB rgb = foregroundColor.getRGB();
-			printerForegroundColor = new Color(printer, rgb);
-			gc.setForeground(printerForegroundColor);
-		
-			rgb = backgroundColor.getRGB();
-			printerBackgroundColor = new Color(printer, rgb);
-			gc.setBackground(printerBackgroundColor);
-		
-			/* Print text to current gc using word wrap */
-			printText();
-			printer.endJob();
-
-			/* Cleanup graphics resources used in printing */
-			printerFont.dispose();
-			printerForegroundColor.dispose();
-			printerBackgroundColor.dispose();
-			gc.dispose();
-		}
-	}
-	
-	void printText() {
-		printer.startPage();
-		wordBuffer = new StringBuffer();
-		x = leftMargin;
-		y = topMargin;
-		index = 0;
-		end = textToPrint.length();
-		while (index < end) {
-			char c = textToPrint.charAt(index);
-			index++;
-			if (c != 0) {
-				if (c == 0x0a || c == 0x0d) {
-					if (c == 0x0d && index < end && textToPrint.charAt(index) == 0x0a) {
-						index++; // if this is cr-lf, skip the lf
-					}
-					printWordBuffer();
-					newline();
-				} else {
-					if (c != '\t') {
-						wordBuffer.append(c);
-					}
-					if (Character.isWhitespace(c)) {
-						printWordBuffer();
-						if (c == '\t') {
-							x += tabWidth;
-						}
-					}
-				}
-			}
-		}
-		if (y + lineHeight <= bottomMargin) {
-			printer.endPage();
-		}
-	}
-
-	void printWordBuffer() {
-		if (wordBuffer.length() > 0) {
-			String word = wordBuffer.toString();
-			int wordWidth = gc.stringExtent(word).x;
-			if (x + wordWidth > rightMargin) {
-				/* word doesn't fit on current line, so wrap */
-				newline();
-			}
-			gc.drawString(word, x, y, false);
-			x += wordWidth;
-			wordBuffer = new StringBuffer();
-		}
-	}
-
-	void newline() {
-		x = leftMargin;
-		y += lineHeight;
-		if (y + lineHeight > bottomMargin) {
-			printer.endPage();
-			if (index + 1 < end) {
-				y = topMargin;
-				printer.startPage();
-			}
-		}
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet134.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet134.java
deleted file mode 100644
index cfeeade..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet134.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Shell example snippet: create a non-rectangular window
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet134 {
-
-static int[] circle(int r, int offsetX, int offsetY) {
-	int[] polygon = new int[8 * r + 4];
-	//x^2 + y^2 = r^2
-	for (int i = 0; i < 2 * r + 1; i++) {
-		int x = i - r;
-		int y = (int)Math.sqrt(r*r - x*x);
-		polygon[2*i] = offsetX + x;
-		polygon[2*i+1] = offsetY + y;
-		polygon[8*r - 2*i - 2] = offsetX + x;
-		polygon[8*r - 2*i - 1] = offsetY - y;
-	}
-	return polygon;
-}
-
-public static void main(String[] args) {
-	final Display display = new Display();
-	//Shell must be created with style SWT.NO_TRIM
-	final Shell shell = new Shell(display, SWT.NO_TRIM | SWT.ON_TOP);
-	shell.setBackground(display.getSystemColor(SWT.COLOR_RED));
-	//define a region that looks like a key hole
-	Region region = new Region();
-	region.add(circle(67, 67, 67));
-	region.subtract(circle(20, 67, 50));
-	region.subtract(new int[]{67, 50, 55, 105, 79, 105});
-	//define the shape of the shell using setRegion
-	shell.setRegion(region);
-	Rectangle size = region.getBounds();
-	shell.setSize(size.width, size.height);
-	//add ability to move shell around
-	Listener l = new Listener() {
-		Point origin;
-		public void handleEvent(Event e) {
-			switch (e.type) {
-				case SWT.MouseDown:
-					origin = new Point(e.x, e.y);
-					break;
-				case SWT.MouseUp:
-					origin = null;
-					break;
-				case SWT.MouseMove:
-					if (origin != null) {
-						Point p = display.map(shell, null, e.x, e.y);
-						shell.setLocation(p.x - origin.x, p.y - origin.y);
-					}
-					break;
-			}
-		}
-	};
-	shell.addListener(SWT.MouseDown, l);
-	shell.addListener(SWT.MouseUp, l);
-	shell.addListener(SWT.MouseMove, l);
-	//add ability to close shell
-	Button b = new Button(shell, SWT.PUSH);
-	b.setBackground(shell.getBackground());
-	b.setText("close");
-	b.pack();
-	b.setLocation(10, 68);
-	b.addListener(SWT.Selection, new Listener() {
-		public void handleEvent(Event e) {
-			shell.close();
-		}
-	});
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	region.dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet135.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet135.java
deleted file mode 100644
index 7f8e7a5..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet135.java
+++ /dev/null
@@ -1,274 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * example snippet: embed Swing/AWT in SWT
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import java.awt.EventQueue;
-import java.io.*;
-import java.util.*;
-import javax.swing.*;
-import javax.swing.table.*;
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.awt.SWT_AWT;
-
-public class Snippet135 {
-
-	static class FileTableModel extends AbstractTableModel {		
-		File[] files;        
-		String[] columnsName = {"Name", "Size", "Date Modified"};
-		
-		public FileTableModel (File[] files) {
-			this.files = files;
-		}
-		public int getColumnCount () {
-			return columnsName.length;
-		}
-		public Class getColumnClass (int col) {
-			if (col == 1) return Long.class;
-			if (col == 2) return Date.class;
-			return String.class;
-		}
-		public int getRowCount () {
-			return files == null ? 0 : files.length;
-		}
-		public Object getValueAt (int row, int col) {
-			if (col == 0) return files[row].getName();
-			if (col == 1) return new Long(files[row].length());
-			if (col == 2) return new Date(files[row].lastModified());
-			return "";
-		}
-		public String getColumnName (int col) {
-			return columnsName[col];
-		}
-	}
-
-	public static void main(String[] args) {
-		final Display display = new Display();
-		final Shell shell = new Shell(display);
-		shell.setText("SWT and Swing/AWT Example");
-
-		Listener exitListener = new Listener() {
-			public void handleEvent(Event e) {
-				MessageBox dialog = new MessageBox(shell, SWT.OK | SWT.CANCEL | SWT.ICON_QUESTION);
-				dialog.setText("Question");
-				dialog.setMessage("Exit?");
-				if (e.type == SWT.Close) e.doit = false;
-				if (dialog.open() != SWT.OK) return;
-				shell.dispose();
-			}
-		};	
-		Listener aboutListener = new Listener() {
-			public void handleEvent(Event e) {
-				final Shell s = new Shell(shell, SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL);
-				s.setText("About");
-				GridLayout layout = new GridLayout(1, false);
-				layout.verticalSpacing = 20;
-				layout.marginHeight = layout.marginWidth = 10;
-				s.setLayout(layout);
-				Label label = new Label(s, SWT.NONE);
-				label.setText("SWT and AWT Example.");
-				Button button = new Button(s, SWT.PUSH);
-				button.setText("OK");
-				GridData data = new GridData();
-				data.horizontalAlignment = GridData.CENTER;
-				button.setLayoutData(data);
-				button.addListener(SWT.Selection, new Listener() {
-					public void handleEvent(Event e) {
-						s.dispose();
-					}
-				});
-				s.pack();
-				Rectangle parentBounds = shell.getBounds();
-				Rectangle bounds = s.getBounds();
-				int x = parentBounds.x + (parentBounds.width - bounds.width) / 2;
-				int y = parentBounds.y + (parentBounds.height - bounds.height) / 2;
-				s.setLocation(x, y);
-				s.open();
-				while (!s.isDisposed()) {
-					if (!display.readAndDispatch()) display.sleep();
-				}
-			}
-		};
-		shell.addListener(SWT.Close, exitListener);
-		Menu mb = new Menu(shell, SWT.BAR);
-		MenuItem fileItem = new MenuItem(mb, SWT.CASCADE);
-		fileItem.setText("&File");
-		Menu fileMenu = new Menu(shell, SWT.DROP_DOWN);
-		fileItem.setMenu(fileMenu);
-		MenuItem exitItem = new MenuItem(fileMenu, SWT.PUSH);
-		exitItem.setText("&Exit\tCtrl+X");
-		exitItem.setAccelerator(SWT.CONTROL + 'X');
-		exitItem.addListener(SWT.Selection, exitListener);
-		MenuItem aboutItem = new MenuItem(fileMenu, SWT.PUSH);
-		aboutItem.setText("&About\tCtrl+A");
-		aboutItem.setAccelerator(SWT.CONTROL + 'A');
-		aboutItem.addListener(SWT.Selection, aboutListener);
-		shell.setMenuBar(mb);
-
-		RGB color = shell.getBackground().getRGB();
-		Label separator1 = new Label(shell, SWT.SEPARATOR | SWT.HORIZONTAL);
-		Label locationLb = new Label(shell, SWT.NONE);
-		locationLb.setText("Location:");
-		Composite locationComp = new Composite(shell, SWT.EMBEDDED);
-		ToolBar toolBar = new ToolBar(shell, SWT.FLAT);
-		ToolItem exitToolItem = new ToolItem(toolBar, SWT.PUSH);
-		exitToolItem.setText("&Exit");
-		exitToolItem.addListener(SWT.Selection, exitListener);
-		ToolItem aboutToolItem = new ToolItem(toolBar, SWT.PUSH);
-		aboutToolItem.setText("&About");
-		aboutToolItem.addListener(SWT.Selection, aboutListener);
-		Label separator2 = new Label(shell, SWT.SEPARATOR | SWT.HORIZONTAL);
-		final Composite comp = new Composite(shell, SWT.NONE);
-		final Tree fileTree = new Tree(comp, SWT.SINGLE | SWT.BORDER);
-		Sash sash = new Sash(comp, SWT.VERTICAL);
-		Composite tableComp = new Composite(comp, SWT.EMBEDDED);
-		Label separator3 = new Label(shell, SWT.SEPARATOR | SWT.HORIZONTAL);
-		Composite statusComp = new Composite(shell, SWT.EMBEDDED);
-
-		java.awt.Frame locationFrame = SWT_AWT.new_Frame(locationComp);
-		final java.awt.TextField locationText = new java.awt.TextField();
-		locationFrame.add(locationText);
-
-		java.awt.Frame fileTableFrame = SWT_AWT.new_Frame(tableComp);
-		java.awt.Panel panel = new java.awt.Panel(new java.awt.BorderLayout());
-		fileTableFrame.add(panel);
-		final JTable fileTable = new JTable(new FileTableModel(null));
-		fileTable.setDoubleBuffered(true);
-		fileTable.setShowGrid(false);
-		fileTable.createDefaultColumnsFromModel();
-		JScrollPane scrollPane = new JScrollPane(fileTable);
-		panel.add(scrollPane);
-
-		java.awt.Frame statusFrame = SWT_AWT.new_Frame(statusComp);
-		statusFrame.setBackground(new java.awt.Color(color.red, color.green, color.blue));
-		final java.awt.Label statusLabel = new java.awt.Label();
-		statusFrame.add(statusLabel);
-		statusLabel.setText("Select a file");
-
-		sash.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				if (e.detail == SWT.DRAG) return;
-				GridData data = (GridData)fileTree.getLayoutData();
-				Rectangle trim = fileTree.computeTrim(0, 0, 0, 0);
-				data.widthHint = e.x - trim.width;
-				comp.layout();
-			}
-		});
-
-		File[] roots = File.listRoots();
-		for (int i = 0; i < roots.length; i++) {
-			File file = roots[i];
-			TreeItem treeItem = new TreeItem(fileTree, SWT.NONE);
-			treeItem.setText(file.getAbsolutePath());
-			treeItem.setData(file);
-			TreeItem dumyItem = new TreeItem(treeItem, SWT.NONE);
-		}
-		fileTree.addListener(SWT.Expand, new Listener() {
-			public void handleEvent(Event e) {
-				TreeItem item = (TreeItem)e.item;
-				if (item == null) return;
-				if (item.getItemCount() == 1) {
-					TreeItem firstItem = item.getItems()[0];
-					if (firstItem.getData() != null) return;
-					firstItem.dispose();
-				} else {
-					return;
-				}
-				File root = (File)item.getData();
-				File[] files = root.listFiles();
-				if (files == null) return;
-				for (int i = 0; i < files.length; i++) {
-					File file = files[i];
-					if (file.isDirectory()) {
-						TreeItem treeItem = new TreeItem(item, SWT.NONE);
-						treeItem.setText(file.getName());
-						treeItem.setData(file);
-						TreeItem dumyItem = new TreeItem(treeItem, SWT.NONE);
-					}
-				}
-			}
-		});
-		fileTree.addListener(SWT.Selection, new Listener() {
-			public void handleEvent(Event e) {
-				TreeItem item = (TreeItem)e.item;
-				if (item == null) return;
-				final File root = (File)item.getData();
-				EventQueue.invokeLater(new Runnable() {
-					public void run() {
-						statusLabel.setText(root.getAbsolutePath());
-						locationText.setText(root.getAbsolutePath());
-						fileTable.setModel(new FileTableModel(root.listFiles()));
-					}
-				});
-			}
-		});
-		
-		GridLayout layout = new GridLayout(4, false);
-		layout.marginWidth = layout.marginHeight = 0;
-		layout.horizontalSpacing = layout.verticalSpacing = 1;
-		shell.setLayout(layout);
-		GridData data;		
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 4;
-		separator1.setLayoutData(data);
-		data = new GridData();
-		data.horizontalSpan = 1;
-		data.horizontalIndent = 10;
-		locationLb.setLayoutData(data);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 2;
-		data.heightHint = locationText.getPreferredSize().height;
-		locationComp.setLayoutData(data);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 1;
-		toolBar.setLayoutData(data);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 4;
-		separator2.setLayoutData(data);
-		data = new GridData(GridData.FILL_BOTH);
-		data.horizontalSpan = 4;
-		comp.setLayoutData(data);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 4;
-		separator3.setLayoutData(data);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 4;
-		data.heightHint = statusLabel.getPreferredSize().height;
-		statusComp.setLayoutData(data);
-		
-		layout = new GridLayout(3, false);
-		layout.marginWidth = layout.marginHeight = 0;
-		layout.horizontalSpacing = layout.verticalSpacing = 1;
-		comp.setLayout(layout);			
-		data = new GridData(GridData.FILL_VERTICAL);
-		data.widthHint = 200;
-		fileTree.setLayoutData(data);		
-		data = new GridData(GridData.FILL_VERTICAL);
-		sash.setLayoutData(data);		
-		data = new GridData(GridData.FILL_BOTH);
-		tableComp.setLayoutData(data);
-
-		shell.open();
-		while(!shell.isDisposed()) {
-			if (!display.readAndDispatch()) display.sleep();
-		}
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet136.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet136.java
deleted file mode 100644
index 99b6510..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet136.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Browser example snippet: render HTML from memory
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.browser.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet136 {
-	public static void main(String [] args) {
-		String html = "<HTML><HEAD><TITLE>HTML Test</TITLE></HEAD><BODY>";
-		for (int i = 0; i < 100; i++) html += "<P>This is line "+i+"</P>";
-		html += "</BODY></HTML>";
-
-		Display display = new Display();
-		Shell shell = new Shell(display);
-		shell.setLayout(new FillLayout());
-		Browser browser = new Browser(shell, SWT.NONE);
-		browser.setText(html);
-		shell.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch())
-				display.sleep();
-		}
-		display.dispose();
-	}
-}
-
-
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet137.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet137.java
deleted file mode 100644
index 06b54fee..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet137.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Browser example snippet: render HTML that includes relative links from memory
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.browser.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet137 {
-
-public static void main(String [] args) {
-	/* Relative links: use the HTML base tag */
-	String html = "<html><head>"+
-		"<base href=\"http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/\" >"+
-		"<title>HTML Test</title></head>"+
-		"<body><a href=\"dev.html\">local link</a></body></html>";
-
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	Browser browser = new Browser(shell, SWT.NONE);
-	browser.setText(html);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet138.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet138.java
deleted file mode 100644
index 841dc59..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet138.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * example snippet: set icons with different resolutions
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet138 {
-	public static void main(String[] args) {
-		Display display = new Display();
-		
-		Image small = new Image(display, 16, 16);
-		GC gc = new GC(small);
-		gc.setBackground(display.getSystemColor(SWT.COLOR_RED));
-		gc.fillArc(0, 0, 16, 16, 45, 270);
-		gc.dispose();
-		
-		Image large = new Image(display, 32, 32);
-		gc = new GC(large);
-		gc.setBackground(display.getSystemColor(SWT.COLOR_RED));
-		gc.fillArc(0, 0, 32, 32, 45, 270);
-		gc.dispose();
-		
-		/* Provide different resolutions for icons to get
-		 * high quality rendering wherever the OS needs 
-		 * large icons. For example, the ALT+TAB window 
-		 * on certain systems uses a larger icon.
-		 */
-		Shell shell = new Shell(display);
-		shell.setText("Small and Large icons");
-		shell.setImages(new Image[] {small, large});
-
-		/* No large icon: the OS will scale up the
-		 * small icon when it needs a large one.
-		 */
-		Shell shell2 = new Shell(display);
-		shell2.setText("Small icon");
-		shell2.setImage(small);
-		
-		shell.open();
-		shell2.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch())
-				display.sleep();
-		}
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet139.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet139.java
deleted file mode 100644
index 028e580..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet139.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * This snippet was adapted from org.eclipse.draw2d.ImageUtilities in 
- * http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.draw2d/?cvsroot=Tools_Project
- * by Pratik Shah.
- *
- * example snippet: rotate and flip an image
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet139 {	
-
-static ImageData rotate(ImageData srcData, int direction) {
-	int bytesPerPixel = srcData.bytesPerLine / srcData.width;
-	int destBytesPerLine = (direction == SWT.DOWN)? srcData.width * bytesPerPixel : srcData.height * bytesPerPixel;
-	byte[] newData = new byte[srcData.data.length];
-	int width = 0, height = 0;
-	for (int srcY = 0; srcY < srcData.height; srcY++) {
-		for (int srcX = 0; srcX < srcData.width; srcX++) {
-			int destX = 0, destY = 0, destIndex = 0, srcIndex = 0;
-			switch (direction){
-				case SWT.LEFT: // left 90 degrees
-					destX = srcY;
-					destY = srcData.width - srcX - 1;
-					width = srcData.height;
-					height = srcData.width; 
-					break;
-				case SWT.RIGHT: // right 90 degrees
-					destX = srcData.height - srcY - 1;
-					destY = srcX;
-					width = srcData.height;
-					height = srcData.width; 
-					break;
-				case SWT.DOWN: // 180 degrees
-					destX = srcData.width - srcX - 1;
-					destY = srcData.height - srcY - 1;
-					width = srcData.width;
-					height = srcData.height; 
-					break;
-			}
-			destIndex = (destY * destBytesPerLine) + (destX * bytesPerPixel);
-			srcIndex = (srcY * srcData.bytesPerLine) + (srcX * bytesPerPixel);
-			System.arraycopy(srcData.data, srcIndex, newData, destIndex, bytesPerPixel);
-		}
-	}
-	// destBytesPerLine is used as scanlinePad to ensure that no padding is required
-	return new ImageData(width, height, srcData.depth, srcData.palette, destBytesPerLine, newData);
-}
-static ImageData flip(ImageData srcData, boolean vertical) {
-	int bytesPerPixel = srcData.bytesPerLine / srcData.width;
-	int destBytesPerLine = srcData.width * bytesPerPixel;
-	byte[] newData = new byte[srcData.data.length];
-	for (int srcY = 0; srcY < srcData.height; srcY++) {
-		for (int srcX = 0; srcX < srcData.width; srcX++) {
-			int destX = 0, destY = 0, destIndex = 0, srcIndex = 0;
-			if (vertical){
-				destX = srcX;
-				destY = srcData.height - srcY - 1;
-			} else {
-				destX = srcData.width - srcX - 1;
-				destY = srcY; 
-			}
-			destIndex = (destY * destBytesPerLine) + (destX * bytesPerPixel);
-			srcIndex = (srcY * srcData.bytesPerLine) + (srcX * bytesPerPixel);
-			System.arraycopy(srcData.data, srcIndex, newData, destIndex, bytesPerPixel);
-		}
-	}
-	// destBytesPerLine is used as scanlinePad to ensure that no padding is required
-	return new ImageData(srcData.width, srcData.height, srcData.depth, srcData.palette, destBytesPerLine, newData);
-}
-
-public static void main(String[] args) {
-	Display display = new Display();
-	
-	// create an image with the word "hello" on it
-	final Image image0 = new Image(display, 50, 30);
-	GC gc = new GC(image0);
-	gc.setBackground(display.getSystemColor(SWT.COLOR_RED));
-	gc.fillRectangle(image0.getBounds());
-	gc.drawString("hello",	5, 5, true);
-	gc.dispose();
-	
-	ImageData data = image0.getImageData();
-	// rotate and flip this image
-	final Image image1 = new Image(display, rotate(data, SWT.LEFT));
-	final Image image2 = new Image(display, rotate(data, SWT.RIGHT));
-	final Image image3 = new Image(display, rotate(data, SWT.DOWN));
-	final Image image4 = new Image(display, flip(data, true));
-	final Image image5 = new Image(display, flip(data, false));
-
-	Shell shell = new Shell(display);
-	// draw the results on the shell
-	shell.addPaintListener(new PaintListener(){
-		public void paintControl(PaintEvent e) {
-			e.gc.drawText("Original Image:", 10, 10, true);
-			e.gc.drawImage(image0, 10, 40);
-			e.gc.drawText("Left, Right, 180:", 10, 80, true);
-			e.gc.drawImage(image1, 10, 110);
-			e.gc.drawImage(image2, 50, 110);
-			e.gc.drawImage(image3, 90, 110);
-			e.gc.drawText("Flipped Vertical, Horizontal:", 10, 170, true);
-			e.gc.drawImage(image4, 10, 200);
-			e.gc.drawImage(image5, 70, 200);
-		}
-	});
-	shell.setSize(300, 300);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	image0.dispose();
-	image1.dispose();
-	image2.dispose();
-	image3.dispose();
-	image4.dispose();
-	image5.dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet14.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet14.java
deleted file mode 100644
index ff0109b..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet14.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Control example snippet: detect mouse enter, exit and hover events
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet14 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setSize (100, 100);
-	shell.addListener (SWT.MouseEnter, new Listener () {
-		public void handleEvent (Event e) {
-			System.out.println ("ENTER");
-		}
-	});
-	shell.addListener (SWT.MouseExit, new Listener () {
-		public void handleEvent (Event e) {
-			System.out.println ("EXIT");
-		}
-	});
-	shell.addListener (SWT.MouseHover, new Listener () {
-		public void handleEvent (Event e) {
-			System.out.println ("HOVER");
-		}
-	});
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet140.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet140.java
deleted file mode 100644
index 40c8b27..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet140.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-  
-/*
- * CoolBar example snippet: drop-down a chevron menu containing hidden tool items
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet140 {
-	static Display display;
-	static Shell shell;
-	static CoolBar coolBar;
-	static Menu chevronMenu = null;
-	
-public static void main (String [] args) {
-	display = new Display ();
-	shell = new Shell (display);
-	shell.setLayout(new GridLayout());
-	coolBar = new CoolBar(shell, SWT.FLAT | SWT.BORDER);
-	coolBar.setLayoutData(new GridData(GridData.FILL_BOTH));
-	ToolBar toolBar = new ToolBar(coolBar, SWT.FLAT | SWT.WRAP);
-	int minWidth = 0;
-	for (int j = 0; j < 5; j++) {
-		int width = 0;
-		ToolItem item = new ToolItem(toolBar, SWT.PUSH);
-		item.setText("B" + j);
-		width = item.getWidth();
-		/* find the width of the widest tool */
-		if (width > minWidth) minWidth = width;
-	}
-	CoolItem coolItem = new CoolItem(coolBar, SWT.DROP_DOWN);
-	coolItem.setControl(toolBar);
-	Point size = toolBar.computeSize(SWT.DEFAULT, SWT.DEFAULT);
-	Point coolSize = coolItem.computeSize (size.x, size.y);
-	coolItem.setMinimumSize(minWidth, coolSize.y);
-	coolItem.setPreferredSize(coolSize);
-	coolItem.setSize(coolSize);
-	coolItem.addSelectionListener(new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent event) {
-			if (event.detail == SWT.ARROW) {
-				CoolItem item = (CoolItem) event.widget;
-				Rectangle itemBounds = item.getBounds ();
-				Point pt = coolBar.toDisplay(new Point(itemBounds.x, itemBounds.y));
-				itemBounds.x = pt.x;
-				itemBounds.y = pt.y;
-				ToolBar toolBar = (ToolBar) item.getControl ();
-				ToolItem[] tools = toolBar.getItems ();
-				
-				int i = 0;
-				while (i < tools.length) {
-					Rectangle toolBounds = tools[i].getBounds ();
-					pt = toolBar.toDisplay(new Point(toolBounds.x, toolBounds.y));
-					toolBounds.x = pt.x;
-					toolBounds.y = pt.y;
-					
-					/* Figure out the visible portion of the tool by looking at the
-					 * intersection of the tool bounds with the cool item bounds. */
-			  		Rectangle intersection = itemBounds.intersection (toolBounds);
-			  		
-					/* If the tool is not completely within the cool item bounds, then it
-					 * is partially hidden, and all remaining tools are completely hidden. */
-			  		if (!intersection.equals (toolBounds)) break;
-			  		i++;
-				}
-				
-				/* Create a menu with items for each of the completely hidden buttons. */
-				if (chevronMenu != null) chevronMenu.dispose();
-				chevronMenu = new Menu (coolBar);
-				for (int j = i; j < tools.length; j++) {
-					MenuItem menuItem = new MenuItem (chevronMenu, SWT.PUSH);
-					menuItem.setText (tools[j].getText());
-				}
-				
-				/* Drop down the menu below the chevron, with the left edges aligned. */
-				pt = coolBar.toDisplay(new Point(event.x, event.y));
-				chevronMenu.setLocation (pt.x, pt.y);
-				chevronMenu.setVisible (true);
-			}
-		}
-	});
-
-	shell.pack();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet141.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet141.java
deleted file mode 100644
index 476ccb6..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet141.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Image example snippet: display an animated GIF
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet141 {
-	static Display display;
-	static Shell shell;
-	static GC shellGC;
-	static Color shellBackground;
-	static ImageLoader loader;
-	static ImageData[] imageDataArray;
-	static Thread animateThread;
-	static Image image;
-	static final boolean useGIFBackground = false;
-	
-	public static void main(String[] args) {
-		display = new Display();
-		shell = new Shell(display);
-		shell.setSize(300, 300);
-		shell.open();
-		shellGC = new GC(shell);
-		shellBackground = shell.getBackground();
-
-		FileDialog dialog = new FileDialog(shell);
-		dialog.setFilterExtensions(new String[] {"*.gif"});
-		String fileName = dialog.open();
-		if (fileName != null) {
-			loader = new ImageLoader();
-			try {
-				imageDataArray = loader.load(fileName);
-				if (imageDataArray.length > 1) {
-					animateThread = new Thread("Animation") {
-						public void run() {
-							/* Create an off-screen image to draw on, and fill it with the shell background. */
-							Image offScreenImage = new Image(display, loader.logicalScreenWidth, loader.logicalScreenHeight);
-							GC offScreenImageGC = new GC(offScreenImage);
-							offScreenImageGC.setBackground(shellBackground);
-							offScreenImageGC.fillRectangle(0, 0, loader.logicalScreenWidth, loader.logicalScreenHeight);
-								
-							try {
-								/* Create the first image and draw it on the off-screen image. */
-								int imageDataIndex = 0;	
-								ImageData imageData = imageDataArray[imageDataIndex];
-								if (image != null && !image.isDisposed()) image.dispose();
-								image = new Image(display, imageData);
-								offScreenImageGC.drawImage(
-									image,
-									0,
-									0,
-									imageData.width,
-									imageData.height,
-									imageData.x,
-									imageData.y,
-									imageData.width,
-									imageData.height);
-
-								/* Now loop through the images, creating and drawing each one
-								 * on the off-screen image before drawing it on the shell. */
-								int repeatCount = loader.repeatCount;
-								while (loader.repeatCount == 0 || repeatCount > 0) {
-									switch (imageData.disposalMethod) {
-									case SWT.DM_FILL_BACKGROUND:
-										/* Fill with the background color before drawing. */
-										Color bgColor = null;
-										if (useGIFBackground && loader.backgroundPixel != -1) {
-											bgColor = new Color(display, imageData.palette.getRGB(loader.backgroundPixel));
-										}
-										offScreenImageGC.setBackground(bgColor != null ? bgColor : shellBackground);
-										offScreenImageGC.fillRectangle(imageData.x, imageData.y, imageData.width, imageData.height);
-										if (bgColor != null) bgColor.dispose();
-										break;
-									case SWT.DM_FILL_PREVIOUS:
-										/* Restore the previous image before drawing. */
-										offScreenImageGC.drawImage(
-											image,
-											0,
-											0,
-											imageData.width,
-											imageData.height,
-											imageData.x,
-											imageData.y,
-											imageData.width,
-											imageData.height);
-										break;
-									}
-														
-									imageDataIndex = (imageDataIndex + 1) % imageDataArray.length;
-									imageData = imageDataArray[imageDataIndex];
-									image.dispose();
-									image = new Image(display, imageData);
-									offScreenImageGC.drawImage(
-										image,
-										0,
-										0,
-										imageData.width,
-										imageData.height,
-										imageData.x,
-										imageData.y,
-										imageData.width,
-										imageData.height);
-									
-									/* Draw the off-screen image to the shell. */
-									shellGC.drawImage(offScreenImage, 0, 0);
-									
-									/* Sleep for the specified delay time (adding commonly-used slow-down fudge factors). */
-									try {
-										int ms = imageData.delayTime * 10;
-										if (ms < 20) ms += 30;
-										if (ms < 30) ms += 10;
-										Thread.sleep(ms);
-									} catch (InterruptedException e) {
-									}
-									
-									/* If we have just drawn the last image, decrement the repeat count and start again. */
-									if (imageDataIndex == imageDataArray.length - 1) repeatCount--;
-								}
-							} catch (SWTException ex) {
-								System.out.println("There was an error animating the GIF");
-							} finally {
-								if (offScreenImage != null && !offScreenImage.isDisposed()) offScreenImage.dispose();
-								if (offScreenImageGC != null && !offScreenImageGC.isDisposed()) offScreenImageGC.dispose();
-								if (image != null && !image.isDisposed()) image.dispose();
-							}
-						}
-					};
-					animateThread.setDaemon(true);
-					animateThread.start();
-				}
-			} catch (SWTException ex) {
-				System.out.println("There was an error loading the GIF");
-			}
-		}
-
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch()) display.sleep();
-		}
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet142.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet142.java
deleted file mode 100644
index 90cd412..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet142.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-  
-/*
- * UI Automation (for testing tools) snippet: post mouse events
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet142 {
-
-public static void main(String[] args) {
-	final Display display = new Display();
-	final Shell shell = new Shell(display);
-	final Button button = new Button(shell,SWT.NONE);
-	button.setSize(100,100);
-	button.setText("Click");
-	shell.pack();
-	shell.open();
-	button.addListener(SWT.MouseDown, new Listener() {
-		public void handleEvent(Event e){
-			System.out.println("Mouse Down (button: " + e.button + " x: " + e.x + " y: " + e.y + ")");
-		}
-	});
-	final Point pt = display.map(shell, null, 50, 50);
-	new Thread(){
-		Event event;
-		public void run(){
-			try {
-				Thread.sleep(300);
-			} catch (InterruptedException e) {}
-			event = new Event();
-			event.type = SWT.MouseMove;
-			event.x = pt.x;
-			event.y = pt.y;
-			display.post(event);
-			try {
-				Thread.sleep(300);
-			} catch (InterruptedException e) {}
-			event.type = SWT.MouseDown;
-			event.button = 1;
-			display.post(event);
-			try {
-				Thread.sleep(300);
-			} catch (InterruptedException e) {}
-			event.type = SWT.MouseUp;
-			display.post(event);
-		}	
-	}.start();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch()) display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet143.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet143.java
deleted file mode 100644
index d513439..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet143.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-  
-/*
- * Tray example snippet: place an icon with a popup menu on the system tray
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet143 {
-
-public static void main(String[] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Image image = new Image (display, 16, 16);
-	final Tray tray = display.getSystemTray ();
-	final TrayItem item = new TrayItem (tray, SWT.NONE);
-	item.setToolTipText("SWT TrayItem");
-	item.addListener (SWT.Show, new Listener () {
-		public void handleEvent (Event event) {
-			System.out.println("show");
-		}
-	});
-	item.addListener (SWT.Hide, new Listener () {
-		public void handleEvent (Event event) {
-			System.out.println("hide");
-		}
-	});
-	item.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			System.out.println("selection");
-		}
-	});
-	item.addListener (SWT.DefaultSelection, new Listener () {
-		public void handleEvent (Event event) {
-			System.out.println("default selection");
-		}
-	});
-	final Menu menu = new Menu (shell, SWT.POP_UP);
-	for (int i = 0; i < 8; i++) {
-		MenuItem mi = new MenuItem (menu, SWT.PUSH);
-		mi.setText ("Item" + i);
-	}
-	item.addListener (SWT.MenuDetect, new Listener () {
-		public void handleEvent (Event event) {
-			menu.setVisible (true);
-		}
-	});
-	item.setImage (image);
-	shell.setBounds(50, 50, 300, 200);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	image.dispose ();
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet144.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet144.java
deleted file mode 100644
index 4970bab..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet144.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Virtual Table example snippet: create a table with 1,000,000 items
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet144 {
-
-static final int COUNT = 1000000;
-
-public static void main(String[] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	shell.setLayout (new RowLayout (SWT.VERTICAL));
-	final Table table = new Table (shell, SWT.VIRTUAL | SWT.BORDER);
-	table.addListener (SWT.SetData, new Listener () {
-		public void handleEvent (Event event) {
-			TableItem item = (TableItem) event.item;
-			int index = table.indexOf (item);
-			item.setText ("Item " + index);
-			System.out.println (item.getText ());
-		}
-	});
-	table.setLayoutData (new RowData (200, 200));
-	Button button = new Button (shell, SWT.PUSH);
-	button.setText ("Add Items");
-	final Label label = new Label(shell, SWT.NONE);
-	button.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			long t1 = System.currentTimeMillis ();
-			table.setItemCount (COUNT);
-			long t2 = System.currentTimeMillis ();
-			label.setText ("Items: " + COUNT + ", Time: " + (t2 - t1) + " (ms)");
-			shell.layout ();
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet145.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet145.java
deleted file mode 100644
index eee2f97..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet145.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * TextLayout example snippet: draw internationalized styled text on a shell
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.graphics.*;
-
-public class Snippet145 {
-
-	public static void main(String[] args) {
-		Display display = new Display();
-		Shell shell = new Shell (display);
-		
-		Font font1 = new Font(display, "Tahoma", 14, SWT.BOLD);
-		Font font2 = new Font(display, "MS Mincho", 20, SWT.ITALIC);
-		Font font3 = new Font(display, "Arabic Transparent", 18, SWT.NORMAL);
-		
-		Color blue = display.getSystemColor(SWT.COLOR_BLUE);
-		Color green = display.getSystemColor(SWT.COLOR_GREEN);
-		Color yellow = display.getSystemColor(SWT.COLOR_YELLOW);
-		Color gray = display.getSystemColor(SWT.COLOR_GRAY);
-		
-		final TextLayout layout = new TextLayout(display);
-		TextStyle style1 = new TextStyle(font1, yellow, blue);
-		TextStyle style2 = new TextStyle(font2, green, null);
-		TextStyle style3 = new TextStyle(font3, blue, gray);
-		
-		layout.setText("English \u65E5\u672C\u8A9E  \u0627\u0644\u0639\u0631\u0628\u064A\u0651\u0629");
-		layout.setStyle(style1, 0, 6);
-		layout.setStyle(style2, 8, 10);
-		layout.setStyle(style3, 13, 21);
-					
-		shell.setBackground(display.getSystemColor(SWT.COLOR_WHITE));
-		shell.addListener(SWT.Paint, new Listener() {
-			public void handleEvent (Event event) {
-				layout.draw(event.gc, 10, 10);
-			}
-		});
-		shell.open();	
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch()) display.sleep();
-		}
-		font1.dispose();
-		font2.dispose();
-		font3.dispose();
-		layout.dispose();
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet146.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet146.java
deleted file mode 100644
index f461762..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet146.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-  
-/*
- * UI Automation (for testing tools) snippet: post key events
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet146 {
-
-public static void main(String[] args) {
-	final Display display = new Display();
-	final Shell shell = new Shell(display);
-	final Text text = new Text(shell, SWT.BORDER);
-	text.setSize(text.computeSize(150, SWT.DEFAULT));
-	shell.pack();
-	shell.open();
-	new Thread(){
-		public void run(){
-			String string = "Love the method.";
-			for (int i = 0; i < string.length(); i++) {
-				char ch = string.charAt(i);
-				boolean shift = Character.isUpperCase(ch);
-				ch = Character.toLowerCase(ch);
-				if (shift) {
-					Event event = new Event();
-					event.type = SWT.KeyDown;
-					event.keyCode = SWT.SHIFT;
-					display.post(event);	
-				}
-				Event event = new Event();
-				event.type = SWT.KeyDown;
-				event.character = ch;
-				display.post(event);
-				try {
-					Thread.sleep(10);
-				} catch (InterruptedException e) {}
-				event.type = SWT.KeyUp;
-				display.post(event);
-				try {
-					Thread.sleep(100);
-				} catch (InterruptedException e) {}
-				if (shift) {
-					event = new Event();
-					event.type = SWT.KeyUp;
-					event.keyCode = SWT.SHIFT;
-					display.post(event);	
-				}
-			}
-		}	
-	}.start();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch()) display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet147.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet147.java
deleted file mode 100644
index 57857b0..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet147.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Text example snippet: stop CR from going to the default button
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet147  {
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new GridLayout());
-	Combo combo = new Combo(shell, SWT.NONE);
-	combo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-	combo.setText("Here is some text");
-	combo.addSelectionListener(new SelectionAdapter() {
-		public void widgetDefaultSelected(SelectionEvent e) {
-			System.out.println("Combo default selected (overrides default button)");
-		}
-	});
-	combo.addTraverseListener(new TraverseListener() {
-		public void keyTraversed(TraverseEvent e) {
-			if (e.detail == SWT.TRAVERSE_RETURN) {
-				e.doit = false;
-				e.detail = SWT.TRAVERSE_NONE;
-			}
-		}
-	});
-	Button button = new Button(shell, SWT.PUSH);
-	button.setText("Ok");
-	button.addSelectionListener(new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent e) {
-			System.out.println("Button selected");
-		}
-	});
-	shell.setDefaultButton(button);
-	shell.pack();
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet148.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet148.java
deleted file mode 100644
index 0de0f33..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet148.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Text example snippet: check if the browser is available or not
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.browser.*;
-
-public class Snippet148 {
-
-	public static void main(String[] args) {
-		final Display display = new Display();
-		Shell shell = new Shell(display);
-		shell.setLayout(new FillLayout());
-		Browser browser = null;
-		try {
-			browser = new Browser(shell, SWT.NONE);
-		} catch (SWTError e) {
-			/* The Browser widget throws an SWTError if it fails to
-			 * instantiate properly. Application code should catch
-			 * this SWTError and disable any feature requiring the
-			 * Browser widget.
-			 * Platform requirements for the SWT Browser widget are available
-			 * from the SWT FAQ website. 
-			 */
-		}
-		if (browser != null) {
-			/* The Browser widget can be used */
-			browser.setUrl("http://www.eclipse.org");
-		}
-		shell.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch())
-				display.sleep();
-		}
-		display.dispose();
-	}
-}
-
-
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet149.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet149.java
deleted file mode 100644
index a79726b..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet149.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * TableEditor example snippet: place a progress bar in a table
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.custom.*;
-
-public class Snippet149 {
-	public static void main(String[] args) {
-		Display display = new Display();
-		Shell shell = new Shell(display);
-		shell.setLayout (new FillLayout ());
-		Table table = new Table (shell, SWT.BORDER);
-		table.setHeaderVisible (true);
-		for (int i=0; i<2; i++) {
-			TableColumn column = new TableColumn (table, SWT.NONE);
-		}
-		table.getColumn (0).setText ("Task");
-		table.getColumn (1).setText ("Progress");
-		for (int i=0; i<4; i++) {
-			TableItem item = new TableItem (table, SWT.NONE);
-			item.setText ("Task " + i);
-			ProgressBar bar = new ProgressBar (table, SWT.NONE);
-			bar.setSelection (i * 25);
-			TableEditor editor = new TableEditor (table);
-			editor.grabHorizontal = editor.grabVertical = true;
-			editor.setEditor (bar, item, 1);
-		}
-		table.getColumn (0).pack ();
-		table.getColumn (1).setWidth (128);
-		shell.pack ();
-		shell.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch()) {
-				display.sleep();
-			}
-		}
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet15.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet15.java
deleted file mode 100644
index 5328052..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet15.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Tree example snippet: create a tree
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet15 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Tree tree = new Tree (shell, SWT.BORDER);
-	tree.setSize (100, 100);
-	shell.setSize (200, 200);
-	for (int i=0; i<4; i++) {
-		TreeItem iItem = new TreeItem (tree, 0);
-		iItem.setText ("TreeItem (0) -" + i);
-		for (int j=0; j<4; j++) {
-			TreeItem jItem = new TreeItem (iItem, 0);
-			jItem.setText ("TreeItem (1) -" + j);
-			for (int k=0; k<4; k++) {
-				TreeItem kItem = new TreeItem (jItem, 0);
-				kItem.setText ("TreeItem (2) -" + k);
-				for (int l=0; l<4; l++) {
-					TreeItem lItem = new TreeItem (kItem, 0);
-					lItem.setText ("TreeItem (3) -" + l);
-				}
-			}
-		}
-	}
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet150.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet150.java
deleted file mode 100644
index 54fb720..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet150.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * CoolBar example snippet: create a coolbar (relayout when resized)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet150 {
-
-static int itemCount;
-static CoolItem createItem(CoolBar coolBar, int count) {
-    ToolBar toolBar = new ToolBar(coolBar, SWT.FLAT);
-    for (int i = 0; i < count; i++) {
-        ToolItem item = new ToolItem(toolBar, SWT.PUSH);
-        item.setText(itemCount++ +"");
-    }
-    toolBar.pack();
-    Point size = toolBar.getSize();
-    CoolItem item = new CoolItem(coolBar, SWT.NONE);
-    item.setControl(toolBar);
-    Point preferred = item.computeSize(size.x, size.y);
-    item.setPreferredSize(preferred);
-    return item;
-}
-
-public static void main(String[] args) {
-    Display display = new Display();
-    final Shell shell = new Shell(display);
-    CoolBar coolBar = new CoolBar(shell, SWT.NONE);
-    createItem(coolBar, 3);
-    createItem(coolBar, 2);
-    createItem(coolBar, 3);
-    createItem(coolBar, 4);
-    int style = SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL;
-    Text text = new Text(shell, style);
-    FormLayout layout = new FormLayout();
-    shell.setLayout(layout);
-    FormData coolData = new FormData();
-    coolData.left = new FormAttachment(0);
-    coolData.right = new FormAttachment(100);
-    coolData.top = new FormAttachment(0);
-    coolBar.setLayoutData(coolData);
-    coolBar.addListener(SWT.Resize, new Listener() {
-        public void handleEvent(Event event) {
-            shell.layout();
-        }
-    });
-    FormData textData = new FormData();
-    textData.left = new FormAttachment(0);
-    textData.right = new FormAttachment(100);
-    textData.top = new FormAttachment(coolBar);
-    textData.bottom = new FormAttachment(100);
-    text.setLayoutData(textData);
-    shell.open();
-    while (!shell.isDisposed()) {
-        if (!display.readAndDispatch()) display.sleep();
-    }
-    display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet151.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet151.java
deleted file mode 100644
index 41017c7..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet151.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Create a virtual table and add 1000 entries to it every 500 ms.
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import java.util.*;
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet151 {
-
-static int[] values = new int[0];
-static Thread thread;
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout(new FillLayout());
-	final Table table = new Table(shell, SWT.BORDER | SWT.VIRTUAL);
-	table.addListener(SWT.SetData, new Listener() {
-		public void handleEvent(Event e) {
-			TableItem item = (TableItem)e.item;
-			int index = table.indexOf(item);
-			item.setText("item "+values[index]);
-		}
-	});
-	final Random random = new Random();
-	thread = new Thread() {
-		public void run() {
-			int count = 0;
-			while (count++ < 2000) {
-				if (table.isDisposed()) return;
-				// add 1000 random numbers to a sorted array
-				for (int j = 0; j < 1000; j++) {
-					int next  = random.nextInt();
-					int[] newItems = new int[values.length + 1];
-					int index = 0;
-					for (int i = 0; i < values.length; i++) {
-						if (values[i] > next) break;
-						index++;
-					}
-					System.arraycopy(values, 0, newItems, 0, index);
-					newItems[index] = next;
-					System.arraycopy(values, index, newItems, index+1, values.length-index);
-					values = newItems;
-				}
-				display.syncExec(new Runnable() {
-					public void run() {
-						if (table.isDisposed()) return;
-						table.setItemCount(values.length);
-						table.clearAll();
-						// bug 69398 on Windows
-						table.redraw();
-					}
-				});
-				try {Thread.sleep(500);} catch (Throwable t) {}
-			}
-		}
-	};
-	thread.start();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet152.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet152.java
deleted file mode 100644
index 92ef6cc..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet152.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Control example snippet: update a status line when an item is armed
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet152 {
-
-public static void main(String[] args) {
-    Display display = new Display();
-    Shell shell = new Shell(display);
-    FormLayout layout = new FormLayout();
-    shell.setLayout(layout);
-    final Label label = new Label(shell, SWT.BORDER);
-    Listener armListener = new Listener() {
-        public void handleEvent(Event event) {
-            MenuItem item = (MenuItem) event.widget;
-            label.setText(item.getText());
-            label.update();
-        }
-    };
-    Listener showListener = new Listener() {
-        public void handleEvent(Event event) {
-            Menu menu = (Menu) event.widget;
-            MenuItem item = menu.getParentItem();
-            if (item != null) {
-                label.setText(item.getText());
-                label.update();
-            }
-        }
-    };
-    Listener hideListener = new Listener() {
-        public void handleEvent(Event event) {
-            label.setText("");
-            label.update();
-        }
-    };
-    FormData labelData = new FormData();
-    labelData.left = new FormAttachment(0);
-    labelData.right = new FormAttachment(100);
-    labelData.bottom = new FormAttachment(100);
-    label.setLayoutData(labelData);
-    Menu menuBar = new Menu(shell, SWT.BAR);
-    shell.setMenuBar(menuBar);
-    MenuItem fileItem = new MenuItem(menuBar, SWT.CASCADE);
-    fileItem.setText("File");
-    fileItem.addListener(SWT.Arm, armListener);
-    MenuItem editItem = new MenuItem(menuBar, SWT.CASCADE);
-    editItem.setText("Edit");
-    editItem.addListener(SWT.Arm, armListener);
-    Menu fileMenu = new Menu(shell, SWT.DROP_DOWN);
-    fileMenu.addListener(SWT.Hide, hideListener);
-    fileMenu.addListener(SWT.Show, showListener);
-    fileItem.setMenu(fileMenu);
-    String[] fileStrings = { "New", "Close", "Exit" };
-    for (int i = 0; i < fileStrings.length; i++) {
-        MenuItem item = new MenuItem(fileMenu, SWT.PUSH);
-        item.setText(fileStrings[i]);
-        item.addListener(SWT.Arm, armListener);
-    }
-    Menu editMenu = new Menu(shell, SWT.DROP_DOWN);
-    editMenu.addListener(SWT.Hide, hideListener);
-    editMenu.addListener(SWT.Show, showListener);
-    String[] editStrings = { "Cut", "Copy", "Paste" };
-    editItem.setMenu(editMenu);
-    for (int i = 0; i < editStrings.length; i++) {
-        MenuItem item = new MenuItem(editMenu, SWT.PUSH);
-        item.setText(editStrings[i]);
-        item.addListener(SWT.Arm, armListener);
-    }
-    shell.open();
-    while (!shell.isDisposed()) {
-        if (!display.readAndDispatch()) display.sleep();
-    }
-    display.dispose();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet153.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet153.java
deleted file mode 100644
index 39818d0..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet153.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ToolBar example snippet: update a status line when the pointer enters a ToolItem
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet153 {
-	
-static String statusText = "";
-public static void main(String[] args) {
-    final Display display = new Display();
-    Shell shell = new Shell(display);
-    shell.setBounds(10, 10, 200, 200);
-    final ToolBar bar = new ToolBar(shell, SWT.BORDER);
-    bar.setBounds(10, 10, 150, 50);
-    final Label statusLine = new Label(shell, SWT.BORDER);
-    statusLine.setBounds(10, 90, 150, 30);
-    new ToolItem(bar, SWT.NONE).setText("item 1");
-    new ToolItem(bar, SWT.NONE).setText("item 2");
-    new ToolItem(bar, SWT.NONE).setText("item 3");
-    bar.addMouseMoveListener(new MouseMoveListener() {
-        public void mouseMove(MouseEvent e) {
-            ToolItem item = bar.getItem(new Point(e.x, e.y));
-            String name = "";
-            if (item != null) {
-                name = item.getText();
-            }
-            if (!statusText.equals(name)) {
-                statusLine.setText(name);
-                statusText = name;
-            }
-        }
-    });
-    shell.open();
-    while (!shell.isDisposed()) {
-        if (!display.readAndDispatch()) display.sleep();
-    }
-    display.dispose();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet154.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet154.java
deleted file mode 100644
index 2f9cb18..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet154.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * example snippet: embed a JTable in SWT (no flicker)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import java.awt.BorderLayout;
-import java.awt.Frame;
-import java.awt.Panel;
-import javax.swing.*;
-import java.util.Vector;
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.awt.SWT_AWT;
-
-public class Snippet154 {
-
-	public static void main(String[] args) {
-		final Display display = new Display();
-		final Shell shell = new Shell(display);
-		shell.setLayout(new FillLayout());
-
-		Composite composite = new Composite(shell, SWT.NO_BACKGROUND | SWT.EMBEDDED);
-		
-		/* Create and setting up frame */
-		Frame frame = SWT_AWT.new_Frame(composite);
-		Panel panel = new Panel(new BorderLayout());
-		frame.add(panel);
-		JPanel root = new JPanel();
-		root.setLayout(new BorderLayout());
-		panel.add(root);
-
-		/* Creating components */
-		int nrows = 1000, ncolumns = 10;
-		Vector rows = new Vector();
-		for (int i = 0; i < nrows; i++) {
-			Vector row = new Vector();
-			for (int j = 0; j < ncolumns; j++) {
-				row.addElement("Item " + i + "-" + j);
-			}
-			rows.addElement(row);
-		}
-		Vector columns = new Vector();
-		for (int i = 0; i < ncolumns; i++) {
-			columns.addElement("Column " + i);
-		}
-		JTable table = new JTable(rows, columns);
-		table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
-		table.createDefaultColumnsFromModel();
-		JScrollPane scrollPane = new JScrollPane(table);
-		root.add(scrollPane);
-		
-		shell.open();
-		while(!shell.isDisposed()) {
-			if (!display.readAndDispatch()) display.sleep();
-		}
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet155.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet155.java
deleted file mode 100644
index 09f7aeb..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet155.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * example snippet: draw an X using AWT Graphics
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import java.awt.Frame;
-import java.awt.Canvas;
-import java.awt.Graphics;
-import java.awt.Dimension;
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.awt.SWT_AWT;
-
-public class Snippet155 {
-
-	public static void main(String[] args) {
-		final Display display = new Display();
-		final Shell shell = new Shell(display);
-		shell.setLayout(new FillLayout());
-		Composite composite = new Composite(shell, SWT.EMBEDDED);
-		
-		/* Draw an X using AWT */
-		Frame frame = SWT_AWT.new_Frame(composite);
-		Canvas canvas = new Canvas() {
-			public void paint (Graphics g) {
-				Dimension d = getSize();
-				g.drawLine(0, 0, d.width, d.height);
-				g.drawLine(d.width, 0, 0, d.height);
-			}
-		};
-		frame.add(canvas);
-
-		shell.open();
-		while(!shell.isDisposed()) {
-			if (!display.readAndDispatch()) display.sleep();
-		}
-		display.dispose();
-	}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet156.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet156.java
deleted file mode 100644
index 8698e33..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet156.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * example snippet: convert between SWT Image and AWT BufferedImage
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import java.awt.Frame;
-import java.awt.Graphics;
-import java.awt.Insets;
-import java.awt.image.BufferedImage;
-import java.awt.image.ColorModel;
-import java.awt.image.DirectColorModel;
-import java.awt.image.IndexColorModel;
-import java.awt.image.WritableRaster;
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.graphics.*;
-
-public class Snippet156 {
-	
-static BufferedImage convertToAWT(ImageData data) {
-	ColorModel colorModel = null;
-	PaletteData palette = data.palette;
-	if (palette.isDirect) {
-		colorModel = new DirectColorModel(data.depth, palette.redMask, palette.greenMask, palette.blueMask);
-		BufferedImage bufferedImage = new BufferedImage(colorModel, colorModel.createCompatibleWritableRaster(data.width, data.height), false, null);
-		WritableRaster raster = bufferedImage.getRaster();
-		int[] pixelArray = new int[3];
-		for (int y = 0; y < data.height; y++) {
-			for (int x = 0; x < data.width; x++) {
-				int pixel = data.getPixel(x, y);
-				RGB rgb = palette.getRGB(pixel);
-				pixelArray[0] = rgb.red;
-				pixelArray[1] = rgb.green;
-				pixelArray[2] = rgb.blue;
-				raster.setPixels(x, y, 1, 1, pixelArray);
-			}
-		}
-		return bufferedImage;
-	} else {
-		RGB[] rgbs = palette.getRGBs();
-		byte[] red = new byte[rgbs.length];
-		byte[] green = new byte[rgbs.length];
-		byte[] blue = new byte[rgbs.length];
-		for (int i = 0; i < rgbs.length; i++) {
-			RGB rgb = rgbs[i];
-			red[i] = (byte)rgb.red;
-			green[i] = (byte)rgb.green;
-			blue[i] = (byte)rgb.blue;
-		}
-		if (data.transparentPixel != -1) {
-			colorModel = new IndexColorModel(data.depth, rgbs.length, red, green, blue, data.transparentPixel);
-		} else {
-			colorModel = new IndexColorModel(data.depth, rgbs.length, red, green, blue);
-		}		
-		BufferedImage bufferedImage = new BufferedImage(colorModel, colorModel.createCompatibleWritableRaster(data.width, data.height), false, null);
-		WritableRaster raster = bufferedImage.getRaster();
-		int[] pixelArray = new int[1];
-		for (int y = 0; y < data.height; y++) {
-			for (int x = 0; x < data.width; x++) {
-				int pixel = data.getPixel(x, y);
-				pixelArray[0] = pixel;
-				raster.setPixel(x, y, pixelArray);
-			}
-		}
-		return bufferedImage;
-	}
-}
-
-static ImageData convertToSWT(BufferedImage bufferedImage) {
-	if (bufferedImage.getColorModel() instanceof DirectColorModel) {
-		DirectColorModel colorModel = (DirectColorModel)bufferedImage.getColorModel();
-		PaletteData palette = new PaletteData(colorModel.getRedMask(), colorModel.getGreenMask(), colorModel.getBlueMask());
-		ImageData data = new ImageData(bufferedImage.getWidth(), bufferedImage.getHeight(), colorModel.getPixelSize(), palette);
-		WritableRaster raster = bufferedImage.getRaster();
-		int[] pixelArray = new int[3];
-		for (int y = 0; y < data.height; y++) {
-			for (int x = 0; x < data.width; x++) {
-				raster.getPixel(x, y, pixelArray);
-				int pixel = palette.getPixel(new RGB(pixelArray[0], pixelArray[1], pixelArray[2]));
-				data.setPixel(x, y, pixel);
-			}
-		}		
-		return data;		
-	} else if (bufferedImage.getColorModel() instanceof IndexColorModel) {
-		IndexColorModel colorModel = (IndexColorModel)bufferedImage.getColorModel();
-		int size = colorModel.getMapSize();
-		byte[] reds = new byte[size];
-		byte[] greens = new byte[size];
-		byte[] blues = new byte[size];
-		colorModel.getReds(reds);
-		colorModel.getGreens(greens);
-		colorModel.getBlues(blues);
-		RGB[] rgbs = new RGB[size];
-		for (int i = 0; i < rgbs.length; i++) {
-			rgbs[i] = new RGB(reds[i] & 0xFF, greens[i] & 0xFF, blues[i] & 0xFF);
-		}
-		PaletteData palette = new PaletteData(rgbs);
-		ImageData data = new ImageData(bufferedImage.getWidth(), bufferedImage.getHeight(), colorModel.getPixelSize(), palette);
-		data.transparentPixel = colorModel.getTransparentPixel();
-		WritableRaster raster = bufferedImage.getRaster();
-		int[] pixelArray = new int[1];
-		for (int y = 0; y < data.height; y++) {
-			for (int x = 0; x < data.width; x++) {
-				raster.getPixel(x, y, pixelArray);
-				data.setPixel(x, y, pixelArray[0]);
-			}
-		}
-		return data;
-	}
-	return null;
-}
-
-static ImageData createSampleImage(Display display) {
-	Image image = new Image(display, 100, 100);
-	Rectangle bounds = image.getBounds();
-	GC gc = new GC(image);
-	gc.setBackground(display.getSystemColor(SWT.COLOR_BLUE));
-	gc.fillRectangle(bounds);
-	gc.setBackground(display.getSystemColor(SWT.COLOR_GREEN));
-	gc.fillOval(0, 0, bounds.width, bounds.height);
-	gc.setForeground(display.getSystemColor(SWT.COLOR_RED));
-	gc.drawLine(0, 0, bounds.width, bounds.height);
-	gc.drawLine(bounds.width, 0, 0, bounds.height);
-	gc.dispose();
-	ImageData data = image.getImageData();
-	image.dispose();
-	return data;
-}
-
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setText("SWT Image");
-	ImageData data;
-	if (args.length > 0) {
-		String fileName = args[0];
-		data = new ImageData(fileName);
-	} else {
-		data = createSampleImage(display);
-	}
-	final Image swtImage = new Image(display, data);
-	final BufferedImage awtImage = convertToAWT(data);
-	final Image swtImage2 = new Image(display, convertToSWT(awtImage));
-	shell.addListener(SWT.Paint, new Listener() {
-		public void handleEvent(Event e) {
-			int y = 10;
-			if (swtImage != null) {
-				e.gc.drawImage(swtImage, 10, y);
-				y += swtImage.getBounds().height + 10;
-			}
-			if (swtImage2 != null) {
-				e.gc.drawImage(swtImage2, 10, y);
-			}
-		}
-	});
-	Frame frame = new Frame() {
-		public void paint(Graphics g) {
-			Insets insets = getInsets();
-			if (awtImage != null) {
-				g.drawImage(awtImage, 10 + insets.left, 10 + insets.top, null);
-			}
-		}
-	};
-	frame.setTitle("AWT Image");
-	shell.setLocation(50, 50);
-	Rectangle bounds = swtImage.getBounds();
-	shell.setSize(bounds.width + 50, bounds.height * 2 + 100);
-	Point size = shell.getSize();
-	Point location = shell.getLocation();
-	Insets insets = frame.getInsets();
-	frame.setLocation(location.x + size.x + 10, location.y);
-	frame.setSize(size.x - (insets.left + insets.right), size.y - (insets.top + insets.bottom));
-	frame.setVisible(true);	
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch()) display.sleep();
-	}
-	if (swtImage != null) swtImage.dispose();
-	if (swtImage2 != null) swtImage.dispose();
-	frame.dispose();
-	System.exit(0);
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet157.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet157.java
deleted file mode 100644
index 85c9027..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet157.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * example snippet: Embed Word in an applet
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-	
-import java.applet.*;
-	 
-public class Snippet157 extends Applet {
-	
-	org.eclipse.swt.widgets.Display display;
-	org.eclipse.swt.widgets.Shell swtParent;
-	java.awt.Canvas awtParent;
-
-public void init () {
-	Thread thread = new Thread (new Runnable () {
-		public void run () {
-			// This line is a hack required to support multiple restarts
-			org.eclipse.swt.internal.win32.OS.OleInitialize (0);
-			
-			setLayout(new java.awt.GridLayout (1, 1));
-			awtParent = new java.awt.Canvas ();
-			add (awtParent);
-			display = new org.eclipse.swt.widgets.Display ();
-			swtParent = org.eclipse.swt.awt.SWT_AWT.new_Shell (display, awtParent);
-			swtParent.setLayout (new org.eclipse.swt.layout.FillLayout ());
-			org.eclipse.swt.ole.win32.OleFrame frame = new org.eclipse.swt.ole.win32.OleFrame (swtParent, org.eclipse.swt.SWT.NONE);
-			org.eclipse.swt.ole.win32.OleClientSite site;
-			try {
-				site = new org.eclipse.swt.ole.win32.OleClientSite (frame, org.eclipse.swt.SWT.NONE, "Word.Document");
-			} catch (org.eclipse.swt.SWTException e) {
-				String str = "Create OleClientSite Error" + e.toString ();
-				System.out.println (str);
-				return;
-			}
-			setSize (500, 500);
-			validate ();
-			site.doVerb (org.eclipse.swt.ole.win32.OLE.OLEIVERB_SHOW);
-			
-			while (swtParent != null && !swtParent.isDisposed ()) {
-				if (!display.readAndDispatch ()) display.sleep ();		
-			}	
-		}
-	});
-	thread.start ();
-}
- public void stop (){
- 	if (display != null && !display.isDisposed ()){
- 		display.syncExec(new Runnable () {
- 			public void run () {
- 				if (swtParent != null && !swtParent.isDisposed ()) swtParent.dispose ();
- 				swtParent = null;
- 				display.dispose ();
- 				display = null;
- 			}
- 		});
- 		remove (awtParent);
- 		awtParent = null;
- 	}
- }
-}
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet16.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet16.java
deleted file mode 100644
index aeaf9bf..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet16.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Display example snippet: create one repeating timer (every 500 ms)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet16 {
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Shell shell = new Shell (display);
-	final int time = 500;
-	Runnable timer = new Runnable () {
-		public void run () {
-			Point point = display.getCursorLocation ();
-			Rectangle rect = shell.getBounds ();
-			if (rect.contains (point)) {
-				System.out.println ("In");
-			} else {
-				System.out.println ("Out");
-			}
-			display.timerExec (time, this);
-		}
-	};
-	display.timerExec (time, timer);
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();	
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet17.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet17.java
deleted file mode 100644
index 8d94ec5..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet17.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Slider example snippet: print scroll event details
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet17 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Slider slider = new Slider (shell, SWT.HORIZONTAL);
-	slider.setBounds (10, 10, 200, 32);
-	slider.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			String string = "SWT.NONE";
-			switch (event.detail) {
-				case SWT.DRAG: string = "SWT.DRAG"; break;
-				case SWT.HOME: string = "SWT.HOME"; break;
-				case SWT.END: string = "SWT.END"; break;
-				case SWT.ARROW_DOWN: string = "SWT.ARROW_DOWN"; break;
-				case SWT.ARROW_UP: string = "SWT.ARROW_UP"; break;
-				case SWT.PAGE_DOWN: string = "SWT.PAGE_DOWN"; break;
-				case SWT.PAGE_UP: string = "SWT.PAGE_UP"; break;
-			}
-			System.out.println ("Scroll detail -> " + string);
-		}
-	});
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet18.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet18.java
deleted file mode 100644
index f82cd1b..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet18.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ToolBar example snippet: create a tool bar (text)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet18 {
-
-public static void main (String [] args) {
-	Shell shell = new Shell ();
-	ToolBar bar = new ToolBar (shell, SWT.BORDER);
-	for (int i=0; i<8; i++) {
-		ToolItem item = new ToolItem (bar, SWT.PUSH);
-		item.setText ("Item " + i);
-	}
-	bar.pack ();
-	shell.open ();
-	Display display = shell.getDisplay ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-} 
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet19.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet19.java
deleted file mode 100644
index 54c34e6..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet19.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Text example snippet: verify input (only allow digits)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet19 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Text text = new Text (shell, SWT.BORDER | SWT.V_SCROLL);
-	text.setBounds (10, 10, 200, 200);
-	text.addListener (SWT.Verify, new Listener () {
-		public void handleEvent (Event e) {
-			String text = e.text;
-			char [] chars = new char [text.length ()];
-			text.getChars (0, chars.length, chars, 0);
-			for (int i=0; i<chars.length; i++) {
-				if (!('0' <= chars [i] && chars [i] <= '9')) {
-					e.doit = false;
-					return;
-				}
-			}
-		}
-	});
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet2.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet2.java
deleted file mode 100644
index 4bb8d96..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet2.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: sort a table by column
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import java.text.*;
-import java.util.*;
-
-public class Snippet2 {
-
-public static void main (String [] args) {
-    Display display = new Display ();
-    Shell shell = new Shell (display);
-    shell.setLayout(new FillLayout());
-    final Table table = new Table(shell, SWT.BORDER);
-    table.setHeaderVisible(true);
-    TableColumn column1 = new TableColumn(table, SWT.NONE);
-    column1.setText("Column 1");
-    TableColumn column2 = new TableColumn(table, SWT.NONE);
-    column2.setText("Column 2");
-    TableItem item = new TableItem(table, SWT.NONE);
-    item.setText(new String[] {"a", "3"});
-    item = new TableItem(table, SWT.NONE);
-    item.setText(new String[] {"b", "2"});
-    item = new TableItem(table, SWT.NONE);
-    item.setText(new String[] {"c", "1"});
-    column1.pack();
-    column2.pack();
-    column1.addListener(SWT.Selection, new Listener() {
-        public void handleEvent(Event e) {
-            // sort column 1
-            TableItem[] items = table.getItems();
-            Collator collator = Collator.getInstance(Locale.getDefault());
-            for (int i = 1; i < items.length; i++) {
-                String value1 = items[i].getText(0);
-                for (int j = 0; j < i; j++){
-                    String value2 = items[j].getText(0);
-                    if (collator.compare(value1, value2) < 0) {
-                        String[] values = {items[i].getText(0), items[i].getText(1)};
-                        items[i].dispose();
-                        TableItem item = new TableItem(table, SWT.NONE, j);
-                        item.setText(values);
-                        break;
-                    }
-                }
-            }
-        }
-    });
-    column2.addListener(SWT.Selection, new Listener() {
-        public void handleEvent(Event e) {
-            // sort column 2
-            TableItem[] items = table.getItems();
-            Collator collator = Collator.getInstance(Locale.getDefault());
-            for (int i = 1; i < items.length; i++) {
-                String value1 = items[i].getText(1);
-                for (int j = 0; j < i; j++){
-                    String value2 = items[j].getText(1);
-                    if (collator.compare(value1, value2) < 0) {
-                        String[] values = {items[i].getText(0), items[i].getText(1)};
-                        items[i].dispose();
-                        TableItem item = new TableItem(table, SWT.NONE, j);
-                        item.setText(values);
-                        break;
-                    }
-                }
-            }
-        }
-    });
-    shell.open ();
-    while (!shell.isDisposed ()) {
-        if (!display.readAndDispatch ()) display.sleep ();
-    }
-    display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet20.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet20.java
deleted file mode 100644
index 17655ec..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet20.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * CoolBar example snippet: create a cool bar
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet20 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	CoolBar bar = new CoolBar (shell, SWT.BORDER);
-	for (int i=0; i<2; i++) {
-		CoolItem item = new CoolItem (bar, SWT.NONE);
-		Button button = new Button (bar, SWT.PUSH);
-		button.setText ("Button " + i);
-		Point size = button.computeSize (SWT.DEFAULT, SWT.DEFAULT);
-		item.setPreferredSize (item.computeSize (size.x, size.y));
-		item.setControl (button);
-	}
-	bar.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet21.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet21.java
deleted file mode 100644
index af11694..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet21.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Canvas example snippet: implement tab traversal (behave like a tab group)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet21 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Color red = display.getSystemColor (SWT.COLOR_RED);
-	final Color blue = display.getSystemColor (SWT.COLOR_BLUE);
-	Shell shell = new Shell (display);
-	Button b = new Button (shell, SWT.PUSH);
-	b.setBounds (10, 10, 100, 32);
-	b.setText ("Button");
-	shell.setDefaultButton (b);
-	final Canvas c = new Canvas (shell, SWT.BORDER);
-	c.setBounds (10, 50, 100, 32);
-	c.addListener (SWT.Traverse, new Listener () {
-		public void handleEvent (Event e) {
-			switch (e.detail) {
-				/* Do tab group traversal */
-				case SWT.TRAVERSE_ESCAPE:
-				case SWT.TRAVERSE_RETURN:
-				case SWT.TRAVERSE_TAB_NEXT:	
-				case SWT.TRAVERSE_TAB_PREVIOUS:
-				case SWT.TRAVERSE_PAGE_NEXT:	
-				case SWT.TRAVERSE_PAGE_PREVIOUS:
-					e.doit = true;
-					break;
-			}
-		}
-	});
-	c.addListener (SWT.FocusIn, new Listener () {
-		public void handleEvent (Event e) {
-			c.setBackground (red);
-		}
-	});
-	c.addListener (SWT.FocusOut, new Listener () {
-		public void handleEvent (Event e) {
-			c.setBackground (blue);
-		}
-	});
-	c.addListener (SWT.KeyDown, new Listener () {
-		public void handleEvent (Event e) {
-			System.out.println ("KEY");
-			for (int i=0; i<64; i++) {
-				Color c1 = red, c2 = blue;
-				if (c.isFocusControl ()) {
-					c1 = blue;  c2 = red;
-				}
-				c.setBackground (c1);
-				c.update ();
-				c.setBackground (c2);
-			}
-		}
-	});
-	Text t = new Text (shell, SWT.SINGLE | SWT.BORDER);
-	t.setBounds (10, 85, 100, 32);
-
-	Text r = new Text (shell, SWT.MULTI | SWT.BORDER);
-	r.setBounds (10, 120, 100, 32);
-	
-	c.setFocus ();
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet22.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet22.java
deleted file mode 100644
index 04bf92f..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet22.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Text example snippet: select all the text in the control
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet22 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Text text = new Text (shell, 0);
-	text.setText ("ASDF");
-	text.setSize (64, 32);
-	text.selectAll ();
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet23.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet23.java
deleted file mode 100644
index 795a339..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet23.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tracker example snippet: create a tracker (drag on mouse down)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet23 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	shell.open ();
-	shell.addListener (SWT.MouseDown, new Listener () {
-		public void handleEvent (Event e) {
-			Tracker tracker = new Tracker (shell, 0);
-			tracker.setRectangles (new Rectangle [] {
-				new Rectangle (e.x, e.y, 100, 100),
-			});
-			tracker.open ();
-		}
-	});
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet24.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet24.java
deleted file mode 100644
index 1cdba3d..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet24.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * example snippet: detect CR in a text control (default selelection)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet24 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new RowLayout ());
-	Combo combo = new Combo (shell, SWT.NULL);
-	combo.setItems (new String [] {"A-1", "B-1", "C-1"});
-	Text text = new Text (shell, SWT.SINGLE | SWT.BORDER);
-	text.setText ("some text");
-	combo.addListener (SWT.DefaultSelection, new Listener () {
-		public void handleEvent (Event e) {
-			System.out.println (e.widget + " - Default Selection");
-		}
-	});
-	text.addListener (SWT.DefaultSelection, new Listener () {
-		public void handleEvent (Event e) {
-			System.out.println (e.widget + " - Default Selection");
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet25.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet25.java
deleted file mode 100644
index f1dfc29..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet25.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Control example snippet: print key state, code and character
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet25 {
-
-static String stateMask (int stateMask) {
-	String string = "";
-	if ((stateMask & SWT.CTRL) != 0) string += " CTRL";
-	if ((stateMask & SWT.ALT) != 0) string += " ALT";
-	if ((stateMask & SWT.SHIFT) != 0) string += " SHIFT";
-	if ((stateMask & SWT.COMMAND) != 0) string += " COMMAND";
-	return string;
-}
-
-static String character (char character) {
-	switch (character) {
-		case 0: 		return "'\\0'";
-		case SWT.BS:	return "'\\b'";
-		case SWT.CR:	return "'\\r'";
-		case SWT.DEL:	return "DEL";
-		case SWT.ESC:	return "ESC";
-		case SWT.LF:	return "'\\n'";
-		case SWT.TAB:	return "'\\t'";
-	}
-	return "'" + character +"'";
-}
-
-static String keyCode (int keyCode) {
-	switch (keyCode) {
-		
-		/* Keyboard and Mouse Masks */
-		case SWT.ALT: 		return "ALT";
-		case SWT.SHIFT: 	return "SHIFT";
-		case SWT.CONTROL:	return "CONTROL";
-		case SWT.COMMAND:	return "COMMAND";
-			
-		/* Non-Numeric Keypad Keys */
-		case SWT.ARROW_UP:		return "ARROW_UP";
-		case SWT.ARROW_DOWN:	return "ARROW_DOWN";
-		case SWT.ARROW_LEFT:	return "ARROW_LEFT";
-		case SWT.ARROW_RIGHT:	return "ARROW_RIGHT";
-		case SWT.PAGE_UP:		return "PAGE_UP";
-		case SWT.PAGE_DOWN:		return "PAGE_DOWN";
-		case SWT.HOME:			return "HOME";
-		case SWT.END:			return "END";
-		case SWT.INSERT:		return "INSERT";
-
-		/* Virtual and Ascii Keys */
-		case SWT.BS:	return "BS";
-		case SWT.CR:	return "CR";		
-		case SWT.DEL:	return "DEL";
-		case SWT.ESC:	return "ESC";
-		case SWT.LF:	return "LF";
-		case SWT.TAB:	return "TAB";
-	
-		/* Functions Keys */
-		case SWT.F1:	return "F1";
-		case SWT.F2:	return "F2";
-		case SWT.F3:	return "F3";
-		case SWT.F4:	return "F4";
-		case SWT.F5:	return "F5";
-		case SWT.F6:	return "F6";
-		case SWT.F7:	return "F7";
-		case SWT.F8:	return "F8";
-		case SWT.F9:	return "F9";
-		case SWT.F10:	return "F10";
-		case SWT.F11:	return "F11";
-		case SWT.F12:	return "F12";
-		case SWT.F13:	return "F13";
-		case SWT.F14:	return "F14";
-		case SWT.F15:	return "F15";
-		
-		/* Numeric Keypad Keys */
-		case SWT.KEYPAD_ADD:		return "KEYPAD_ADD";
-		case SWT.KEYPAD_SUBTRACT:	return "KEYPAD_SUBTRACT";
-		case SWT.KEYPAD_MULTIPLY:	return "KEYPAD_MULTIPLY";
-		case SWT.KEYPAD_DIVIDE:		return "KEYPAD_DIVIDE";
-		case SWT.KEYPAD_DECIMAL:	return "KEYPAD_DECIMAL";
-		case SWT.KEYPAD_CR:			return "KEYPAD_CR";
-		case SWT.KEYPAD_0:			return "KEYPAD_0";
-		case SWT.KEYPAD_1:			return "KEYPAD_1";
-		case SWT.KEYPAD_2:			return "KEYPAD_2";
-		case SWT.KEYPAD_3:			return "KEYPAD_3";
-		case SWT.KEYPAD_4:			return "KEYPAD_4";
-		case SWT.KEYPAD_5:			return "KEYPAD_5";
-		case SWT.KEYPAD_6:			return "KEYPAD_6";
-		case SWT.KEYPAD_7:			return "KEYPAD_7";
-		case SWT.KEYPAD_8:			return "KEYPAD_8";
-		case SWT.KEYPAD_9:			return "KEYPAD_9";
-		case SWT.KEYPAD_EQUAL:		return "KEYPAD_EQUAL";
-
-		/* Other keys */
-		case SWT.CAPS_LOCK:		return "CAPS_LOCK";
-		case SWT.NUM_LOCK:		return "NUM_LOCK";
-		case SWT.SCROLL_LOCK:	return "SCROLL_LOCK";
-		case SWT.PAUSE:			return "PAUSE";
-		case SWT.BREAK:			return "BREAK";
-		case SWT.PRINT_SCREEN:	return "PRINT_SCREEN";
-		case SWT.HELP:			return "HELP";
-	}
-	return character ((char) keyCode);
-}
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Listener listener = new Listener () {
-		public void handleEvent (Event e) {
-			String string = e.type == SWT.KeyDown ? "DOWN:" : "UP  :";
-			string += " stateMask=0x" + Integer.toHexString (e.stateMask) + stateMask (e.stateMask) + ",";
-			string += " keyCode=0x" + Integer.toHexString (e.keyCode) + " " + keyCode (e.keyCode) + ",";
-			string += " character=0x" + Integer.toHexString (e.character) + " " + character (e.character);
-			System.out.println (string);
-		}
-	};
-	shell.addListener (SWT.KeyDown, listener);
-	shell.addListener (SWT.KeyUp, listener);
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet26.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet26.java
deleted file mode 100644
index fa74413..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet26.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Combo example snippet: create a combo box (non-editable)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet26 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Combo combo = new Combo (shell, SWT.READ_ONLY);
-	combo.setItems (new String [] {"A", "B", "C"});
-	combo.setSize (200, 200);
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet27.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet27.java
deleted file mode 100644
index f701a4f..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet27.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Shell example snippet: open a shell minimized (iconified)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet27 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setMinimized (true);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet28.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet28.java
deleted file mode 100644
index b7c2767..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet28.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Shell example snippet: open a shell maximized (full screen)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet28 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setMaximized (true);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet29.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet29.java
deleted file mode 100644
index e6d9bfd..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet29.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Menu example snippet: create a bar and pull down menu (accelerators, mnemonics)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet29 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Menu bar = new Menu (shell, SWT.BAR);
-	shell.setMenuBar (bar);
-	MenuItem fileItem = new MenuItem (bar, SWT.CASCADE);
-	fileItem.setText ("File");
-	Menu submenu = new Menu (shell, SWT.DROP_DOWN);
-	fileItem.setMenu (submenu);
-	MenuItem item = new MenuItem (submenu, SWT.PUSH);
-	item.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			System.out.println ("Select All");
-		}
-	});
-	item.setText ("Select &All\tCtrl+A");
-	item.setAccelerator (SWT.CTRL + 'A');
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet3.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet3.java
deleted file mode 100644
index de21522..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet3.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: find a table cell from mouse down (SWT.FULL_SELECTION)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.graphics.*;
-
-public class Snippet3 {
-
-public static void main (String [] args) {
-        Display display = new Display ();
-        Shell shell = new Shell (display);
-        final Table table = new Table (shell, SWT.BORDER | SWT.V_SCROLL | SWT.FULL_SELECTION);
-        table.setHeaderVisible (true);
-        table.setLinesVisible (true);
-        final int rowCount = 64, columnCount = 4;
-        for (int i=0; i < columnCount; i++) {
-                TableColumn column = new TableColumn (table, SWT.NULL);
-                column.setText ("Column " + i);
-        }
-        for (int i=0; i < rowCount; i++) {
-                TableItem item = new TableItem (table, SWT.NULL);
-                for (int j=0; j < columnCount; j++) {
-                        item.setText (j, "Item " + i + "-" + j);
-                }
-        }
-        for (int i=0; i < columnCount; i++) {
-                table.getColumn (i).pack ();
-        }
-        Point size = table.computeSize (SWT.DEFAULT, 200);
-        table.setSize (size);
-        shell.pack ();
-        table.addListener (SWT.MouseDown, new Listener () {
-                public void handleEvent (Event event) {
-                        Point pt = new Point (event.x, event.y);
-                        TableItem item = table.getItem (pt);
-                        if (item == null) return;
-                        for (int i=0; i < columnCount; i++) {
-                                Rectangle rect = item.getBounds (i);
-                                if (rect.contains (pt)) {
-                                        int index = table.indexOf (item);
-                                        System.out.println ("Item " + index + "-" + i);
-                                }
-                        } 
-                }
-        });
-        shell.open ();
-        while (!shell.isDisposed()) {
-                if (!display.readAndDispatch ()) display.sleep ();
-        }
-        display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet30.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet30.java
deleted file mode 100644
index 47c72f4..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet30.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Program example snippet: invoke the system text editor on autoexec.bat
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.program.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet30 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Program p = Program.findProgram (".txt");
-	if (p != null) p.execute ("c:\\autoexec.bat");
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet31.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet31.java
deleted file mode 100644
index 0f85692..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet31.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tracker example snippet: create a tracker (drag when "torn off")
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet31 {
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Shell shell = new Shell (display);
-	shell.setSize (200, 200);
-	shell.open ();
-	Listener listener = new Listener () {
-		Point point = null;
-		static final int JITTER = 8;
-		public void handleEvent (Event event) {
-			switch (event.type) {
-				case SWT.MouseDown:
-					point = new Point (event.x, event.y);
-					break;
-				case SWT.MouseMove:
-					if (point == null) return;
-					int deltaX = point.x - event.x, deltaY = point.y - event.y;
-					if (Math.abs (deltaX) < JITTER && Math.abs (deltaY) < JITTER) {
-						return;
-					}
-					Tracker tracker = new Tracker (display, SWT.NONE);
-					Rectangle rect = display.map (shell, null, shell.getClientArea ());
-					rect.x -= deltaX;
-					rect.y -= deltaY;
-					tracker.setRectangles (new Rectangle [] {rect});
-					tracker.open ();
-					//FALL THROUGH
-				case SWT.MouseUp:
-					point = null;
-					break;
-			}
-		}
-	};
-	shell.addListener (SWT.MouseDown, listener);
-	shell.addListener (SWT.MouseMove, listener);
-	shell.addListener (SWT.MouseUp, listener);
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet32.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet32.java
deleted file mode 100644
index 8eb0cf3..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet32.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Program example snippet: find the icon of the program that edits .bmp files
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.program.*;
-
-public class Snippet32 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Label label = new Label (shell, SWT.NONE);
-	label.setText ("Can't find icon for .bmp");
-	Image image = null;
-	Program p = Program.findProgram (".bmp");
-	if (p != null) {
-		ImageData data = p.getImageData ();
-		if (data != null) {
-			image = new Image (display, data);
-			label.setImage (image);
-		}
-	}
-	label.pack ();
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	if (image != null) image.dispose ();
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet33.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet33.java
deleted file mode 100644
index d47b098..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet33.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * DirectoryDialog example snippet: prompt for a directory
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet33 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.open ();
-	DirectoryDialog dialog = new DirectoryDialog (shell);
-	dialog.setFilterPath ("c:\\"); //Windows specific
-	System.out.println ("RESULT=" + dialog.open ());
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet34.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet34.java
deleted file mode 100644
index 67a6089..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet34.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Label example snippet: create a label (with an image)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet34 {
-
-public static void main (String[] args) {
-	Display display = new Display();
-	Image image = new Image (display, 16, 16);
-	Color color = display.getSystemColor (SWT.COLOR_RED);
-	GC gc = new GC (image);
-	gc.setBackground (color);
-	gc.fillRectangle (image.getBounds ());
-	gc.dispose ();
-	Shell shell = new Shell (display);
-	Label label = new Label (shell, SWT.BORDER);
-	label.setImage (image);
-	label.pack ();
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep (); 
-	} 
-	image.dispose ();
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet35.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet35.java
deleted file mode 100644
index eba3ed9..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet35.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Table example snippet: create a table (no columns, no headers)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet35 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Table table = new Table (shell, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-	for (int i=0; i<12; i++) {
-		TableItem item = new TableItem (table, 0);
-		item.setText ("Item " + i);
-	}
-	table.setSize (100, 100);
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet36.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet36.java
deleted file mode 100644
index df6cc62..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet36.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * ToolBar example snippet: create a flat tool bar (images)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet36 {
-
-public static void main (String [] args) {
-	Display display = new Display();
-	Image image = new Image (display, 16, 16);
-	Color color = display.getSystemColor (SWT.COLOR_RED);
-	GC gc = new GC (image);
-	gc.setBackground (color);
-	gc.fillRectangle (image.getBounds ());
-	gc.dispose ();
-	Shell shell = new Shell (display);
-	ToolBar toolBar = new ToolBar (shell, SWT.FLAT | SWT.BORDER);
-	for (int i=0; i<12; i++) {
-		ToolItem item = new ToolItem (toolBar, SWT.DROP_DOWN);
-		item.setImage (image);
-	}
-	toolBar.pack ();
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	image.dispose ();
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet37.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet37.java
deleted file mode 100644
index a680deb..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet37.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Label example snippet: create a label (a separator)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet37 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new FillLayout ());
-	Label label1 = new Label (shell, SWT.SEPARATOR | SWT.HORIZONTAL);
-	Label label2 = new Label (shell, SWT.SEPARATOR | SWT.VERTICAL);
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet38.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet38.java
deleted file mode 100644
index 83eb2fc..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet38.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: create a table (columns, headers, lines)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet38 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Table table = new Table (shell, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
-	table.setLinesVisible (true);
-	table.setHeaderVisible (true);
-	String[] titles = {" ", "C", "!", "Description", "Resource", "In Folder", "Location"};
-	for (int i=0; i<titles.length; i++) {
-		TableColumn column = new TableColumn (table, SWT.NULL);
-		column.setText (titles [i]);
-	}	
-	int count = 128;
-	for (int i=0; i<count; i++) {
-		TableItem item = new TableItem (table, SWT.NULL);
-		item.setText (0, "x");
-		item.setText (1, "y");
-		item.setText (2, "!");
-		item.setText (3, "this stuff behaves the way I expect");
-		item.setText (4, "almost everywhere");
-		item.setText (5, "some.folder");
-		item.setText (6, "line " + i + " in nowhere");
-	}
-	for (int i=0; i<titles.length; i++) {
-		table.getColumn (i).pack ();
-	}	
-	table.setSize (table.computeSize (SWT.DEFAULT, 200));
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet39.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet39.java
deleted file mode 100644
index c8475b2..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet39.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-public class Snippet39 {
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet4.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet4.java
deleted file mode 100644
index 6a6c762..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet4.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Shell example snippet: prevent escape from closing a dialog
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet4 {
-
-	public static void main(String[] args) {
-		Display display = new Display();
-		final Shell shell = new Shell(display);
-		Button b = new Button(shell, SWT.PUSH);
-		b.setText("Open Dialog ...");
-		b.pack();
-		b.setLocation(10, 10);
-		b.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				Shell dialog = new Shell(shell, SWT.DIALOG_TRIM);
-				dialog.addListener(SWT.Traverse, new Listener() {
-					public void handleEvent(Event e) {
-						if (e.detail == SWT.TRAVERSE_ESCAPE) {
-							e.doit = false;
-						}
-					}
-				});
-				dialog.open();
-			}
-		});
-		shell.open();
-		while (!shell.isDisposed()) {
-			if (!display.readAndDispatch())
-				display.sleep();
-		}
-		display.dispose();
-	}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet40.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet40.java
deleted file mode 100644
index eb25de0..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet40.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Menu example snippet: create a popup menu (set in multiple controls)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet40 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Composite c1 = new Composite (shell, SWT.BORDER);
-	c1.setSize (100, 100);
-	Composite c2 = new Composite (shell, SWT.BORDER);
-	c2.setBounds (100, 0, 100, 100);
-	Menu menu = new Menu (shell, SWT.POP_UP);
-	MenuItem item = new MenuItem (menu, SWT.PUSH);
-	item.setText ("Popup");
-	c1.setMenu (menu);
-	c2.setMenu (menu);
-	shell.setMenu (menu);
-	shell.setSize (300, 300);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet41.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet41.java
deleted file mode 100644
index 47e0cf7..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet41.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tool Tips example snippet: create tool tips for a tab folder, tool bar and control
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet41 {
-
-public static void main (String [] args) {
-	String string = "This is a string\nwith a new line.";
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.open ();
-	TabFolder folder = new TabFolder (shell, SWT.BORDER);
-	folder.setSize (200, 200);
-	TabItem item0 = new TabItem (folder, 0);
-	item0.setToolTipText (string);
-	ToolBar bar = new ToolBar (shell, SWT.BORDER);
-	bar.setBounds (0, 200, 200, 64);
-	ToolItem item1 = new ToolItem (bar, 0);
-	item1.setToolTipText (string);
-	shell.setToolTipText (string);
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet42.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet42.java
deleted file mode 100644
index ba6ca8f..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet42.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Display example snippet: get the bounds and client area of a display
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet42 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	System.out.println ("BOUNDS=" + display.getBounds () + " CLIENT=" + display.getClientArea ());
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet43.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet43.java
deleted file mode 100644
index 6f4f245..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet43.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Caret example snippet: create a caret (using an image)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet43 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.open ();
-	Caret caret = new Caret (shell, SWT.NONE);
-	Color white = display.getSystemColor (SWT.COLOR_WHITE);
-	Color black = display.getSystemColor (SWT.COLOR_BLACK);
-	Color red = display.getSystemColor (SWT.COLOR_RED);
-	Image image = new Image (display, 20, 20);
-	GC gc = new GC (image);
-	gc.setBackground (black);
-	gc.fillRectangle (0, 0, 20, 20);
-	gc.setForeground (white);
-	gc.drawLine (0, 0, 19, 19);
-	gc.drawLine (19, 0, 0, 19);
-	gc.dispose ();
-	caret.setLocation (10, 10);
-	caret.setImage (image);
-	gc = new GC (shell);
-	gc.drawImage (image, 10, 64);
-	caret.setVisible (false);
-	gc.drawString ("Test", 12, 12);
-	caret.setVisible (true);
-	gc.dispose ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	image.dispose ();
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet44.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet44.java
deleted file mode 100644
index a67c591..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet44.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Cursor example snippet: set the hand cursor into a control
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet44 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Cursor cursor = new Cursor (display, SWT.CURSOR_HAND);
-	Shell shell = new Shell (display);
-	shell.open ();
-	final Button b = new Button (shell, 0);
-	b.setBounds (10, 10, 200, 200);
-	b.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			b.setCursor (cursor);
-		}
-	});
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	cursor.dispose ();
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet45.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet45.java
deleted file mode 100644
index 307361e..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet45.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Scale example snippet: create a scale (maximum 40, page increment 5)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet45 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Scale scale = new Scale (shell, SWT.BORDER);
-	scale.setSize (200, 64);
-	scale.setMaximum (40);
-	scale.setPageIncrement (5);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet46.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet46.java
deleted file mode 100644
index 4d01ff2..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet46.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Composite example snippet: intercept mouse events (drag a button with the mouse)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet46 {
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	final Composite composite = new Composite (shell, SWT.NULL);
-	composite.setEnabled (false);
-	composite.setLayout (new FillLayout ());
-	Button button = new Button (composite, SWT.PUSH);
-	button.setText ("Button");
-	composite.pack ();
-	composite.setLocation (10, 10);
-	final Point [] offset = new Point [1];
-	Listener listener = new Listener () {
-		public void handleEvent (Event event) {
-			switch (event.type) {
-				case SWT.MouseDown:
-					Rectangle rect = composite.getBounds ();
-					if (rect.contains (event.x, event.y)) {
-						Point pt1 = composite.toDisplay (0, 0);
-						Point pt2 = shell.toDisplay (event.x, event.y); 
-						offset [0] = new Point (pt2.x - pt1.x, pt2.y - pt1.y);
-					}
-					break;
-				case SWT.MouseMove:
-					if (offset [0] != null) {
-						Point pt = offset [0];
-						composite.setLocation (event.x - pt.x, event.y - pt.y);
-					}
-					break;
-				case SWT.MouseUp:
-					offset [0] = null;
-					break;
-			}
-		}
-	};
-	shell.addListener (SWT.MouseDown, listener);
-	shell.addListener (SWT.MouseUp, listener);
-	shell.addListener (SWT.MouseMove, listener);
-	shell.setSize (300, 300);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet47.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet47.java
deleted file mode 100644
index 5e4d5af..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet47.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ToolBar example snippet: create tool bar (normal, hot and disabled images)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet47 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-
-	Image image = new Image (display, 20, 20);
-	Color color = display.getSystemColor (SWT.COLOR_BLUE);
-	GC gc = new GC (image);
-	gc.setBackground (color);
-	gc.fillRectangle (image.getBounds ());
-	gc.dispose ();
-	
-	Image disabledImage = new Image (display, 20, 20);
-	color = display.getSystemColor (SWT.COLOR_GREEN);
-	gc = new GC (disabledImage);
-	gc.setBackground (color);
-	gc.fillRectangle (disabledImage.getBounds ());
-	gc.dispose ();
-	
-	Image hotImage = new Image (display, 20, 20);
-	color = display.getSystemColor (SWT.COLOR_RED);
-	gc = new GC (hotImage);
-	gc.setBackground (color);
-	gc.fillRectangle (hotImage.getBounds ());
-	gc.dispose ();
-	
-	ToolBar bar = new ToolBar (shell, SWT.BORDER | SWT.FLAT);
-	bar.setSize (200, 32);
-	for (int i=0; i<12; i++) {
-		ToolItem item = new ToolItem (bar, 0);
-		item.setImage (image);
-		item.setDisabledImage (disabledImage);
-		item.setHotImage (hotImage);
-		if (i % 3 == 0) item.setEnabled (false);
-	}
-	
-	shell.open ();
-	bar.getItems () [1].setImage (disabledImage);
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	image.dispose ();
-	disabledImage.dispose ();
-	hotImage.dispose ();
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet48.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet48.java
deleted file mode 100644
index 4c92853..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet48.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-/*
- * Copyright (c) 2000, 2003 IBM Corp.  All rights reserved.
- * This file is made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- */
- 
-/*
- * Canvas example snippet: scroll an image (flicker free, no double buffering)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet48 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display,
-		SWT.SHELL_TRIM | SWT.NO_BACKGROUND |
-		SWT.NO_REDRAW_RESIZE | SWT.V_SCROLL | SWT.H_SCROLL);
-	Image originalImage = null;
-	FileDialog dialog = new FileDialog (shell, SWT.OPEN);
-	dialog.setText ("Open an image file or cancel");
-	String string = dialog.open ();
-	if (string != null) {
-		originalImage = new Image (display, string);
-	}
-	if (originalImage == null) {
-		int width = 150, height = 200;
-		originalImage = new Image (display, width, height);
-		GC gc = new GC (originalImage);
-		gc.fillRectangle (0, 0, width, height);
-		gc.drawLine (0, 0, width, height);
-		gc.drawLine (0, height, width, 0);
-		gc.drawText ("Default Image", 10, 10);
-		gc.dispose ();
-	}
-	final Image image = originalImage;
-	final Point origin = new Point (0, 0);
-	final ScrollBar hBar = shell.getHorizontalBar ();
-	hBar.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			int hSelection = hBar.getSelection ();
-			int destX = -hSelection - origin.x;
-			Rectangle rect = image.getBounds ();
-			shell.scroll (destX, 0, 0, 0, rect.width, rect.height, false);
-			origin.x = -hSelection;
-		}
-	});
-	final ScrollBar vBar = shell.getVerticalBar ();
-	vBar.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			int vSelection = vBar.getSelection ();
-			int destY = -vSelection - origin.y;
-			Rectangle rect = image.getBounds ();
-			shell.scroll (0, destY, 0, 0, rect.width, rect.height, false);
-			origin.y = -vSelection;
-		}
-	});
-	shell.addListener (SWT.Resize,  new Listener () {
-		public void handleEvent (Event e) {
-			Rectangle rect = image.getBounds ();
-			Rectangle client = shell.getClientArea ();
-			hBar.setMaximum (rect.width);
-			vBar.setMaximum (rect.height);
-			hBar.setThumb (Math.min (rect.width, client.width));
-			vBar.setThumb (Math.min (rect.height, client.height));
-			int hPage = rect.width - client.width;
-			int vPage = rect.height - client.height;
-			int hSelection = hBar.getSelection ();
-			int vSelection = vBar.getSelection ();
-			if (hSelection >= hPage) {
-				if (hPage <= 0) hSelection = 0;
-				origin.x = -hSelection;
-			}
-			if (vSelection >= vPage) {
-				if (vPage <= 0) vSelection = 0;
-				origin.y = -vSelection;
-			}
-			shell.redraw ();
-		}
-	});
-	shell.addListener (SWT.Paint, new Listener () {
-		public void handleEvent (Event e) {
-			GC gc = e.gc;
-			gc.drawImage (image, origin.x, origin.y);
-			Rectangle rect = image.getBounds ();
-			Rectangle client = shell.getClientArea ();
-			int marginWidth = client.width - rect.width;
-			if (marginWidth > 0) {
-				gc.fillRectangle (rect.width, 0, marginWidth, client.height);
-			}
-			int marginHeight = client.height - rect.height;
-			if (marginHeight > 0) {
-				gc.fillRectangle (0, rect.height, client.width, marginHeight);
-			}
-		}
-	});
-	shell.setSize (200, 150);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet49.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet49.java
deleted file mode 100644
index d23f4db..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet49.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ToolBar example snippet: create tool bar (wrap on resize)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet49 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	final ToolBar toolBar = new ToolBar (shell, SWT.WRAP);
-	for (int i=0; i<12; i++) {
-		ToolItem item = new ToolItem (toolBar, SWT.PUSH);
-		item.setText ("Item " + i);
-	}
-	shell.addListener (SWT.Resize, new Listener () {
-		public void handleEvent (Event e) {
-			Rectangle rect = shell.getClientArea ();
-			Point size = toolBar.computeSize (rect.width, SWT.DEFAULT);
-			toolBar.setSize (size);
-		}
-	});
-	toolBar.pack ();
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet5.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet5.java
deleted file mode 100644
index a6f64aa..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet5.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ScrolledComposite example snippet: scroll a control in a scrolled composite
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.custom.*;
-
-public class Snippet5 {
-
-public static void main (String [] args) 
-{
-    Display display = new Display ();
-    Shell shell = new Shell (display);
-    shell.setLayout(new FillLayout());
-
-    // this button is always 400 x 400. Scrollbars appear if the window is resized to be
-    // too small to show part of the button
-    ScrolledComposite c1 = new ScrolledComposite(shell, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
-    Button b1 = new Button(c1, SWT.PUSH);
-    b1.setText("fixed size button");
-    b1.setSize(400, 400);
-    c1.setContent(b1);
-
-    // this button has a minimum size of 400 x 400. If the window is resized to be big
-    // enough to show more than 400 x 400, the button will grow in size. If the window
-    // is made too small to show 400 x 400, scrollbars will appear.
-    ScrolledComposite c2 = new ScrolledComposite(shell, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
-    Button b2 = new Button(c2, SWT.PUSH);
-    b2.setText("expanding button");
-    c2.setContent(b2);
-    c2.setExpandHorizontal(true);
-    c2.setExpandVertical(true);
-    c2.setMinWidth(400);
-    c2.setMinHeight(400);
-
-    shell.setSize(600, 300);
-    shell.open ();
-    while (!shell.isDisposed ()) {
-        if (!display.readAndDispatch ()) display.sleep ();
-    }
-    display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet50.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet50.java
deleted file mode 100644
index 9009af1..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet50.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Shell example snippet: create a dialog shell
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet50 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setText ("Shell");
-	shell.setSize (200, 200);
-	shell.open ();
-	Shell dialog = new Shell (shell);
-	dialog.setText ("Dialog");
-	dialog.setSize (200, 200);
-	dialog.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet51.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet51.java
deleted file mode 100644
index a81a0c0..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet51.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: scroll a table (set the top index)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet51 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Table table = new Table (shell, SWT.BORDER | SWT.MULTI);
-	table.setSize (200, 200);
-	for (int i=0; i<128; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		item.setText ("Item " + i);
-	}
-	table.setTopIndex (95);
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet52.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet52.java
deleted file mode 100644
index a04f0f7..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet52.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: select an index (select and scroll)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet52 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Table table = new Table (shell, SWT.BORDER | SWT.MULTI);
-	table.setSize (200, 200);
-	for (int i=0; i<128; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		item.setText ("Item " + i);
-	}
-	table.setSelection (95);
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet53.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet53.java
deleted file mode 100644
index 4280520..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet53.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Table example snippet: remove selected items
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet53 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Table table = new Table (shell, SWT.BORDER | SWT.MULTI);
-	table.setSize (200, 200);
-	for (int i=0; i<128; i++) {
-		TableItem item = new TableItem (table, SWT.NONE);
-		item.setText ("Item " + i);
-	}
-	Menu menu = new Menu (shell, SWT.POP_UP);
-	table.setMenu (menu);
-	MenuItem item = new MenuItem (menu, SWT.PUSH);
-	item.setText ("Delete Selection");
-	item.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			table.remove (table.getSelectionIndices ());
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet54.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet54.java
deleted file mode 100644
index 1b99c19..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet54.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Sash example snippet: create a sash (allow it to be moved)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet54 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Sash sash = new Sash (shell, SWT.BORDER | SWT.VERTICAL);
-	sash.setBounds (10, 10, 32, 100);
-	sash.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			sash.setBounds (e.x, e.y, e.width, e.height);
-		}
-	});
-	shell.open ();
-	sash.setFocus ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet55.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet55.java
deleted file mode 100644
index 78dc86e..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet55.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Text example snippet: resize a text control (show about 10 characters)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet55 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Text text = new Text (shell, SWT.BORDER);
-	int columns = 10;
-	GC gc = new GC (text);
-	FontMetrics fm = gc.getFontMetrics ();
-	int width = columns * fm.getAverageCharWidth ();
-	int height = fm.getHeight ();
-	gc.dispose ();
-	text.setSize (text.computeSize (width, height));
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet56.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet56.java
deleted file mode 100644
index 2becb5a..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet56.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ProgressBar example snippet: update a progress bar (from another thread)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet56 {
-
-	public static void main(String[] args) {
-		final Display display = new Display();
-		Shell shell = new Shell(display);
-		final ProgressBar bar = new ProgressBar(shell, SWT.SMOOTH);
-		bar.setBounds(10, 10, 200, 32);
-		shell.open();
-		final int maximum = bar.getMaximum();
-		new Thread() {
-			public void run() {
-				for (final int[] i = new int[1]; i[0] <= maximum; i[0]++) {
-				try {Thread.sleep (100);} catch (Throwable th) {}
-					if (display.isDisposed()) return;
-					display.asyncExec(new Runnable() {
-						public void run() {
-						if (bar.isDisposed ()) return;
-							bar.setSelection(i[0]);
-						}
-					});
-				}
-			}
-		}.start();
-		while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-		}
-		display.dispose();
-	}
-}
\ No newline at end of file
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet57.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet57.java
deleted file mode 100644
index d4c16a4..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet57.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ProgressBar example snippet: update a progress bar (from the UI thread)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet57 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	ProgressBar bar = new ProgressBar (shell, SWT.SMOOTH);
-	bar.setBounds (10, 10, 200, 32);
-	shell.open ();
-	for (int i=0; i<=bar.getMaximum (); i++) {
-		try {Thread.sleep (100);} catch (Throwable th) {}
-		bar.setSelection (i);
-	}
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet58.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet58.java
deleted file mode 100644
index 3a01609..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet58.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ToolBar example snippet: place a combo box in a tool bar
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet58 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	ToolBar bar = new ToolBar (shell, SWT.BORDER);
-	for (int i=0; i<4; i++) {
-		ToolItem item = new ToolItem (bar, 0);
-		item.setText ("Item " + i);
-	}
-	ToolItem sep = new ToolItem (bar, SWT.SEPARATOR);
-	int start = bar.getItemCount ();
-	for (int i=start; i<start+4; i++) {
-		ToolItem item = new ToolItem (bar, 0);
-		item.setText ("Item " + i);
-	}
-	Combo combo = new Combo (bar, SWT.READ_ONLY);
-	for (int i=0; i<4; i++) {
-		combo.add ("Item " + i);
-	}
-	combo.pack ();
-	sep.setWidth (combo.getSize ().x);
-	sep.setControl (combo);
-	bar.pack ();
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet59.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet59.java
deleted file mode 100644
index 54f1997..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet59.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * List example snippet: print selected items in a list
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet59 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final List list = new List (shell, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL);
-	for (int i=0; i<128; i++) list.add ("Item " + i);
-	list.setBounds (0, 0, 100, 100);
-	list.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			int [] selection = list.getSelectionIndices ();
-			for (int i=0; i<selection.length; i++) string += selection [i] + " ";
-			System.out.println ("Selection={" + string + "}");
-		}
-	});
-	list.addListener (SWT.DefaultSelection, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			int [] selection = list.getSelectionIndices ();
-			for (int i=0; i<selection.length; i++) string += selection [i] + " ";
-			System.out.println ("DefaultSelection={" + string + "}");
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet6.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet6.java
deleted file mode 100644
index 0af4470..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet6.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * GridLayout example snippet: insert widgets into a grid layout
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet6 {
-
-public static void main (String [] args) {
-    Display display = new Display ();
-    final Shell shell = new Shell (display);
-    shell.setLayout(new GridLayout());
-    final Composite c = new Composite(shell, SWT.NONE);
-    GridLayout layout = new GridLayout();
-    layout.numColumns = 3;
-    c.setLayout(layout);
-    for (int i = 0; i < 10; i++) {
-        Button b = new Button(c, SWT.PUSH);
-        b.setText("Button "+i);
-    }
-
-    Button b = new Button(shell, SWT.PUSH);
-    b.setText("add a new button at row 2 column 1");
-    final int[] index = new int[1];
-    b.addListener(SWT.Selection, new Listener() {
-        public void handleEvent(Event e) {
-            Button b = new Button(c, SWT.PUSH);
-            b.setText("Special "+index[0]);
-            index[0]++;
-            Control[] children = c.getChildren();
-            b.moveAbove(children[3]);
-            shell.layout(true);
-        }
-    });
-
-    shell.open ();
-    while (!shell.isDisposed ()) {
-        if (!display.readAndDispatch ()) display.sleep ();
-    }
-    display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet60.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet60.java
deleted file mode 100644
index 9d44959..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet60.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Display example snippet: create two one shot timers (5000 ms, 2000 ms)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.widgets.*;
-
-public class Snippet60 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setSize (200, 200);
-	shell.open ();
-	display.timerExec (5000, new Runnable () {
-		public void run () {
-			System.out.println ("5000");
-		}
-	});
-	display.timerExec (2000, new Runnable () {
-		public void run () {
-			System.out.println ("2000");
-		}
-	});
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet61.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet61.java
deleted file mode 100644
index af5fa42..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet61.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tree example snippet: print selected items in a tree
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet61 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Tree tree = new Tree (shell, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL);
-	for (int i=0; i<4; i++) {
-		TreeItem item0 = new TreeItem (tree, 0);
-		item0.setText ("Item " + i);
-		for (int j=0; j<4; j++) {
-			TreeItem item1 = new TreeItem (item0, 0);
-			item1.setText ("SubItem " + i + " " + j);
-			for (int k=0; k<4; k++) {
-				TreeItem item2 = new TreeItem (item1, 0);
-				item2.setText ("SubItem " + i + " " + j + " " + k);
-			}	
-		}
-	}
-	tree.setBounds (0, 0, 100, 100);
-	tree.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			TreeItem [] selection = tree.getSelection ();
-			for (int i=0; i<selection.length; i++) string += selection [i] + " ";
-			System.out.println ("Selection={" + string + "}");
-		}
-	});
-	tree.addListener (SWT.DefaultSelection, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			TreeItem [] selection = tree.getSelection ();
-			for (int i=0; i<selection.length; i++) string += selection [i] + " ";
-			System.out.println ("DefaultSelection={" + string + "}");
-		}
-	});
-	tree.addListener (SWT.Expand, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			System.out.println ("Expand={" + e.item + "}");
-		}
-	});
-	tree.addListener (SWT.Collapse, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			System.out.println ("Collapse={" + e.item + "}");
-		}
-	});
-	tree.getItems () [0].setExpanded (true);
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet62.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet62.java
deleted file mode 100644
index 2f7ff21..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet62.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Control example snippet: print mouse state and button (down, move, up)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet62 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	Listener listener = new Listener () {
-		public void handleEvent (Event e) {
-			String string = "Unknown";
-			switch (e.type) {
-				case SWT.MouseDown: string = "DOWN"; break;
-				case SWT.MouseMove: string = "MOVE"; break;
-				case SWT.MouseUp: string = "UP"; break;
-			}
-			string +=": button: " + e.button + ", ";
-			string += "stateMask=0x" + Integer.toHexString (e.stateMask);
-			if ((e.stateMask & SWT.BUTTON1) != 0) string += " BUTTON1";
-			if ((e.stateMask & SWT.BUTTON2) != 0) string += " BUTTON2";
-			if ((e.stateMask & SWT.BUTTON3) != 0) string += " BUTTON3";
-			System.out.println (string);
-		}
-	};
-	shell.addListener (SWT.MouseDown, listener);
-	shell.addListener (SWT.MouseMove, listener);
-	shell.addListener (SWT.MouseUp, listener);
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet63.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet63.java
deleted file mode 100644
index 129eff8..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet63.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Shell example snippet: create a dialog shell (prompt for a value)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet63 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.pack ();
-	shell.open ();
-	final boolean [] result = new boolean [1];
-	final Shell dialog = new Shell (shell, SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL);
-	dialog.setLayout (new RowLayout ());
-	final Button ok = new Button (dialog, SWT.PUSH);
-	ok.setText ("Ok");
-	Button cancel = new Button (dialog, SWT.PUSH);
-	cancel.setText ("Cancel");
-	Listener listener =new Listener () {
-		public void handleEvent (Event event) {
-			result [0] = event.widget == ok;
-			dialog.close ();
-		}
-	};
-	ok.addListener (SWT.Selection, listener);
-	cancel.addListener (SWT.Selection, listener);
-	dialog.pack ();
-	dialog.open ();
-	System.out.println ("Prompt ...");
-	while (!dialog.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	System.out.println ("Result: " + result [0]);
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet64.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet64.java
deleted file mode 100644
index 96f4feb..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet64.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Table example snippet: print selected items in a table
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet64 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Table table = new Table (shell, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL);
-	for (int i=0; i<16; i++) {
-		TableItem item = new TableItem (table, 0);
-		item.setText ("Item " + i);
-	}
-	table.setBounds (0, 0, 100, 100);
-	table.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			TableItem [] selection = table.getSelection ();
-			for (int i=0; i<selection.length; i++) string += selection [i] + " ";
-			System.out.println ("Selection={" + string + "}");
-		}
-	});
-	table.addListener (SWT.DefaultSelection, new Listener () {
-		public void handleEvent (Event e) {
-			String string = "";
-			TableItem [] selection = table.getSelection ();
-			for (int i=0; i<selection.length; i++) string += selection [i] + " ";
-			System.out.println ("DefaultSelection={" + string + "}");
-		}
-	});
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet65.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet65.java
deleted file mode 100644
index 840fcdb..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet65.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * FormLayout example snippet: create a simple dialog using form layout
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet65 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	Label label = new Label (shell, SWT.WRAP);
-	label.setText ("This is a long text string that will wrap when the dialog is resized.");
-	List list = new List (shell, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
-	list.setItems (new String [] {"Item 1", "Item2"});
-	Button button1 = new Button (shell, SWT.PUSH);
-	button1.setText ("Ok");
-	Button button2 = new Button (shell, SWT.PUSH);
-	button2.setText ("Cancel");
-	
-	final int insetX = 4, insetY = 4;
-	FormLayout formLayout = new FormLayout ();
-	formLayout.marginWidth = insetX;
-	formLayout.marginHeight = insetY;
-	shell.setLayout (formLayout);
-	
-	Point size = label.computeSize (SWT.DEFAULT, SWT.DEFAULT);
-	final FormData labelData = new FormData (size.x, SWT.DEFAULT);
-	labelData.left = new FormAttachment (0, 0);
-	labelData.right = new FormAttachment (100, 0);
-	label.setLayoutData (labelData);
-	shell.addListener (SWT.Resize, new Listener () {
-		public void handleEvent (Event e) {
-			Rectangle rect = shell.getClientArea ();
-			labelData.width = rect.width - insetX * 2;
-			shell.layout ();
-		}
-	});
-		
-	FormData button2Data = new FormData ();
-	button2Data.right = new FormAttachment (100, -insetX);
-	button2Data.bottom = new FormAttachment (100, 0);
-	button2.setLayoutData (button2Data);
-	
-	FormData button1Data = new FormData ();
-	button1Data.right = new FormAttachment (button2, -insetX);
-	button1Data.bottom = new FormAttachment (100, 0);
-	button1.setLayoutData (button1Data);
-	
-	FormData listData = new FormData ();
-	listData.left = new FormAttachment (0, 0);
-	listData.right = new FormAttachment (100, 0);
-	listData.top = new FormAttachment (label, insetY);
-	listData.bottom = new FormAttachment (button2, -insetY);
-	list.setLayoutData (listData);
-	
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet66.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet66.java
deleted file mode 100644
index 8762bd9..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet66.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * GC example snippet: implement a simple scribble program
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet66 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	Listener listener = new Listener () {
-		int lastX = 0, lastY = 0;
-		public void handleEvent (Event event) {
-			switch (event.type) {
-				case SWT.MouseMove:
-					if ((event.stateMask & SWT.BUTTON1) == 0) break;
-					GC gc = new GC (shell);
-					gc.drawLine (lastX, lastY, event.x, event.y);
-					gc.dispose ();
-					//FALL THROUGH
-				case SWT.MouseDown:
-					lastX = event.x;
-					lastY = event.y;
-					break;
-			}
-		}
-	};
-	shell.addListener (SWT.MouseDown, listener);
-	shell.addListener (SWT.MouseMove, listener);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet67.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet67.java
deleted file mode 100644
index 714fcb4..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet67.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * ToolBar example snippet: place a drop down menu in a tool bar
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet67 {
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Shell shell = new Shell (display);
-	final ToolBar toolBar = new ToolBar (shell, SWT.NONE);
-	final Menu menu = new Menu (shell, SWT.POP_UP);
-	for (int i=0; i<8; i++) {
-		MenuItem item = new MenuItem (menu, SWT.PUSH);
-		item.setText ("Item " + i);
-	}
-	final ToolItem item = new ToolItem (toolBar, SWT.DROP_DOWN);
-	item.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			if (event.detail == SWT.ARROW) {
-				Rectangle rect = item.getBounds ();
-				Point pt = new Point (rect.x, rect.y + rect.height);
-				pt = toolBar.toDisplay (pt);
-				menu.setLocation (pt.x, pt.y);
-				menu.setVisible (true);
-			}
-		}
-	});
-	toolBar.pack ();
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	menu.dispose ();
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet68.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet68.java
deleted file mode 100644
index 2400454..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet68.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Display example snippet: stop a repeating timer when a button is pressed
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet68 {
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Color red = display.getSystemColor (SWT.COLOR_RED);
-	final Color blue = display.getSystemColor (SWT.COLOR_BLUE);
-	Shell shell = new Shell (display);
-	shell.setLayout (new RowLayout ());
-	Button button = new Button (shell, SWT.PUSH);
-	button.setText ("Stop Timer");
-	final Label label = new Label (shell, SWT.BORDER);
-	label.setBackground (red);
-	final int time = 500;
-	final Runnable timer = new Runnable () {
-		public void run () {
-			if (label.isDisposed ()) return;
-			Color color = label.getBackground ().equals (red) ? blue : red;
-			label.setBackground (color);
-			display.timerExec (time, this);
-		}
-	};
-	display.timerExec (time, timer);
-	button.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event event) {
-			display.timerExec (-1, timer);
-		}
-	});
-	button.pack ();
-	label.setLayoutData (new RowData (button.getSize ()));
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet69.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet69.java
deleted file mode 100644
index 5379eda..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet69.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * FormLayout example snippet: center a label and single line text using a form layout
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet69 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Label label = new Label (shell, SWT.NONE | SWT.BORDER);
-	label.setText ("Name");
-	Text text = new Text (shell, SWT.NONE);
-
-	FormLayout layout = new FormLayout ();
-	layout.marginWidth = layout.marginHeight = 5;
-	shell.setLayout (layout);
-
-	GC gc = new GC (text);
-	FontMetrics fm = gc.getFontMetrics ();
-	int charWidth = fm.getAverageCharWidth ();
-	int width = text.computeSize (charWidth * 8, SWT.DEFAULT).x;
-	gc.dispose ();
-	FormData data = new FormData (width, SWT.DEFAULT);
-	text.setLayoutData (data);
-	data.left = new FormAttachment (label, 5);
-	data.top = new FormAttachment (label, 0, SWT.CENTER);
-	
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet7.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet7.java
deleted file mode 100644
index 48fa373..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet7.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * example snippet: create a table (lazy)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet7 {
-	
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Image image = new Image (display, 16, 16);
-	GC gc = new GC (image);
-	gc.setBackground (display.getSystemColor (SWT.COLOR_RED));
-	gc.fillRectangle (image.getBounds ());
-	gc.dispose ();
-	final Shell shell = new Shell (display);
-	shell.setText ("Lazy Table");
-	shell.setLayout (new FillLayout ());
-	final Table table = new Table (shell, SWT.BORDER | SWT.MULTI);
-	table.setSize (200, 200);
-	Thread thread = new Thread () {
-		public void run () {
-			for (int i=0; i<20000; i++) {
-				if (table.isDisposed ()) return;
-				final int [] index = new int [] {i};
-				display.syncExec (new Runnable () {
-					public void run () {
-						if (table.isDisposed ()) return;
-						TableItem item = new TableItem (table, SWT.NULL);
-						item.setText ("Table Item " + index [0]);
-						item.setImage (image);
-					}
-				});
-			}
-		}
-	};
-	thread.start ();
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	image.dispose ();
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet70.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet70.java
deleted file mode 100644
index 4c1f598..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet70.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * GC example snippet: create an icon (in memory)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet70 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Color red = display.getSystemColor (SWT.COLOR_RED);
-	Color white = display.getSystemColor (SWT.COLOR_WHITE);
-	Color black = display.getSystemColor (SWT.COLOR_BLACK);
-	
-	Image image = new Image (display, 20, 20);
-	GC gc = new GC (image);
-	gc.setBackground (red);
-	gc.fillRectangle (5, 5, 10, 10);
-	gc.dispose ();
-	ImageData imageData = image.getImageData ();
-	
-	PaletteData palette = new PaletteData (
-		new RGB [] {
-			new RGB (0, 0, 0),
-			new RGB (0xFF, 0xFF, 0xFF),
-		});
-	ImageData maskData = new ImageData (20, 20, 1, palette);
-	Image mask = new Image (display, maskData);
-	gc = new GC (mask);
-	gc.setBackground (black);
-	gc.fillRectangle (0, 0, 20, 20);
-	gc.setBackground (white);
-	gc.fillRectangle (5, 5, 10, 10);
-	gc.dispose ();
-	maskData = mask.getImageData ();
-	
-	Image icon = new Image (display, imageData, maskData);
-	Shell shell = new Shell (display);
-	Button button = new Button (shell, SWT.PUSH);
-	button.setImage (icon);
-	button.setSize (60, 60);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	icon.dispose ();
-	image.dispose ();
-	mask.dispose ();
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet71.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet71.java
deleted file mode 100644
index 6bef937..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet71.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * FormLayout example snippet: create a simple OK/CANCEL dialog using form layout
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet71 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.pack ();
-	shell.open ();
-	Shell dialog = new Shell (shell, SWT.DIALOG_TRIM);
-	Label label = new Label (dialog, SWT.NONE);
-	label.setText ("Exit the application?");
-	Button okButton = new Button (dialog, SWT.PUSH);
-	okButton.setText ("&OK");
-	Button cancelButton = new Button (dialog, SWT.PUSH);
-	cancelButton.setText ("&Cancel");
-	
-	FormLayout form = new FormLayout ();
-	form.marginWidth = form.marginHeight = 8;
-	dialog.setLayout (form);
-	FormData okData = new FormData ();
-	okData.top = new FormAttachment (label, 8);
-	okButton.setLayoutData (okData);
-	FormData cancelData = new FormData ();
-	cancelData.left = new FormAttachment (okButton, 8);
-	cancelData.top = new FormAttachment (okButton, 0, SWT.TOP);
-	cancelButton.setLayoutData (cancelData);
-	
-	dialog.setDefaultButton (okButton);
-	dialog.pack ();
-	dialog.open ();
-	
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet72.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet72.java
deleted file mode 100644
index 4397358..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet72.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * FileDialog example snippet: prompt for a file name (to save)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet72 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.open ();
-	FileDialog dialog = new FileDialog (shell, SWT.SAVE);
-	dialog.setFilterNames (new String [] {"Batch Files", "All Files (*.*)"});
-	dialog.setFilterExtensions (new String [] {"*.bat", "*.*"}); //Windows wild cards
-	dialog.setFilterPath ("c:\\"); //Windows path
-	dialog.setFileName ("fred.bat");
-	System.out.println ("Save to: " + dialog.open ());
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet73.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet73.java
deleted file mode 100644
index ccefbbf..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet73.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Menu example snippet: enable menu items dynamically (when menu shown)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet73 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Tree tree = new Tree (shell, SWT.BORDER | SWT.MULTI);
-	final Menu menu = new Menu (shell, SWT.POP_UP);
-	tree.setMenu (menu);
-	for (int i=0; i<12; i++) {
-		TreeItem treeItem = new TreeItem (tree, SWT.NULL);
-		treeItem.setText ("Item " + i);
-		MenuItem menuItem = new MenuItem (menu, SWT.PUSH);
-		menuItem.setText (treeItem.getText ());
-	}
-	menu.addListener (SWT.Show, new Listener () {
-		public void handleEvent (Event event) {
-			MenuItem [] menuItems = menu.getItems ();
-			TreeItem [] treeItems = tree.getSelection ();
-			for (int i=0; i<menuItems.length; i++) {
-				String text = menuItems [i].getText ();
-				int index = 0;
-				while (index<treeItems.length) {
-					if (treeItems [index].getText ().equals (text)) break;
-					index++;
-				}
-				menuItems [i].setEnabled (index != treeItems.length);
-			}
-		}
-	});
-	tree.setSize (200, 200);
-	shell.setSize (300, 300);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet74.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet74.java
deleted file mode 100644
index ed51116..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet74.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Caret example snippet: create a caret
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet74 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Caret caret = new Caret (shell, SWT.NONE);
-	caret.setBounds (10, 10, 2, 32);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet75.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet75.java
deleted file mode 100644
index c2ed892..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet75.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Composite example snippet: set the tab traversal order of children
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet75 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new RowLayout ());
-	
-	Composite c1 = new Composite (shell, SWT.BORDER);
-	c1.setLayout (new RowLayout ());
-	Button b1 = new Button (c1, SWT.PUSH);
-	b1.setText ("B1");
-	Button [] radios = new Button [3];
-	for (int i=0; i<radios.length; i++) {
-		radios [i] = new Button (c1, SWT.RADIO);
-		radios [i].setText ("R" + (i ==1 ? "&" : "") + i);
-	}
-	Button b2 = new Button (c1, SWT.PUSH);
-	b2.setText ("B2");
-	List l1 = new List (c1, SWT.SINGLE | SWT.BORDER);
-	l1.setItems (new String [] {"L1"});
-	Button b3 = new Button (c1, SWT.PUSH);
-	b3.setText ("B&3");
-	Button b3_1 = new Button (c1, SWT.PUSH);
-	b3_1.setText ("B3_1");
-	
-	Composite c2 = new Composite (shell, SWT.BORDER);
-	c2.setLayout (new RowLayout ());
-	Button b4 = new Button (c2, SWT.PUSH);
-	b4.setText ("B&4");
-	Button b5 = new Button (c2, SWT.PUSH);
-	b5.setText ("B&5");
-	
-	List l2 = new List (shell, SWT.SINGLE | SWT.BORDER);
-	l2.setItems (new String [] {"L2"});
-	
-	ToolBar tb1 = new ToolBar (shell, SWT.FLAT | SWT.BORDER);
-	ToolItem i1 = new ToolItem (tb1, SWT.RADIO);
-	i1.setText ("I1");
-	ToolItem i2 = new ToolItem (tb1, SWT.RADIO);
-	i2.setText ("I&2");
-	Combo combo1 = new Combo (tb1, SWT.READ_ONLY | SWT.BORDER);
-	combo1.setItems (new String [] {"C1"});
-	combo1.setText ("C1");
-	combo1.pack ();
-	ToolItem i3 = new ToolItem (tb1, SWT.SEPARATOR);
-	i3.setWidth (combo1.getSize ().x);
-	i3.setControl (combo1);
-	i3.setText ("I3");
-	ToolItem i4 = new ToolItem (tb1, SWT.PUSH);
-	i4.setText ("I4");
-	ToolItem i5 = new ToolItem (tb1, SWT.CHECK);
-	i5.setText ("I5");
-	
-	Button b6 = new Button (shell, SWT.PUSH);
-	b6.setText ("B&6");
-	
-	Composite c4 = new Composite (shell, SWT.BORDER);
-	c4.setSize (32, 32);
-	Composite c5 = new Composite (c4, SWT.BORDER);
-	c5.setSize (20, 20);
-
-	Control [] list1 = new Control [] {b2, b1, b3_1, b3};
-	c1.setTabList (list1);
-	Control [] list2 = new Control [] {c1, b6, tb1, c4, c2, l2};
-	shell.setTabList (list2);
-
-	shell.pack ();
-	shell.open ();
-	
-	Control [] x = c1.getChildren ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet76.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet76.java
deleted file mode 100644
index 171c208..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet76.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * TabFolder example snippet: create a tab folder (six pages)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet76 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	final TabFolder tabFolder = new TabFolder (shell, SWT.BORDER);
-	for (int i=0; i<6; i++) {
-		TabItem item = new TabItem (tabFolder, SWT.NULL);
-		item.setText ("TabItem " + i);
-		Button button = new Button (tabFolder, SWT.PUSH);
-		button.setText ("Page " + i);
-		item.setControl (button);
-	}
-	tabFolder.setSize (400, 200);
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet77.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet77.java
deleted file mode 100644
index 88e04f3..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet77.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Table example snippet: resize columns as table resizes
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet77 {
-
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-		
-	final Composite comp = new Composite(shell, SWT.NONE);
-	final Table table = new Table(comp, SWT.BORDER | SWT.V_SCROLL);
-	table.setHeaderVisible(true);
-	table.setLinesVisible(true);
-	final TableColumn column1 = new TableColumn(table, SWT.NONE);
-	column1.setText("Column 1");
-	final TableColumn column2 = new TableColumn(table, SWT.NONE);
-	column2.setText("Column 2");
-	for (int i = 0; i < 10; i++) {
-		TableItem item = new TableItem(table, SWT.NONE);
-		item.setText(new String[] {"item 0" + i, "item 1"+i});
-	}
-	comp.addControlListener(new ControlAdapter() {
-		public void controlResized(ControlEvent e) {
-			Rectangle area = comp.getClientArea();
-			Point preferredSize = table.computeSize(SWT.DEFAULT, SWT.DEFAULT);
-			int width = area.width - 2*table.getBorderWidth();
-			if (preferredSize.y > area.height) {
-				// Subtract the scrollbar width from the total column width
-				// if a vertical scrollbar will be required
-				Point vBarSize = table.getVerticalBar().getSize();
-				width -= vBarSize.x;
-			}
-			Point oldSize = table.getSize();
-			if (oldSize.x > area.width) {
-				// table is getting smaller so make the columns 
-				// smaller first and then resize the table to
-				// match the client area width
-				column1.setWidth(width/3);
-				column2.setWidth(width - column1.getWidth());
-				table.setSize(area.width, area.height);
-			} else {
-				// table is getting bigger so make the table 
-				// bigger first and then make the columns wider
-				// to match the client area width
-				table.setSize(area.width, area.height);
-				column1.setWidth(width/3);
-				column2.setWidth(width - column1.getWidth());
-			}
-		}
-	});
-		
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet78.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet78.java
deleted file mode 100644
index bb4301f..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet78.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Drag and Drop example snippet: drag text between two labels
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.dnd.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet78 {
-
-public static void main (String [] args) {
-	
-	Display display = Display.getDefault ();
-	final Shell shell = new Shell (display);
-	shell.setLayout(new FillLayout());
-	final Label label1 = new Label (shell, SWT.BORDER);
-	label1.setText ("TEXT");
-	final Label label2 = new Label (shell, SWT.BORDER);
-	setDragDrop (label1);
-	setDragDrop (label2);
-	shell.setSize (200, 200);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-public static void setDragDrop (final Label label) {
-	
-	Transfer[] types = new Transfer[] {TextTransfer.getInstance()};
-	int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;
-	
-	final DragSource source = new DragSource (label, operations);
-	source.setTransfer(types);
-	source.addDragListener (new DragSourceListener () {
-		public void dragStart(DragSourceEvent event) {
-			event.doit = (label.getText ().length () != 0);
-		};
-		public void dragSetData (DragSourceEvent event) {
-			event.data = label.getText ();
-		}
-		public void dragFinished(DragSourceEvent event) {
-			if (event.detail == DND.DROP_MOVE)
-				label.setText ("");
-		}
-	});
-
-	DropTarget target = new DropTarget(label, operations);
-	target.setTransfer(types);
-	target.addDropListener (new DropTargetAdapter() {
-		public void drop(DropTargetEvent event) {
-			if (event.data == null) {
-				event.detail = DND.DROP_NONE;
-				return;
-			}
-			label.setText ((String) event.data);
-		}
-	});
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet79.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet79.java
deleted file mode 100644
index 46714a2..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet79.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Drag and Drop example snippet: define my own data transfer type
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import java.io.*;
-import org.eclipse.swt.dnd.*;
-
-public class Snippet79 extends ByteArrayTransfer {
-
-	/* The data being transferred is an array of type MyType which is define as: */
-	 public static class MyType {
-	 	String fileName;
-	 	long fileLength;
-	 	long lastModified;
-	 }
-	 
-	private static final String MYTYPENAME = "name_for_my_type";
-	private static final int MYTYPEID = registerType(MYTYPENAME);
-	private static Snippet79 _instance = new Snippet79();
-	
-public static Snippet79 getInstance () {
-	return _instance;
-}
-public void javaToNative (Object object, TransferData transferData) {
-	if (object == null || !(object instanceof MyType[])) return;
-	
-	if (isSupportedType(transferData)) {
-		MyType[] myTypes = (MyType[]) object;	
-		try {
-			// write data to a byte array and then ask super to convert to pMedium
-			ByteArrayOutputStream out = new ByteArrayOutputStream();
-			DataOutputStream writeOut = new DataOutputStream(out);
-			for (int i = 0, length = myTypes.length; i < length;  i++){
-				byte[] buffer = myTypes[i].fileName.getBytes();
-				writeOut.writeInt(buffer.length);
-				writeOut.write(buffer);
-				writeOut.writeLong(myTypes[i].fileLength);
-				writeOut.writeLong(myTypes[i].lastModified);
-			}
-			byte[] buffer = out.toByteArray();
-			writeOut.close();
-
-			super.javaToNative(buffer, transferData);
-			
-		} catch (IOException e) {
-		}
-	}
-}
-public Object nativeToJava(TransferData transferData){	
-
-	if (isSupportedType(transferData)) {
-		
-		byte[] buffer = (byte[])super.nativeToJava(transferData);
-		if (buffer == null) return null;
-		
-		MyType[] myData = new MyType[0];
-		try {
-			ByteArrayInputStream in = new ByteArrayInputStream(buffer);
-			DataInputStream readIn = new DataInputStream(in);
-			while(readIn.available() > 20) {
-				MyType datum = new MyType();
-				int size = readIn.readInt();
-				byte[] name = new byte[size];
-				readIn.read(name);
-				datum.fileName = new String(name);
-				datum.fileLength = readIn.readLong();
-				datum.lastModified = readIn.readLong();
-				MyType[] newMyData = new MyType[myData.length + 1];
-				System.arraycopy(myData, 0, newMyData, 0, myData.length);
-				newMyData[myData.length] = datum;
-				myData = newMyData;
-			}
-			readIn.close();
-		} catch (IOException ex) {
-			return null;
-		}
-		return myData;
-	}
-
-	return null;
-}
-protected String[] getTypeNames(){
-	return new String[]{MYTYPENAME};
-}
-protected int[] getTypeIds(){
-	return new int[] {MYTYPEID};
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet8.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet8.java
deleted file mode 100644
index 59f54da..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet8.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Tree example snippet: create a tree (lazy)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-import java.io.*;
-
-public class Snippet8 {
-	
-public static void main (String [] args) {
-	final Display display = new Display ();
-	final Shell shell = new Shell (display);
-	shell.setText ("Lazy Tree");
-	shell.setLayout (new FillLayout ());
-	final Tree tree = new Tree (shell, SWT.BORDER);
-	File [] roots = File.listRoots ();
-	for (int i=0; i<roots.length; i++) {
-		TreeItem root = new TreeItem (tree, 0);
-		root.setText (roots [i].toString ());
-		root.setData (roots [i]);
-		new TreeItem (root, 0);
-	}
-	tree.addListener (SWT.Expand, new Listener () {
-		public void handleEvent (final Event event) {
-			final TreeItem root = (TreeItem) event.item;
-			TreeItem [] items = root.getItems ();
-			for (int i= 0; i<items.length; i++) {
-				if (items [i].getData () != null) return;
-				items [i].dispose ();
-			}
-			File file = (File) root.getData ();
-			File [] files = file.listFiles ();
-			if (files == null) return;
-			for (int i= 0; i<files.length; i++) {
-				TreeItem item = new TreeItem (root, 0);
-				item.setText (files [i].getName ());
-				item.setData (files [i]);
-				if (files [i].isDirectory()) {
-					new TreeItem (item, 0);
-					root.setExpanded (false);
-				}
-			}
-		}
-	});
-	Point size = tree.computeSize (300, SWT.DEFAULT);
-	int width = Math.max (300, size.x);
-	int height = Math.max (300, size.y);
-	shell.setSize (shell.computeSize (width, height));
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet80.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet80.java
deleted file mode 100644
index 15aa03c..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet80.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tree example snippet: limit selection to items that match a pattern
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet80 {
-	
-public static void main(String[] args) {
-	final Display display = new Display();
-	final Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	final Tree tree = new Tree(shell, SWT.BORDER | SWT.MULTI);
-	for (int i = 0; i < 2; i++) {
-		TreeItem item = new TreeItem(tree, SWT.NONE);
-		item.setText("item " + i);
-		for (int j = 0; j < 2; j++) {
-			TreeItem subItem = new TreeItem(item, SWT.NONE);
-			subItem.setText("item " + j);
-			for (int k = 0; k < 2; k++) {
-				TreeItem subsubItem = new TreeItem(subItem, SWT.NONE);
-				subsubItem.setText("item " + k);
-			}
-		}
-	}
-	
-	tree.addSelectionListener(new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent e) {
-			TreeItem[] selection = tree.getSelection();
-			TreeItem[] revisedSelection = new TreeItem[0];
-			for (int i = 0; i < selection.length; i++) {
-				String text = selection[i].getText();
-				if (text.indexOf("1") > 0) {
-					TreeItem[] newSelection = new TreeItem[revisedSelection.length + 1];
-					System.arraycopy(revisedSelection, 0, newSelection, 0, revisedSelection.length);
-					newSelection[revisedSelection.length] = selection[i];
-					revisedSelection = newSelection;
-				}
-			}
-			tree.setSelection(revisedSelection);
-		}
-	});
-
-	shell.setSize(300, 300);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet81.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet81.java
deleted file mode 100644
index ce49638..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet81.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * OLE and ActiveX example snippet: browse the typelibinfo for a program id
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.internal.ole.win32.*;
-import org.eclipse.swt.ole.win32.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet81 {
-	
-public static void main(String[] args) {
-	
-	if (args.length == 0) {
-		System.out.println("Usage: java Main <program id>");
-		return;
-	}
-
-	String progID = args[0];
-	
-	Shell shell = new Shell();
-
-	OleFrame frame = new OleFrame(shell, SWT.NONE);
-	OleControlSite site = null;
-	OleAutomation auto = null;
-	try {
-		site = new OleControlSite(frame, SWT.NONE, progID);	
-		auto = new OleAutomation(site);
-	} catch (SWTException ex) {
-		System.out.println("Unable to open type library for "+progID);
-		return;
-	}
-		
-	TYPEATTR typeattr = auto.getTypeInfoAttributes();
-	if (typeattr != null) {		
-		if (typeattr.cFuncs > 0) System.out.println("Functions for "+progID+" :\n");
-		for (int i = 0; i < typeattr.cFuncs; i++) {			
-			OleFunctionDescription data = auto.getFunctionDescription(i);
-			String argList = "";
-			int firstOptionalArgIndex = data.args.length - data.optionalArgCount;
-			for (int j = 0; j < data.args.length; j++) {
-				argList += "[";
-				if (j >= firstOptionalArgIndex) argList += "optional, ";
-				argList += getDirection(data.args[j].flags)+"] "+getTypeName(data.args[j].type)+" "+data.args[j].name;
-				if ( j < data.args.length - 1) argList += ", ";
-			}			
-			System.out.println(getInvokeKind(data.invokeKind)+" (id = "+data.id+") : "
-					        +"\n\tSignature   : "+getTypeName(data.returnType)+" "+data.name+"("+argList+")"
-			                    +"\n\tDescription : "+data.documentation
-			                    +"\n\tHelp File   : "+data.helpFile+"\n");
-		}
-		
-		if (typeattr.cVars > 0) System.out.println("\n\nVariables for "+progID+" :\n");
-		for (int i = 0; i < typeattr.cVars; i++) {
-			OlePropertyDescription data = auto.getPropertyDescription(i);
-			System.out.println("PROPERTY (id = "+data.id+") :"
-			                    +"\n\tName : "+data.name
-			                    +"\n\tType : "+getTypeName(data.type)+"\n");
-		}
-	}
-	
-	auto.dispose();
-	shell.dispose();
-
-}
-private static String getTypeName(int type) {
-	switch (type) {
-		case OLE.VT_BOOL : return "boolean";
-		case OLE.VT_R4 : return "float";
-		case OLE.VT_R8 : return "double";
-		case OLE.VT_I4 : return "int";
-		case OLE.VT_DISPATCH : return "IDispatch";
-		case OLE.VT_UNKNOWN : return "IUnknown";
-		case OLE.VT_I2 : return "short";
-		case OLE.VT_BSTR : return "String";
-		case OLE.VT_VARIANT : return "Variant";
-		case OLE.VT_CY : return "Currency";
-		case OLE.VT_DATE : return "Date";
-		case OLE.VT_UI1 : return "unsigned char";
-		case OLE.VT_UI4 : return "unsigned int";
-		case OLE.VT_USERDEFINED : return "UserDefined";
-		case OLE.VT_HRESULT : return "int";
-		case OLE.VT_VOID : return "void";
-		
-		case OLE.VT_BYREF | OLE.VT_BOOL : return "boolean *";
-		case OLE.VT_BYREF | OLE.VT_R4 : return "float *";
-		case OLE.VT_BYREF | OLE.VT_R8 : return "double *";
-		case OLE.VT_BYREF | OLE.VT_I4 : return "int *";
-		case OLE.VT_BYREF | OLE.VT_DISPATCH : return "IDispatch *";
-		case OLE.VT_BYREF | OLE.VT_UNKNOWN : return "IUnknown *";
-		case OLE.VT_BYREF | OLE.VT_I2 : return "short *";
-		case OLE.VT_BYREF | OLE.VT_BSTR : return "String *";
-		case OLE.VT_BYREF | OLE.VT_VARIANT : return "Variant *";
-		case OLE.VT_BYREF | OLE.VT_CY : return "Currency *";
-		case OLE.VT_BYREF | OLE.VT_DATE : return "Date *";
-		case OLE.VT_BYREF | OLE.VT_UI1 : return "unsigned char *";
-		case OLE.VT_BYREF | OLE.VT_UI4 : return "unsigned int *";
-		case OLE.VT_BYREF | OLE.VT_USERDEFINED : return "UserDefined *";
-	}
-	return "unknown "+ type;	
-}
-private static String getDirection(int direction){
-	String dirString = "";
-	boolean comma = false;
-	if ((direction & OLE.IDLFLAG_FIN) != 0) {
-		dirString += "in";
-		comma = true;
-	}
-	if ((direction & OLE.IDLFLAG_FOUT) != 0){
-		if (comma) dirString += ", ";
-		dirString += "out";
-		comma = true;
-	}
-	if ((direction & OLE.IDLFLAG_FLCID) != 0){
-		if (comma) dirString += ", ";
-		dirString += "lcid";
-		comma = true;
-	}
-	if ((direction & OLE.IDLFLAG_FRETVAL) != 0){
-		if (comma) dirString += ", "; 
-		dirString += "retval";
-	}
-	
-	return dirString;
-}
-private static String getInvokeKind(int invKind) {
-	switch (invKind) {
-		case OLE.INVOKE_FUNC : return "METHOD";
-		case OLE.INVOKE_PROPERTYGET : return "PROPERTY GET";
-		case OLE.INVOKE_PROPERTYPUT : return "PROPERTY PUT";
-		case OLE.INVOKE_PROPERTYPUTREF : return "PROPERTY PUT BY REF";
-	}
-	return "unknown "+invKind;
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet82.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet82.java
deleted file mode 100644
index aff7291..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet82.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * CTabFolder example snippet: prevent an item from closing
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.custom.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet82 {
-	
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	CTabFolder folder = new CTabFolder(shell, SWT.CLOSE);
-	for (int i = 0; i < 4; i++) {
-		CTabItem item = new CTabItem(folder, SWT.NONE);
-		item.setText("Item "+i);
-		Text text = new Text(folder, SWT.BORDER | SWT.MULTI);
-		text.setText("Content for Item "+i);
-		item.setControl(text);
-	}
-	
-	final CTabItem specialItem = new CTabItem(folder, SWT.NONE);
-	specialItem.setText("Don't Close Me");
-	Text text = new Text(folder, SWT.BORDER | SWT.MULTI);
-	text.setText("This tab can never be closed");
-	specialItem.setControl(text);
-		
-	folder.addCTabFolder2Listener(new CTabFolder2Adapter() {
-		public void close(CTabFolderEvent event) {
-			if (event.item.equals(specialItem)) {
-				event.doit = false;
-			}
-		}
-	});
-	shell.setSize(400, 400);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet83.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet83.java
deleted file mode 100644
index d8618ee..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet83.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Drag and Drop example snippet: determine data types available (win32 only)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.dnd.*;
-import org.eclipse.swt.internal.ole.win32.*;
-import org.eclipse.swt.internal.win32.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet83 extends ByteArrayTransfer {
-
-private static Snippet83 _instance = new Snippet83();
-private int[] ids;
-private String[] names;
-	
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	Canvas canvas = new Canvas(shell, SWT.NONE);
-	DropTarget target = new DropTarget(canvas, DND.DROP_DEFAULT | DND.DROP_LINK);
-	target.setTransfer(new Transfer[] {Snippet83.getInstance()});
-	target.addDropListener(new DropTargetAdapter() {
-		public void dragEnter(DropTargetEvent event) {			
-			String ops = null;
-			if ((event.operations & DND.DROP_COPY) != 0) ops += "Copy;";
-			if ((event.operations & DND.DROP_MOVE) != 0) ops += "Move;";
-			if ((event.operations & DND.DROP_LINK) != 0) ops += "Link;";
-			System.out.println("Allowed Operations are "+ops);
-			
-			TransferData[] data = event.dataTypes;
-			for (int i = 0; i < data.length; i++) {
-				int id = data[i].type;
-				String name = getNameFromId(id);
-				System.out.println("Data type is "+id+" "+name);
-			}
-		}
-	});
-	
-	shell.setSize(400, 400);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-
-public static Snippet83 getInstance () {
-	return _instance;
-}
-Snippet83() {
-	ids = new int[50000];
-	names = new String[50000];
-	for (int i = 0; i < ids.length; i++) {
-		ids[i] = i;
-		names[i] = getNameFromId(i);
-	}
-}
-public void javaToNative (Object object, TransferData transferData) {
-}
-public Object nativeToJava(TransferData transferData){
-	return "Hello World";
-}
-protected String[] getTypeNames(){
-	return names;
-}
-protected int[] getTypeIds(){
-	return ids;
-}
-static String getNameFromId(int id) {
-	String name = null;
-	int maxSize = 128;
-	TCHAR buffer = new TCHAR(0, maxSize);
-	int size = COM.GetClipboardFormatName(id, buffer, maxSize);
-	String type = null;
-	if (size != 0) {
-		name = buffer.toString(0, size);
-	} else {
-		switch (id) {
-			case COM.CF_HDROP:
-				name = "CF_HDROP";
-				break;
-			case COM.CF_TEXT:
-				name = "CF_TEXT";
-				break;
-			case COM.CF_BITMAP:
-				name = "CF_BITMAP";
-				break;
-			case COM.CF_METAFILEPICT:
-				name = "CF_METAFILEPICT";
-				break;
-			case COM.CF_SYLK:
-				name = "CF_SYLK";
-				break;
-			case COM.CF_DIF:
-				name = "CF_DIF";
-				break;
-			case COM.CF_TIFF:
-				name = "CF_TIFF";
-				break;
-			case COM.CF_OEMTEXT:
-				name = "CF_OEMTEXT";
-				break;
-			case COM.CF_DIB:
-				name = "CF_DIB";
-				break;
-			case COM.CF_PALETTE:
-				name = "CF_PALETTE";
-				break;
-			case COM.CF_PENDATA:
-				name = "CF_PENDATA";
-				break;
-			case COM.CF_RIFF:
-				name = "CF_RIFF";
-				break;
-			case COM.CF_WAVE:
-				name = "CF_WAVE";
-				break;
-			case COM.CF_UNICODETEXT:
-				name = "CF_UNICODETEXT";
-				break;
-			case COM.CF_ENHMETAFILE:
-				name = "CF_ENHMETAFILE";
-				break;
-			case COM.CF_LOCALE:
-				name = "CF_LOCALE";
-				break;
-			case COM.CF_MAX:
-				name = "CF_MAX";
-				break;
-		}
-		
-	}
-	return name;
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet84.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet84.java
deleted file mode 100644
index 03c67e1..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet84.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Drag and Drop example snippet: define a default operation (in this example, Copy)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.dnd.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet84 {
-	
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	final Text text = new Text(shell, SWT.BORDER | SWT.MULTI);
-	DropTarget target = new DropTarget(text, DND.DROP_DEFAULT | DND.DROP_COPY);
-	target.setTransfer(new Transfer[] {TextTransfer.getInstance()});
-	target.addDropListener(new DropTargetAdapter() {
-		public void dragEnter(DropTargetEvent event) {
-			if (event.detail == DND.DROP_DEFAULT) event.detail = DND.DROP_COPY;
-		}
-		public void dragOperationChanged(DropTargetEvent event) {
-			if (event.detail == DND.DROP_DEFAULT) event.detail = DND.DROP_COPY;
-		}
-		public void drop(DropTargetEvent event) {
-			text.setText((String)event.data);
-		}
-	});
-	
-	shell.setSize(400, 400);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet85.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet85.java
deleted file mode 100644
index eb6abfd..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet85.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * PocketPC example snippet: Hello World
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet85 {
-
-public static void main(String[] args) {
-	Display display = new Display();
-
-	/* 
-	 * Create a Shell with the default style
-	 * i.e. full screen, no decoration on PocketPC.
-	 */
-	Shell shell = new Shell(display);
-
-	/* 
-	 * Set a text so that the top level Shell
-	 * also appears in the PocketPC task list
-	 */
-	shell.setText("Main");
-
-	/*
-	 * Set a menubar to follow UI guidelines
-	 * on PocketPC
-	 */
-	Menu mb = new Menu(shell, SWT.BAR);
-	shell.setMenuBar(mb);
-
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet86.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet86.java
deleted file mode 100644
index 74b30bb..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet86.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * PocketPC Shell example snippet: 'Ok' button
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet86 {
-
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display, SWT.CLOSE);
-	shell.setText("Main");
-	Menu mb = new Menu(shell, SWT.BAR);
-	shell.setMenuBar(mb);
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet87.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet87.java
deleted file mode 100644
index a829f08..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet87.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * PocketPC Shell example snippet: resize automatically as SIP is on or off
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet87 {
-
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display, SWT.RESIZE);
-	shell.setText("Main");
-	Menu mb = new Menu(shell, SWT.BAR);
-	shell.setMenuBar(mb);
-	/* Add a button to make the resize more visual */
-	FillLayout layout = new FillLayout();
-	shell.setLayout(layout);
-	Button button = new Button(shell, SWT.PUSH);
-	button.setText("Main");
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet88.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet88.java
deleted file mode 100644
index 3b89f60..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet88.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * TableEditor example snippet: edit the text of a table item (in place)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.custom.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet88 {
-	
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new FillLayout());
-	final Table table = new Table(shell, SWT.FULL_SELECTION | SWT.HIDE_SELECTION);
-	TableColumn column1 = new TableColumn(table, SWT.NONE);
-	TableColumn column2 = new TableColumn(table, SWT.NONE);
-	for (int i = 0; i < 10; i++) {
-		TableItem item = new TableItem(table, SWT.NONE);
-		item.setText(new String[] {"item " + i, "edit this value"});
-	}
-	column1.pack();
-	column2.pack();
-	
-	final TableEditor editor = new TableEditor(table);
-	//The editor must have the same size as the cell and must
-	//not be any smaller than 50 pixels.
-	editor.horizontalAlignment = SWT.LEFT;
-	editor.grabHorizontal = true;
-	editor.minimumWidth = 50;
-	// editing the second column
-	final int EDITABLECOLUMN = 1;
-	
-	table.addSelectionListener(new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent e) {
-			// Clean up any previous editor control
-			Control oldEditor = editor.getEditor();
-			if (oldEditor != null) oldEditor.dispose();
-	
-			// Identify the selected row
-			TableItem item = (TableItem)e.item;
-			if (item == null) return;
-	
-			// The control that will be the editor must be a child of the Table
-			Text newEditor = new Text(table, SWT.NONE);
-			newEditor.setText(item.getText(EDITABLECOLUMN));
-			newEditor.addModifyListener(new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					Text text = (Text)editor.getEditor();
-					editor.getItem().setText(EDITABLECOLUMN, text.getText());
-				}
-			});
-			newEditor.selectAll();
-			newEditor.setFocus();
-			editor.setEditor(newEditor, item, EDITABLECOLUMN);
-		}
-	});
-	shell.setSize(300, 300);
-	shell.open();
-	
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet89.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet89.java
deleted file mode 100644
index 0111864..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet89.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Menu example snippet: create a menu with radio items
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.events.*;
-
-public class Snippet89 {
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	Menu menu = new Menu (shell, SWT.POP_UP);
-	for (int i=0; i<4; i++) {
-		MenuItem item = new MenuItem (menu, SWT.RADIO);
-		item.setText ("Item " + i);
-		item.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				MenuItem item = (MenuItem)e.widget;
-				if (item.getSelection ()) {
-					System.out.println (item + " selected");
-				} else {
-					System.out.println (item + " unselected");
-				}
-			}
-		});
-	}
-	shell.setMenu (menu);
-	shell.setSize (300, 300);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet9.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet9.java
deleted file mode 100644
index 4dae67c..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet9.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Composite example snippet: scroll a child control automatically
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet9 {
-	
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display, SWT.SHELL_TRIM | SWT.H_SCROLL | SWT.V_SCROLL);
-	final Composite composite = new Composite (shell, SWT.BORDER);
-	composite.setSize (200, 400);
-	final ScrollBar hBar = shell.getHorizontalBar ();
-	hBar.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			Point location = composite.getLocation ();
-			location.x = -hBar.getSelection ();
-			composite.setLocation (location);
-		}
-	});
-	final ScrollBar vBar = shell.getVerticalBar ();
-	vBar.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			Point location = composite.getLocation ();
-			location.y = -vBar.getSelection ();
-			composite.setLocation (location);
-		}
-	});
-	shell.addListener (SWT.Resize,  new Listener () {
-		public void handleEvent (Event e) {
-			Point size = composite.getSize ();
-			Rectangle rect = shell.getClientArea ();
-			hBar.setMaximum (size.x);
-			vBar.setMaximum (size.y);
-			hBar.setThumb (Math.min (size.x, rect.width));
-			vBar.setThumb (Math.min (size.y, rect.height));
-			int hPage = size.x - rect.width;
-			int vPage = size.y - rect.height;
-			int hSelection = hBar.getSelection ();
-			int vSelection = vBar.getSelection ();
-			Point location = composite.getLocation ();
-			if (hSelection >= hPage) {
-				if (hPage <= 0) hSelection = 0;
-				location.x = -hSelection;
-			}
-			if (vSelection >= vPage) {
-				if (vPage <= 0) vSelection = 0;
-				location.y = -vSelection;
-			}
-			composite.setLocation (location);
-		}
-	});
-	shell.open ();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet90.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet90.java
deleted file mode 100644
index 0511208..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet90.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Tree example snippet: detect mouse down in a tree item
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet90 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Tree tree = new Tree (shell, SWT.BORDER | SWT.MULTI);
-	for (int i=0; i<12; i++) {
-		TreeItem treeItem = new TreeItem (tree, SWT.NULL);
-		treeItem.setText ("Item " + i);
-	}
-	tree.addListener (SWT.MouseDown, new Listener () {
-		public void handleEvent (Event event) {
-			Point point = new Point (event.x, event.y);
-			TreeItem item = tree.getItem (point);
-			if (item != null) {
-				System.out.println ("Mouse down: " + item);
-			}
-		}
-	});
-	tree.setSize (200, 200);
-	shell.setSize (300, 300);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet91.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet91.java
deleted file mode 100644
index bbc8f6d..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet91.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Drag and Drop example snippet: drag leaf items in a tree
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.dnd.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet91 {
-
-public static void main (String [] args) {
-	
-	Display display = Display.getDefault ();
-	final Shell shell = new Shell (display);
-	shell.setLayout(new FillLayout());
-	final Tree tree = new Tree(shell, SWT.BORDER);
-	for (int i = 0; i < 3; i++) {
-		TreeItem item = new TreeItem(tree, SWT.NONE);
-		item.setText("item "+i);
-		for (int j = 0; j < 3; j++) {
-			TreeItem subItem = new TreeItem(item, SWT.NONE);
-			subItem.setText("item "+i+" "+j);
-			for (int k = 0; k < 3; k++) {
-				TreeItem subsubItem = new TreeItem(subItem, SWT.NONE);
-				subsubItem.setText("item "+i+" "+j+" "+k);
-			}
-		}
-	}
-	
-	Transfer[] types = new Transfer[] {TextTransfer.getInstance()};
-	int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;
-	
-	final DragSource source = new DragSource (tree, operations);
-	source.setTransfer(types);
-	final TreeItem[] dragSourceItem = new TreeItem[1];
-	source.addDragListener (new DragSourceListener () {
-		public void dragStart(DragSourceEvent event) {
-			TreeItem[] selection = tree.getSelection();
-			if (selection.length > 0 && selection[0].getItemCount() == 0) {
-				event.doit = true;
-				dragSourceItem[0] = selection[0];
-			} else {
-				event.doit = false;
-			}
-		};
-		public void dragSetData (DragSourceEvent event) {
-			event.data = dragSourceItem[0].getText();
-		}
-		public void dragFinished(DragSourceEvent event) {
-			if (event.detail == DND.DROP_MOVE)
-				dragSourceItem[0].dispose();
-				dragSourceItem[0] = null;
-		}
-	});
-
-	DropTarget target = new DropTarget(tree, operations);
-	target.setTransfer(types);
-	target.addDropListener (new DropTargetAdapter() {
-		public void dragOver(DropTargetEvent event) {
-			event.feedback = DND.FEEDBACK_EXPAND | DND.FEEDBACK_SCROLL | DND.FEEDBACK_SELECT;
-		}
-		public void drop(DropTargetEvent event) {
-			if (event.data == null) {
-				event.detail = DND.DROP_NONE;
-				return;
-			}
-			String text = (String)event.data;
-			if (event.item == null) {
-				TreeItem item = new TreeItem(tree, SWT.NONE);
-				item.setText(text);
-			} else {
-				TreeItem parent = (TreeItem)event.item;
-				TreeItem item = new TreeItem(parent, SWT.NONE);
-				item.setText(text);
-			}
-		}
-	});
-
-	shell.setSize (400, 400);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet92.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet92.java
deleted file mode 100644
index 1dbd768..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet92.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Cursor example snippet: create a cursor from a source and a mask
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet92 {
-
-public static void main (String [] args) {
-	Display display = new Display();
-	Color white = display.getSystemColor (SWT.COLOR_WHITE);
-	Color black = display.getSystemColor (SWT.COLOR_BLACK);
-	
-	//Create a source ImageData of depth 1 (monochrome)
-	PaletteData palette = new PaletteData (new RGB [] {white.getRGB(), black.getRGB(),});
-	ImageData sourceData = new ImageData (20, 20, 1, palette);
-	for (int i = 0; i < 10; i ++) {
-		for (int j = 0; j < 20; j++) {
-			sourceData.setPixel(i, j, 1);
-		}
-	}
-	
-	//Create a mask ImageData of depth 1 (monochrome)
-	palette = new PaletteData (new RGB [] {white.getRGB(), black.getRGB(),});
-	ImageData maskData = new ImageData (20, 20, 1, palette);
-	for (int i = 0; i < 20; i ++) {
-		for (int j = 0; j < 10; j++) {
-			maskData.setPixel(i, j, 1);
-		}
-	}
-	//Create cursor
-	Cursor cursor = new Cursor(display, sourceData, maskData, 10, 10);
-	
-	Shell shell = new Shell(display);
-	final Image source = new Image (display,sourceData);
-	final Image mask = new Image (display, maskData);
-	//Draw source and mask just to show what they look like
-	shell.addPaintListener(new PaintListener() {
-		public void paintControl(PaintEvent e) {
-			GC gc = e.gc;
-			gc.drawString("source: ", 10, 10);
-			gc.drawImage(source, 0, 0, 20, 20, 50, 10, 20, 20);
-			gc.drawString("mask: ",10, 40);
-			gc.drawImage(mask, 0, 0, 20, 20, 50, 40, 20, 20);
-		}
-	});
-	shell.setSize(150, 150);
-	shell.open();
-	shell.setCursor(cursor);
-	
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	cursor.dispose();
-	source.dispose();
-	mask.dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet93.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet93.java
deleted file mode 100644
index 617182f..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet93.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * GC example snippet: measure a string
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-
-public class Snippet93 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	Shell shell = new Shell (display);
-	shell.setLayout (new RowLayout ());
-	Label label = new Label (shell, SWT.NULL);
-	GC gc = new GC (label);
-	Point size = gc.textExtent ("Hello");
-	gc.dispose ();
-	label.setText ("Hello -> " + size);
-	shell.pack ();
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet94.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet94.java
deleted file mode 100644
index 7ac0764..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet94.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * Clipboard example snippet: copy and paste data with the clipboard
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.dnd.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet94 {
-
-public static void main( String[] args) {
-	Display display = Display.getDefault ();
-	final Clipboard cb = new Clipboard(display);
-	final Shell shell = new Shell (display);
-	shell.setLayout(new FormLayout());
-	final Text text = new Text(shell, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
-	
-	Button copy = new Button(shell, SWT.PUSH);
-	copy.setText("Copy");
-	copy.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			String textData = text.getSelectionText();
-			TextTransfer textTransfer = TextTransfer.getInstance();
-			cb.setContents(new Object[]{textData}, new Transfer[]{textTransfer});
-		}
-	});
-	
-	Button paste = new Button(shell, SWT.PUSH);
-	paste.setText("Paste");
-	paste.addListener (SWT.Selection, new Listener () {
-		public void handleEvent (Event e) {
-			TextTransfer transfer = TextTransfer.getInstance();
-			String data = (String)cb.getContents(transfer);
-			if (data != null) {
-				text.insert(data);
-			}
-		}
-	});
-	
-	FormData data = new FormData();
-	data.right = new FormAttachment(100, -5);
-	data.top = new FormAttachment(0, 5);
-	copy.setLayoutData(data);
-	
-	data = new FormData();
-	data.right = new FormAttachment(100, -5);
-	data.top = new FormAttachment(copy, 5);
-	paste.setLayoutData(data);
-	
-	data = new FormData();
-	data.left = new FormAttachment(0, 5);
-	data.top = new FormAttachment(0, 5);
-	data.right = new FormAttachment(copy, -5);
-	data.bottom = new FormAttachment(100, -5);
-	text.setLayoutData(data);
-	
-	shell.setSize(200, 200);
-	shell.open();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	cb.dispose();
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet95.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet95.java
deleted file mode 100644
index aa2b627..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet95.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * GC example snippet: capture a widget image with a GC
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet95 {
-
-public static void main(String[] args) {
-	final Display display = new Display();
-	final Shell shell = new Shell(display);
-	shell.setText("Widget");
-	shell.setBounds(10, 10, 200, 200);
-	
-	final Table table = new Table(shell, SWT.MULTI);
-	table.setLinesVisible(true);
-	table.setBounds(10, 10, 100, 100);
-	for (int i = 0; i < 9; i++) {
-		new TableItem(table, SWT.NONE).setText("item" + i);
-	}
-	
-	Button button = new Button(shell, SWT.PUSH);
-	button.setText("Capture");
-	button.setBounds(10, 140, 50, 20);
-	button.addListener(SWT.Selection, new Listener() {
-		public void handleEvent(Event event) {
-			Point tableSize = table.getSize();
-			GC gc = new GC(table);
-			final Image image =
-				new Image(display, tableSize.x, tableSize.y);
-			gc.copyArea(image, 0, 0);
-			gc.dispose();
-			
-			Shell popup = new Shell(shell);
-			popup.setText("Image");
-			popup.setBounds(50, 50, 200, 200);
-			popup.addListener(SWT.Close, new Listener() {
-				public void handleEvent(Event event) {
-					image.dispose();
-				}
-			});
-			
-			Canvas canvas = new Canvas(popup, SWT.NONE);
-			canvas.setBounds(10, 10, 150, 150);
-			canvas.addPaintListener(new PaintListener() {
-				public void paintControl(PaintEvent e) {
-					e.gc.drawImage(image, 0, 0);
-				}
-			});
-			popup.open();
-		}
-	});
-	
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch()) display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet96.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet96.java
deleted file mode 100644
index d6688c0..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet96.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-/*
- * TableCursor example snippet: navigate a table cells with arrow keys. 
- * Edit when user hits Return key.  Exit edit mode by hitting Escape (cancels edit)
- * or Return (applies edit to table).
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.custom.*;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet96 {
-
-public static void main(String[] args) {
-	Display display = new Display();
-	Shell shell = new Shell(display);
-	shell.setLayout(new GridLayout());
-
-	// create a a table with 3 columns and fill with data
-	final Table table = new Table(shell, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
-	table.setLayoutData(new GridData(GridData.FILL_BOTH));
-	TableColumn column1 = new TableColumn(table, SWT.NONE);
-	TableColumn column2 = new TableColumn(table, SWT.NONE);
-	TableColumn column3 = new TableColumn(table, SWT.NONE);
-	for (int i = 0; i < 100; i++) {
-		TableItem item = new TableItem(table, SWT.NONE);
-		item.setText(new String[] {"cell " + i + " 0", 	"cell " + i + " 1", "cell " + i + " 2" });
-	}
-	column1.pack();
-	column2.pack();
-	column3.pack();
-
-	// create a TableCursor to navigate around the table
-	final TableCursor cursor = new TableCursor(table, SWT.NONE);
-	// create an editor to edit the cell when the user hits "ENTER" 
-	// while over a cell in the table
-	final ControlEditor editor = new ControlEditor(cursor);
-	editor.grabHorizontal = true;
-	editor.grabVertical = true;
-
-	cursor.addSelectionListener(new SelectionAdapter() {
-		// when the TableEditor is over a cell, select the corresponding row in 
-		// the table
-		public void widgetSelected(SelectionEvent e) {
-			table.setSelection(new TableItem[] { cursor.getRow()});
-		}
-		// when the user hits "ENTER" in the TableCursor, pop up a text editor so that 
-		// they can change the text of the cell
-		public void widgetDefaultSelected(SelectionEvent e) {
-			final Text text = new Text(cursor, SWT.NONE);
-			TableItem row = cursor.getRow();
-			int column = cursor.getColumn();
-			text.setText(row.getText(column));
-			text.addKeyListener(new KeyAdapter() {
-				public void keyPressed(KeyEvent e) {
-					// close the text editor and copy the data over 
-					// when the user hits "ENTER"
-					if (e.character == SWT.CR) {
-						TableItem row = cursor.getRow();
-						int column = cursor.getColumn();
-						row.setText(column, text.getText());
-						text.dispose();
-					}
-					// close the text editor when the user hits "ESC"
-					if (e.character == SWT.ESC) {
-						text.dispose();
-					}
-				}
-			});
-			editor.setEditor(text);
-			text.setFocus();
-		}
-	});
-	// Hide the TableCursor when the user hits the "CTRL" or "SHIFT" key.
-	// This alows the user to select multiple items in the table.
-	cursor.addKeyListener(new KeyAdapter() {
-		public void keyPressed(KeyEvent e) {
-			if (e.keyCode == SWT.CTRL
-				|| e.keyCode == SWT.SHIFT
-				|| (e.stateMask & SWT.CONTROL) != 0
-				|| (e.stateMask & SWT.SHIFT) != 0) {
-				cursor.setVisible(false);
-			}
-		}
-	});
-	// Show the TableCursor when the user releases the "SHIFT" or "CTRL" key.
-	// This signals the end of the multiple selection task.
-	table.addKeyListener(new KeyAdapter() {
-		public void keyReleased(KeyEvent e) {
-			if (e.keyCode == SWT.CONTROL && (e.stateMask & SWT.SHIFT) != 0)
-				return;
-			if (e.keyCode == SWT.SHIFT && (e.stateMask & SWT.CONTROL) != 0)
-				return;
-			if (e.keyCode != SWT.CONTROL
-				&& (e.stateMask & SWT.CONTROL) != 0)
-				return;
-			if (e.keyCode != SWT.SHIFT && (e.stateMask & SWT.SHIFT) != 0)
-				return;
-
-			TableItem[] selection = table.getSelection();
-			TableItem row = (selection.length == 0) ? table.getItem(table.getTopIndex()) : selection[0];
-			table.showItem(row);
-			cursor.setSelection(row, 0);
-			cursor.setVisible(true);
-			cursor.setFocus();
-		}
-	});
-
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet97.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet97.java
deleted file mode 100644
index 2fdbc59..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet97.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Menu example snippet: fill a menu dynamically (when menu shown)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet97 {
-
-public static void main (String [] args) {
-	final Display display = new Display ();
-	Shell shell = new Shell (display);
-	final Tree tree = new Tree (shell, SWT.BORDER | SWT.MULTI);
-	final Menu menu = new Menu (shell, SWT.POP_UP);
-	tree.setMenu (menu);
-	for (int i=0; i<12; i++) {
-		TreeItem item = new TreeItem (tree, SWT.NULL);
-		item.setText ("Item " + i);
-	}
-	menu.addListener (SWT.Show, new Listener () {
-		public void handleEvent (Event event) {
-			MenuItem [] menuItems = menu.getItems ();
-			for (int i=0; i<menuItems.length; i++) {
-				menuItems [i].dispose ();
-			}
-			TreeItem [] treeItems = tree.getSelection ();
-			for (int i=0; i<treeItems.length; i++) {
-				MenuItem menuItem = new MenuItem (menu, SWT.PUSH);
-				menuItem.setText (treeItems [i].getText ());
-			}
-		}
-	});
-	tree.setSize (200, 200);
-	shell.setSize (300, 300);
-	shell.open ();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-} 
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet98.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet98.java
deleted file mode 100644
index 8bcdadc..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet98.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Composite example snippet: create and dispose children of a composite
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet98 {
-
-static int pageNum = 0;
-static Composite pageComposite;
-
-public static void main(String args[]) {
-	Display display = new Display();
-	final Shell shell = new Shell(display);
-	shell.setLayout(new GridLayout());
-	Button button = new Button(shell, SWT.PUSH);
-	button.setText("Push");
-	pageComposite = new Composite(shell, SWT.NONE);
-	pageComposite.setLayout(new GridLayout());
-	pageComposite.setLayoutData(new GridData());
-
-	button.addListener(SWT.Selection, new Listener() {
-		public void handleEvent(Event event) {
-			if ((pageComposite != null) && (!pageComposite.isDisposed())) {
-				pageComposite.dispose();
-			}
-			pageComposite = new Composite(shell, SWT.NONE);
-			pageComposite.setLayout(new GridLayout());
-			pageComposite.setLayoutData(new GridData());
-			if (pageNum++ % 2 == 0) {
-				Table table = new Table(pageComposite, SWT.BORDER);
-				table.setLayoutData(new GridData());
-				for (int i = 0; i < 5; i++) {
-					new TableItem(table, SWT.NONE).setText("table item " + i);
-				}
-			} else {
-				new Button(pageComposite, SWT.RADIO).setText("radio");
-			}
-			shell.layout(true);
-		}
-	});
-
-	shell.open();
-	while (!shell.isDisposed()) {
-		if (!display.readAndDispatch())
-			display.sleep();
-	}
-	display.dispose();
-}
-}
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet99.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet99.java
deleted file mode 100644
index cefcdb6..0000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet99.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
- 
-/*
- * Shell example snippet: prevent a shell from closing (prompt the user)
- *
- * For a list of all SWT example snippets see
- * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
- */
-import org.eclipse.swt.*;
-import org.eclipse.swt.widgets.*;
-
-public class Snippet99 {
-
-public static void main (String [] args) {
-	Display display = new Display ();
-	final Shell shell = new Shell (display);
-	shell.addListener (SWT.Close, new Listener () {
-		public void handleEvent (Event event) {
-			int style = SWT.APPLICATION_MODAL | SWT.YES | SWT.NO;
-			MessageBox messageBox = new MessageBox (shell, style);
-			messageBox.setText ("Information");
-			messageBox.setMessage ("Close the shell?");
-			event.doit = messageBox.open () == SWT.YES;
-		}
-	});
-	shell.pack ();
-	shell.open();
-	while (!shell.isDisposed ()) {
-		if (!display.readAndDispatch ()) display.sleep ();
-	}
-	display.dispose ();
-}
-}