diff options
Diffstat (limited to 'examples/org.eclipse.swt.examples.launcher')
22 files changed, 0 insertions, 1547 deletions
diff --git a/examples/org.eclipse.swt.examples.launcher/.classpath b/examples/org.eclipse.swt.examples.launcher/.classpath deleted file mode 100755 index 799f047d11..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/.classpath +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry kind="src" path="src"/> - <classpathentry kind="src" path="/org.eclipse.swt"/> - <classpathentry kind="src" path="/org.eclipse.swt.examples"/> - <classpathentry sourcepath="JRE_SRC" kind="var" path="JRE_LIB"/> - <classpathentry kind="var" path="ECLIPSE_HOME/plugins/org.eclipse.core.boot_3.0.0/boot.jar"/> - <classpathentry kind="var" path="ECLIPSE_HOME/plugins/org.eclipse.core.runtime_3.0.0/runtime.jar"/> - <classpathentry kind="var" path="ECLIPSE_HOME/plugins/org.eclipse.ui.workbench_3.0.0/workbench.jar"/> - <classpathentry kind="var" path="ECLIPSE_HOME/plugins/org.eclipse.jface_3.0.0/jface.jar"/> - <classpathentry kind="var" path="ECLIPSE_HOME/plugins/org.eclipse.osgi_3.0.0/osgi.jar"/> - <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 c5e82d7458..0000000000 --- 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 bcb6941eaa..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/.project +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>org.eclipse.swt.examples.launcher</name> - <comment></comment> - <projects> - <project>org.eclipse.swt</project> - <project>org.eclipse.swt.examples</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.examples.launcher/about.html b/examples/org.eclipse.swt.examples.launcher/about.html deleted file mode 100644 index 9db411aab9..0000000000 --- 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 ("Content"). Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the -Common Public License Version 1.0 ("CPL"). 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, "Program" 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 ("Other License"), any modifications, enhancements and/or -other code and/or documentation ("Modifications") 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 2ca3829db3..0000000000 --- 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 f5871b79e0..0000000000 --- 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, 2003 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 Binary files differdeleted file mode 100755 index c786e43e1f..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/doc-html/ngibmcpy.gif +++ /dev/null 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 99697ac922..0000000000 --- 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 > 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, 2003. 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 3edf91876a..0000000000 --- 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> <!ELEMENT extension EMPTY></samp> -<br><samp> <!ATTLIST extension</samp> -<br><samp> point CDATA #REQUIRED</samp> -<br><samp> id CDATA #IMPLIED</samp> -<br><samp> name CDATA #IMPLIED</samp> -<br><samp> ></samp> -<ul> -<li><b>point</b> - </li><li><b>id</b> - </li><li><b>name</b> - </li></ul> -<p><samp> <!ELEMENT program EMPTY></samp> -<br><samp> <!ATTLIST program</samp> -<br><samp> mainClass CDATA #REQUIRED</samp> -<br><samp> pluginId CDATA #REQUIRED</samp> -<br><samp> ></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> <!ELEMENT view EMPTY></samp> -<br><samp> <!ATTLIST view</samp> -<br><samp> viewId CDATA #REQUIRED</samp> -<br><samp> ></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> <!ELEMENT category EMPTY></samp> -<br><samp> <!ATTLIST category</samp> -<br><samp> name CDATA #REQUIRED</samp> -<br><samp> id CDATA #REQUIRED</samp> -<br><samp> category CDATA #IMPLIED</samp> -<br><samp> ></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> <!ELEMENT item EMPTY></samp> -<br><samp> <!ATTLIST item</samp> -<br><samp> name CDATA #REQUIRED</samp> -<br><samp> id CDATA #REQUIRED</samp> -<br><samp> category CDATA #IMPLIED</samp> -<br><samp> icon CDATA #IMPLIED</samp> -<br><samp> enabled (true | false) "false""true"</samp> -<br><samp> description CDATA #IMPLIED</samp> -<br><samp> ></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 Binary files differdeleted file mode 100755 index beb6ed134c..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/icons/closedFolder.gif +++ /dev/null diff --git a/examples/org.eclipse.swt.examples.launcher/icons/generic_example.gif b/examples/org.eclipse.swt.examples.launcher/icons/generic_example.gif Binary files differdeleted file mode 100755 index f9fb6b0cab..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/icons/generic_example.gif +++ /dev/null diff --git a/examples/org.eclipse.swt.examples.launcher/icons/launcher_example.gif b/examples/org.eclipse.swt.examples.launcher/icons/launcher_example.gif Binary files differdeleted file mode 100755 index 3ab4d32c05..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/icons/launcher_example.gif +++ /dev/null diff --git a/examples/org.eclipse.swt.examples.launcher/icons/openFolder.gif b/examples/org.eclipse.swt.examples.launcher/icons/openFolder.gif Binary files differdeleted file mode 100755 index a9c777343c..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/icons/openFolder.gif +++ /dev/null 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 7b0f95c5de..0000000000 --- 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 08e34c56a3..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/plugin.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<plugin - id="org.eclipse.swt.examples.launcher" - name="%plugin.SWTLauncherExample.name" - version="3.0.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.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 3813c9d3fe..0000000000 --- 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 '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. - </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 "Standalone Program" 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 "Workbench View" 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'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'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 "false" to disable this launch item, or to "true" 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 58344f0d3e..0000000000 --- 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 7ec10195b8..0000000000 --- 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 6088090e96..0000000000 --- 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 2d6abb35f5..0000000000 --- a/examples/org.eclipse.swt.examples.launcher/src/org/eclipse/swt/examples/launcher/LauncherPlugin.java +++ /dev/null @@ -1,390 +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.*; - -/** - * 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(IPluginDescriptor descriptor) { - super(descriptor); - plugin = this; - resourceBundle = descriptor.getResourceBundle(); - } - - /** - * Clean up - */ - public void shutdown() throws CoreException { - super.shutdown(); - freeResources(); - } - - /** - * 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.getDescriptor(), 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.getDescriptor().getUniqueIdentifier(), - 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 - IPluginRegistry pluginRegistry = Platform.getPluginRegistry(); - // retrieve all configuration elements registered at our launchItems extension-point - IConfigurationElement[] configurationElements = - pluginRegistry.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) { - Image icon = getImageFromPlugin(ce.getDeclaringExtension().getDeclaringPluginDescriptor(), - 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 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(IPluginDescriptor pd, String iconPath) { - InputStream is = null; - try { - URL installUrl = pd.getInstallURL(); - 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 663dfd6415..0000000000 --- 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 47dbfddd89..0000000000 --- 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; - } -} |