Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.common.ui')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/.classpath7
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/.cvsignore4
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/.project28
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.core.prefs82
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.ui.prefs3
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.pde.prefs22
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/META-INF/MANIFEST.MF36
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/about.html22
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/about.ini29
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/about.mappings6
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/about.properties27
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/build.properties28
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/default.properties52
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/eclipse32.gifbin1706 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/Editor_Help.gifbin2701 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_GotoEditor.gifbin1562 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Introduction.gifbin2683 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Tutorial.gifbin2778 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/PD_Palette_Default.gifbin82 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/back_nav_16.gifbin108 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/configs.gifbin368 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/form_banner.gifbin5600 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/forward_nav_16.gifbin138 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/help.gifbin259 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_converter.gifbin226 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_validator.gifbin358 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_view.gifbin368 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/object.gifbin561 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/overview_obj.gifbin2701 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/refresh_nav_16.gifbin182 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/reload_nav_16.gifbin367 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/stop_nav_16.gifbin163 -> 0 bytes
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.properties16
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.xml6
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/introductionPage.exsd213
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/overviewPage.exsd213
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/CommonResources.properties113
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/IFileFolderConstants.java96
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/JSFUICommonPlugin.java418
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/IOpenPage.java28
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadCheatSheetAction.java69
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadHelpAction.java68
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/OpenPageAction.java118
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/AbstractClassButtonDialogField.java238
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ClassButtonDialogField.java68
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorButtonDialogField.java339
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorPalette.java125
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ComboDialogField.java320
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogField.java149
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldBase.java559
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroup.java113
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroupPage.java76
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.java62
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.properties48
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldApplyListener.java32
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldChangeListener.java27
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IStringButtonAdapter.java24
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ISupportTextValue.java37
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizard.java186
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizardPage.java249
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScope.java221
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScopeDecorator.java139
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaUIHelper.java140
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/LayoutUtil.java116
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/RadiosDialogField.java233
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ResourceButtonDialogField.java231
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/Separator.java128
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/SourceFolderButtonDialogField.java340
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusInfo.java198
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusUtil.java114
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringButtonDialogField.java186
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringDialogField.java291
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StyleComboDialogField.java398
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedElementSelectionValidator.java110
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedViewerFilter.java76
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonResourceDialog.java368
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonWizardDialog.java44
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/ResourceOnClasspathDialog.java254
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/TreeViewerSelectionDialog.java393
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractDetailsForm.java147
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterDetailBlock.java206
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterForm.java165
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractXMLSectionsDetailsForm.java186
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/BlankDetailsForm.java61
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Alerts.java837
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/BrowserWindow.java391
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java148
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/FavoriteSection.java152
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/ImageContainer.java105
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/IntroductionSection.java351
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Messages.java35
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/OverviewSection.java287
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/SWTUtils.java1032
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/TextWindow.java63
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/messages.properties3
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/logging/Logger.java215
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.java40
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.properties12
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/StrategyOrderingPanel.java322
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/FavoriteConfigurations.java257
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JSFSharedImages.java62
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JavaModelUtil.java1032
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java307
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PixelConverter.java80
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PluginImageHelper.java213
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PropertyUtils.java789
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/ResourceUtils.java286
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StringUtil.java157
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StyleCombo.java1877
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/UTF8Util.java89
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WebrootUtil.java268
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WorkspaceUtil.java283
112 files changed, 0 insertions, 18794 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.classpath b/jsf/plugins/org.eclipse.jst.jsf.common.ui/.classpath
deleted file mode 100644
index 304e86186..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.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.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.cvsignore b/jsf/plugins/org.eclipse.jst.jsf.common.ui/.cvsignore
deleted file mode 100644
index 2a89e4b88..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.cvsignore
+++ /dev/null
@@ -1,4 +0,0 @@
-bin
-@dot
-build.xml
-javaCompiler...args
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.project b/jsf/plugins/org.eclipse.jst.jsf.common.ui/.project
deleted file mode 100644
index 9615dd9c8..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jst.jsf.common.ui</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/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.core.prefs b/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 9334e139c..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,82 +0,0 @@
-#Mon Jun 30 15:55:16 PDT 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=error
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=error
-org.eclipse.jdt.core.compiler.problem.nullReference=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=ignore
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=error
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.ui.prefs b/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 82eb6c152..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Fri Apr 06 18:25:15 PDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates/>
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.pde.prefs b/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index d9b486b97..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,22 +0,0 @@
-#Fri May 30 11:46:32 PDT 2008
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=1
-compilers.p.build=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=0
-compilers.p.unknown-attribute=1
-compilers.p.unknown-class=1
-compilers.p.unknown-element=1
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/META-INF/MANIFEST.MF b/jsf/plugins/org.eclipse.jst.jsf.common.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index 075c0da02..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,36 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.jsf.common.ui;singleton:=true
-Bundle-Version: 1.2.0.qualifier
-Bundle-Activator: org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.ui;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui.cheatsheets;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.help;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.jdt.core;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui.forms;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.jdt.ui;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.ui.ide;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.draw2d;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.jface.text;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.jst.j2ee;bundle-version="[1.1.0,1.2.0)",
- org.eclipse.wst.common.emf;bundle-version="[1.1.103,2.0.0)",
- org.eclipse.wst.common.project.facet.core;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.emf;bundle-version="[2.2.0,3.0.0)",
- org.eclipse.emf.common;bundle-version="[2.2.0,3.0.0)",
- org.eclipse.jst.jsf.common;bundle-version="[1.0.1,2.0.0)"
-Export-Package: org.eclipse.jst.jsf.common.ui;x-friends:="org.eclipse.jst.pagedesigner,org.eclipse.jst.pagedesigner.jsf.ui",
- org.eclipse.jst.jsf.common.ui.internal.actions;x-friends:="org.eclipse.jst.jsf.facesconfig.ui",
- org.eclipse.jst.jsf.common.ui.internal.dialogfield;x-friends:="org.eclipse.jst.pagedesigner,org.eclipse.jst.pagedesigner.jsf.ui",
- org.eclipse.jst.jsf.common.ui.internal.dialogs;x-friends:="org.eclipse.jst.pagedesigner",
- org.eclipse.jst.jsf.common.ui.internal.form;x-internal=true,
- org.eclipse.jst.jsf.common.ui.internal.guiutils;x-friends:="org.eclipse.jst.pagedesigner",
- org.eclipse.jst.jsf.common.ui.internal.logging;x-friends:="org.eclipse.jst.pagedesigner,org.eclipse.jst.pagedesigner.jsf.ui",
- org.eclipse.jst.jsf.common.ui.internal.preferences;x-internal=true,
- org.eclipse.jst.jsf.common.ui.internal.utils;x-friends:="org.eclipse.jst.pagedesigner,org.eclipse.jst.jsf.facesconfig.ui,org.eclipse.jst.pagedesigner.jsf.ui"
-Bundle-ActivationPolicy: lazy
-Bundle-Vendor: %pluginProvider
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.html b/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.html
deleted file mode 100644
index 3b20a3638..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.html
+++ /dev/null
@@ -1,22 +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>June, 2008</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation 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
-Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html> \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.ini b/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.ini
deleted file mode 100644
index a21a3ecea..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.ini
+++ /dev/null
@@ -1,29 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.mappings b/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.mappings
deleted file mode 100644
index 29ddddb7e..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=200509071822 \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.properties
deleted file mode 100644
index d7849b83b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/about.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-###############################################################################
-# Copyright (c) 2004, 2005 Sybase, Inc. and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Sybase, Inc. - initial API and implementation
-###############################################################################
-#
-#
-
-
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-
-blurb=JSF Faces Config Editor \n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others. 2000, 2004. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools/jsf
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/build.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/build.properties
deleted file mode 100644
index 252400474..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/build.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2007 Oracle Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Oracle Corporation - initial API and implementation
-###############################################################################
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- plugin.xml,\
- about.html,\
- about.ini,\
- about.mappings,\
- about.properties,\
- bin/,\
- build.properties,\
- default.properties,\
- eclipse32.gif,\
- icons/,\
- plugin.properties,\
- schema/
-javacSource=1.5
-javacTarget=1.5 \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/default.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/default.properties
deleted file mode 100644
index 82c53586d..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/default.properties
+++ /dev/null
@@ -1,52 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2007 Oracle Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Oracle Corporation - initial API and implementation
-###############################################################################
-# This file contains all the Default Preference Settings
-
-####################################################
-# Logging Preference Settings
-####################################################
-
-# Enable/Disable console logging.
-# Valid values: TRUE, FALSE
-console.logging.on=true
-
-# Maximum log level of console logging.
-# Valid values: DEBUG, INFO, WARN, ERROR, FATAL
-console.logging.max.level=INFO
-
-# Enable/Disable eclipse logging.
-# Valid values: TRUE, FALSE
-eclipse.logging.on=true
-
-# Maximum log level of eclipse logging.
-# Valid values: DEBUG, INFO, WARN, ERROR, FATAL
-eclipse.logging.max.level=INFO
-
-eclipse.pattern=%m
-
-# Enable/Disable file logging.
-# Valid values: TRUE, FALSE
-file.logging.on=true
-
-# Maximum log level of file logging.
-# Valid values: DEBUG, INFO, WARN, ERROR, FATAL
-file.logging.max.level=DEBUG
-
-# Clear log file when eclipse restarts.
-# Valid values: TRUE, FALSE
-file.logging.startup.clear=true
-
-# Location of log file
-file.logging.path=facesconfigeditor.log
-
-# Rollover frequency of log file.
-# Valid values: DAILY, WEEKLY, MONTHLY
-file.logging.rollover.frequency=DAILY
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/eclipse32.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/eclipse32.gif
deleted file mode 100644
index e6ad7ccd7..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/Editor_Help.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/Editor_Help.gif
deleted file mode 100644
index 03f656f3e..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/Editor_Help.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_GotoEditor.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_GotoEditor.gif
deleted file mode 100644
index 0e5bcf65a..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_GotoEditor.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Introduction.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Introduction.gif
deleted file mode 100644
index 44cd0448b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Introduction.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Tutorial.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Tutorial.gif
deleted file mode 100644
index ad8e5b6b9..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/FacesConfig_Tutorial.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/PD_Palette_Default.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/PD_Palette_Default.gif
deleted file mode 100644
index 5e7fb3339..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/PD_Palette_Default.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/back_nav_16.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/back_nav_16.gif
deleted file mode 100644
index 740419b4a..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/back_nav_16.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/configs.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/configs.gif
deleted file mode 100644
index c984fba70..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/configs.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/form_banner.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/form_banner.gif
deleted file mode 100644
index aebc0b2a3..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/form_banner.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/forward_nav_16.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/forward_nav_16.gif
deleted file mode 100644
index 7a1511dd8..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/forward_nav_16.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/help.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/help.gif
deleted file mode 100644
index 9d70301da..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/help.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_converter.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_converter.gif
deleted file mode 100644
index 16466edfd..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_converter.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_validator.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_validator.gif
deleted file mode 100644
index 86196e996..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_validator.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_view.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_view.gif
deleted file mode 100644
index c81630a08..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/jsf_view.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/object.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/object.gif
deleted file mode 100644
index 061161ae1..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/object.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/overview_obj.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/overview_obj.gif
deleted file mode 100644
index 03f656f3e..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/overview_obj.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/refresh_nav_16.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/refresh_nav_16.gif
deleted file mode 100644
index a063c230a..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/refresh_nav_16.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/reload_nav_16.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/reload_nav_16.gif
deleted file mode 100644
index d71dffff4..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/reload_nav_16.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/stop_nav_16.gif b/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/stop_nav_16.gif
deleted file mode 100644
index 4eb53ec41..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/icons/stop_nav_16.gif
+++ /dev/null
Binary files differ
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.properties
deleted file mode 100644
index 3549ea3bf..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2007 Oracle Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Oracle Corporation - initial API and implementation
-###############################################################################
-
-pluginName=JavaServer Faces Tools - Common UI
-pluginProvider=Eclipse.org
-
-extension-point.name.0 = Introduction Page
-extension-point.name.1 = OverviewPage
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.xml b/jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.xml
deleted file mode 100644
index 435be3ad3..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/plugin.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.2"?>
-<plugin>
- <extension-point id="introductionPage" name="%extension-point.name.0" schema="schema/introductionPage.exsd"/>
- <extension-point id="overviewPage" name="%extension-point.name.1" schema="schema/overviewPage.exsd"/>
-</plugin>
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/introductionPage.exsd b/jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/introductionPage.exsd
deleted file mode 100644
index d147b347a..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/introductionPage.exsd
+++ /dev/null
@@ -1,213 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jst.jsf.common.ui">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.jst.jsf.common.ui" id="introductionPage" name="Introduction Page"/>
- </appInfo>
- <documentation>
- The purpose of this extension point is to allow plug-ins to describe the contents and links on a introduction page of an editor.
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="introductionpage"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
- a fully qualified identifier of the target extension point.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
- identifier of the extension instance, this should be the same as the editor id.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
- an optional name of the extension instance. Normally this is the editor name.
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="introductionpage">
- <annotation>
- <documentation>
- The details for an introduction page for a specific plugins editor
- </documentation>
- </annotation>
- <complexType>
- <sequence>
- <element ref="introductionelement" minOccurs="1" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="name" type="string" use="required">
- <annotation>
- <documentation>
- The name of the page.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="description" type="string">
- <annotation>
- <documentation>
- A description for the page.
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="introductionelement">
- <annotation>
- <documentation>
- An element that make up a section of the page. Elements can contain Headers, Hyperlinks, Icons and text.
- </documentation>
- </annotation>
- <complexType>
- <attribute name="icon" type="string">
- <annotation>
- <documentation>
- An icon to display in the element. The icon should be 72x72 and will appear to the left of the headers, hyperlinks and text
- </documentation>
- <appInfo>
- <meta.attribute kind="resource"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="heading" type="string">
- <annotation>
- <documentation>
- A short heading for the element (optional)
- </documentation>
- </annotation>
- </attribute>
- <attribute name="text" type="string">
- <annotation>
- <documentation>
- The text description for the element
- </documentation>
- </annotation>
- </attribute>
- <attribute name="hyperlink" type="string">
- <annotation>
- <documentation>
- A hyperlink associated with the element. The hyperlink would normally execute the hyperlinkaction action
- </documentation>
- </annotation>
- </attribute>
- <attribute name="hyperlinkaction" type="string">
- <annotation>
- <documentation>
- The action associated with the hyperlink. This is an action that will be executed when the hyperlink is selected
- </documentation>
- <appInfo>
- <meta.attribute kind="java"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="actionparameters" type="string">
- <annotation>
- <documentation>
- Can be used to pass one or more parameters to the hyperlink action. Parameter must be space separated (optional)
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="since"/>
- </appInfo>
- <documentation>
- 1.0.0
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- &lt;extension
- id=&quot;org.eclipse.jst.jsf.facesconfig.ui.pageflow.PageflowEditor&quot;
- name=&quot;%pageflow.editor.intro.name&quot;
- point=&quot;org.eclipse.jst.jsf.facesconfig.ui.page.introductionPage&quot;&gt;
- &lt;introductionpage
- name=&quot;%pageflow.editor.intro.name&quot;
- description=&quot;%port.editor.intro.description&quot;&gt;
- &lt;introductionelement
- icon=&quot;icons/pageflow_72.gif&quot;
- heading=&quot;%pageflow.editor.intro.heading&quot;
- text=&quot;%pageflow.editor.intro.description&quot;&gt;
- &lt;/introductionelement&gt;
- &lt;introductionelement
- actionparameters=&quot;Pageflow.designerCheatSheet&quot;
- icon=&quot;icons/tutorials_72.gif&quot;
- hyperlinkaction=&quot;org.eclipse.jst.jsf.common.ui.actions.LoadCheatSheetAction&quot;
- text=&quot;%pageflow.editor.intro.cheatsheets.text&quot;
- hyperlink=&quot;%pageflow.editor.intro.cheatsheets.link&quot;&gt;
- &lt;/introductionelement&gt;
- &lt;introductionelement
- actionparameters=&quot;http://www.eclipse.org&quot;
- icon=&quot;icons/overview_72.gif&quot;
- hyperlinkaction=&quot;org.eclipse.jst.jsf.common.ui.actions.LoadHelpAction&quot;
- text=&quot;%pageflow.editor.intro.help.text&quot;
- hyperlink=&quot;%pageflow.editor.intro.help.link&quot;&gt;
- &lt;/introductionelement&gt;
- &lt;introductionelement
- actionparameters=&quot;overview&quot;
- icon=&quot;icons/gotoeditor_72.gif&quot;
- hyperlinkaction=&quot;org.eclipse.jst.jsf.common.ui.actions.OpenPageAction&quot;
- text=&quot;%pageflow.editor.intro.start.text&quot;
- hyperlink=&quot;%pageflow.editor.intro.start.link&quot;&gt;
- &lt;/introductionelement&gt;
- &lt;/introductionpage&gt;
- &lt;/extension&gt;
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
-
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
-
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- Copyright (c) 2004, 2006 Sybase, Inc. and others. &lt;br&gt;
- All rights reserved. This program and the accompanying materials &lt;br&gt;
- are made available under the terms of the Eclipse Public License v1.0 &lt;br&gt;
- which accompanies this distribution, and is available at &lt;br&gt;
- http://www.eclipse.org/legal/epl-v10.html &lt;br&gt;
-
- Contributors: &lt;br&gt;
- Sybase, Inc. - initial API and implementation &lt;br&gt;
- </documentation>
- </annotation>
-
-</schema>
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/overviewPage.exsd b/jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/overviewPage.exsd
deleted file mode 100644
index c55436b40..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/schema/overviewPage.exsd
+++ /dev/null
@@ -1,213 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jst.jsf.common.ui">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.jst.jsf.common.ui" id="overviewPage" name="Overview Page"/>
- </appInfo>
- <documentation>
- The purpose of this extension point is to allow plug-ins to describe the contents and links on a overview page of an editor.
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="overviewpage"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
- a fully qualified identifier of the target extension point.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
- identifier of the extension instance, this should be the same as the editor id.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
- an optional name of the extension instance. Normally this is the editor name.
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="overviewpage">
- <annotation>
- <documentation>
- The details for an overview page for a specific plugins editor
- </documentation>
- </annotation>
- <complexType>
- <sequence>
- <element ref="overviewelement" minOccurs="1" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="name" type="string" use="required">
- <annotation>
- <documentation>
- The name of the page.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="description" type="string">
- <annotation>
- <documentation>
- A description for the page.
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="overviewelement">
- <annotation>
- <documentation>
- An element that make up a section of the page. Elements can contain Headers, Hyperlinks, Icons and text.
- </documentation>
- </annotation>
- <complexType>
- <attribute name="icon" type="string">
- <annotation>
- <documentation>
- An icon to display in the element. The icon should be 72x72 and will appear to the left of the headers, hyperlinks and text
- </documentation>
- <appInfo>
- <meta.attribute kind="resource"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="heading" type="string">
- <annotation>
- <documentation>
- A short heading for the element (optional)
- </documentation>
- </annotation>
- </attribute>
- <attribute name="text" type="string">
- <annotation>
- <documentation>
- The text description for the element
- </documentation>
- </annotation>
- </attribute>
- <attribute name="hyperlink" type="string">
- <annotation>
- <documentation>
- A hyperlink associated with the element. The hyperlink would normally execute the hyperlinkaction action
- </documentation>
- </annotation>
- </attribute>
- <attribute name="hyperlinkaction" type="string">
- <annotation>
- <documentation>
- The action associated with the hyperlink. This is an action that will be executed when the hyperlink is selected
- </documentation>
- <appInfo>
- <meta.attribute kind="java"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="actionparameters" type="string">
- <annotation>
- <documentation>
- Can be used to pass one or more parameters to the hyperlink action. Parameter must be space separated (optional)
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="since"/>
- </appInfo>
- <documentation>
- 1.0.0
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- &lt;extension
- id=&quot;org.eclipse.jst.jsf.facesconfig.ui.pageflow.PageflowEditor&quot;
- name=&quot;%pageflow.editor.intro.name&quot;
- point=&quot;org.eclipse.jst.jsf.facesconfig.ui.page.overviewPage&quot;&gt;
- &lt;overviewpage
- name=&quot;%pageflow.editor.intro.name&quot;
- description=&quot;%port.editor.intro.description&quot;&gt;
- &lt;overviewelement
- icon=&quot;icons/pageflow_72.gif&quot;
- heading=&quot;%pageflow.editor.intro.heading&quot;
- text=&quot;%pageflow.editor.intro.description&quot;&gt;
- &lt;/overviewelement&gt;
- &lt;overviewelement
- actionparameters=&quot;Pageflow.designerCheatSheet&quot;
- icon=&quot;icons/tutorials_72.gif&quot;
- hyperlinkaction=&quot;org.eclipse.jst.jsf.common.ui.actions.LoadCheatSheetAction&quot;
- text=&quot;%pageflow.editor.intro.cheatsheets.text&quot;
- hyperlink=&quot;%pageflow.editor.intro.cheatsheets.link&quot;&gt;
- &lt;/overviewelement&gt;
- &lt;overviewelement
- actionparameters=&quot;http://www.eclipse.org&quot;
- icon=&quot;icons/overview_72.gif&quot;
- hyperlinkaction=&quot;org.eclipse.jst.jsf.common.ui.actions.LoadHelpAction&quot;
- text=&quot;%pageflow.editor.intro.help.text&quot;
- hyperlink=&quot;%pageflow.editor.intro.help.link&quot;&gt;
- &lt;/overviewelement&gt;
- &lt;overviewelement
- actionparameters=&quot;overview&quot;
- icon=&quot;icons/gotoeditor_72.gif&quot;
- hyperlinkaction=&quot;org.eclipse.jst.jsf.common.ui.actions.OpenPageAction&quot;
- text=&quot;%pageflow.editor.intro.start.text&quot;
- hyperlink=&quot;%pageflow.editor.intro.start.link&quot;&gt;
- &lt;/overviewelement&gt;
- &lt;/overviewpage&gt;
- &lt;/extension&gt;
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
-
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
-
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- Copyright (c) 2004, 2006 Sybase, Inc. and others. &lt;br&gt;
- All rights reserved. This program and the accompanying materials &lt;br&gt;
- are made available under the terms of the Eclipse Public License v1.0 &lt;br&gt;
- which accompanies this distribution, and is available at &lt;br&gt;
- http://www.eclipse.org/legal/epl-v10.html &lt;br&gt;
-
- Contributors: &lt;br&gt;
- Sybase, Inc. - initial API and implementation &lt;br&gt;
- </documentation>
- </annotation>
-
-</schema>
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/CommonResources.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/CommonResources.properties
deleted file mode 100644
index b9527d13f..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/CommonResources.properties
+++ /dev/null
@@ -1,113 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2007 Oracle Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Oracle Corporation - initial API and implementation
-###############################################################################
-####################################################
-# Generic Strings for UI
-####################################################
-
-pluginName=Web Application Development Common
-button.save=&Save
-button.remove=&Remove
-
-####################################################
-# Resource message for Logging
-####################################################
-
-log.msg={0}
-
-log.ResourceUtils=Missing Resource Bundle "{0}".
-log.CommonPlugin=Web Application Development Common Plugin initialized on eclipse version {0}.
-log.FavoriteConfigurations.save.error=Failed to save {0} favorites. File={1}
-log.FavoriteConfigurations.read.error=Failed to read {0} favorites. File={1}
-log.CommonPlugin.image.error=Image {0} not found.
-
-log.IntroductionSection.action.error = Failed to launch the link {0}
-
-####################################################
-# Resource message for Alerts
-####################################################
-
-alert.msg={0}
-
-####################################################
-# Resource messages for FavoriteSection
-####################################################
-favorites.group.label=Favorite Configurations
-favorites.label=&Name:
-favorites.tooltip=Construct common setting favorites for this page.
-favorites.save.tooltip=Save the current options on this page as the favorites.
-favorites.remove.tooltip=Remove the current favorite.
-favorites.default=default
-
-####################################################
-# Resource messages for Preference Pages
-####################################################
-JMTPreferencePage.Description=Expand the tree to edit Web Application preferences.
-
-LoggingPreferencePage.Log.Level.label=Log Level:
-LoggingPreferencePage.Log.Level.tooltip=Select the logging level to output to the selected source.
-LoggingPreferencePage.Log.Level.debug=Debug
-LoggingPreferencePage.Log.Level.info=Info
-LoggingPreferencePage.Log.Level.warn=Warn
-LoggingPreferencePage.Log.Level.error=Error
-LoggingPreferencePage.Log.Level.fatal=Fatal
-LoggingPreferencePage.Console.Group.label=Console
-LoggingPreferencePage.Console.Logging.label=Enable &Console Logging
-LoggingPreferencePage.Console.Logging.tooltip=Receive log message in the Eclipse Console view.
-LoggingPreferencePage.Eclipse.Group.label=Eclipse
-LoggingPreferencePage.Eclipse.Logging.label=Enable &Eclipse Logging
-LoggingPreferencePage.Eclipse.Logging.tooltip=Receive log message in the Eclipse Error Log view.
-LoggingPreferencePage.File.Group.label=File
-LoggingPreferencePage.File.Logging.label=Enable &File Logging
-LoggingPreferencePage.File.Logging.tooltip=Write log message to an external file.
-LoggingPreferencePage.File.clearing.label=Clear log file on &startup
-LoggingPreferencePage.File.clearing.tooltip=Each time Eclipse starts, clear the log file.
-LoggingPreferencePage.File.path.label=&Log file:
-LoggingPreferencePage.File.path.tooltip=Where should the log file go? Partial paths are \n based from: /workspace/.metadata/.plugins/org.eclipse.jst.jsf.common.ui.internal/.
-LoggingPreferencePage.File.button.label=B&rowse
-LoggingPreferencePage.File.button.tooltip=Select a location and file name for file logging.
-LoggingPreferencePage.File.select.label=Select a log file
-LoggingPreferencePage.File.Rollover.Frequency.label=Rollover Fre&quency:
-LoggingPreferencePage.File.Rollover.Frequency.tooltip=Select the frequency of how often to generate a new log file. \n The original log file is appended with a timestamp.
-LoggingPreferencePage.File.Rollover.Frequency.daily=Daily
-LoggingPreferencePage.File.Rollover.Frequency.weekly=Weekly
-LoggingPreferencePage.File.Rollover.Frequency.monthly=Monthly
-
-####################################################
-# Resource messages for BrowserWindow
-####################################################
-BrowserWindow.back.tooltip=Navigate back in the browser
-BrowserWindow.forward.tooltip=Navigate forward in the browser
-BrowserWindow.stop.tooltip=Stop browser navigation
-BrowserWindow.refresh.tooltip=Refresh the browser
-BrowserWindow.reload.tooltip=Reload the browser
-
-####################################################
-# Resource messages for Commmon DialogField
-####################################################
-DialogField.JavaClassWizard.NewClass=New Java Class
-DialogField.ClassButton.SelectType=Select Type
-DialogField.Browse=Browse...
-DialogField.ResourceButton.SelectFile=Select File
-
-####################################################
-# Resource messages for Commmon Dialog
-####################################################
-Dialog.ResourceOnClasspathDialog.StatusMessage=Select a properties file
-Dialog.CommonResourceDialog.StatusMessage0=Select
-Dialog.TreeViewerSelectionDialog.DefaultTitle=Select a File
-
-Wizards.NewPage.Error.InvalidProject=Invalid Web project.
-Error.FileFilter.title=File selection
-Error.ImgFileFilter.error=File selection error:
-Error.ProjectFileDialogContentProvider=Project file dialog error: {0}
-Error.RefreshingLocal=Refreshing local
-
-Service.NoResourceError=Unable to determine Service Model file.
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/IFileFolderConstants.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/IFileFolderConstants.java
deleted file mode 100644
index e74e90a91..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/IFileFolderConstants.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui;
-
-/**
- * @author mengbo
- * @version 1.5
- */
-public interface IFileFolderConstants {
-
- /**
- * the dot character
- */
- public static final String DOT = "."; //$NON-NLS-1$
-
- /**
- * the path separator
- */
- public static final String PATH_SEPARATOR = "/"; //$NON-NLS-1$
-
- /** file extensions */
- /**
- * class file extension
- */
- public static final String EXT_CLASS = "class"; //$NON-NLS-1$
-
- /**
- * jar file extension
- */
- public static final String EXT_JAR = "jar"; //$NON-NLS-1$
-
- /**
- * java file extension
- */
- public static final String EXT_JAVA = "java"; //$NON-NLS-1$
-
-
- /**
- * jsp file extension
- */
- public static final String EXT_JSP = "jsp"; //$NON-NLS-1$
-
- /**
- * properties file extension
- */
- public static final String EXT_PROPERTIES = "properties"; //$NON-NLS-1$
-
- /**
- * taglib file extension
- */
- public static final String EXT_TAGLIB = "tld"; //$NON-NLS-1$
-
- /**
- * standard web.xml file name
- */
- public static final String FILE_WEB_XML = "web.xml"; //$NON-NLS-1$
-
- /** folders */
-
- /**
- * classes folder name
- */
- public static final String FOLDER_CLASS = "classes"; //$NON-NLS-1$
-
- /**
- * icons folder name
- */
- public static final String FOLDER_ICONS = "icons"; //$NON-NLS-1$
-
- /**
- * the meta-inf folder name
- */
- public static final String FOLDER_METAINF = "META-INF"; //$NON-NLS-1$
-
- /**
- * the src folder name
- */
- public static final String FOLDER_SOURCE = "src"; //$NON-NLS-1$
-
- /**
- * the web-inf folder name
- */
- public static final String FOLDER_WEBINF = "WEB-INF"; //$NON-NLS-1$
-
- /** the webroot folder depth relative to the project */
- public static final int WEBROOT_FOLDER_DEPTH = 2;
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/JSFUICommonPlugin.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/JSFUICommonPlugin.java
deleted file mode 100644
index b4a1f0075..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/JSFUICommonPlugin.java
+++ /dev/null
@@ -1,418 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.MissingResourceException;
-import java.util.Properties;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jst.jsf.common.ui.internal.guiutils.Alerts;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.Version;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class JSFUICommonPlugin extends AbstractUIPlugin {
- // Properties contains general properties and defaults to preferences.
- private static final String PROPERTIES = "default.properties"; //$NON-NLS-1$
- // preferences will
- // contain this string
- // in the key.
-
- private static final String P_CONSOLE_LOGGING = "console.logging.on"; //$NON-NLS-1$
-
- private static final String P_CONSOLE_LOG_LEVEL = "console.logging.max.level"; //$NON-NLS-1$
-
- private static final String P_ECLIPSE_LOGGING = "eclipse.logging.on"; //$NON-NLS-1$
-
- private static final String P_ECLIPSE_LOG_LEVEL = "eclipse.logging.max.level"; //$NON-NLS-1$
-
- private static final String P_FILE_LOGGING = "file.logging.on"; //$NON-NLS-1$
-
- private static final String P_FILE_LOG_LEVEL = "file.logging.max.level"; //$NON-NLS-1$
-
- private static final String P_FILE_PATH = "file.logging.path"; //$NON-NLS-1$
-
- private static final String P_FILE_CLEAR = "file.logging.startup.clear"; //$NON-NLS-1$
-
- private static final String P_FILE_ROLLOVER_FREQUENCY = "file.logging.rollover.frequency"; //$NON-NLS-1$
-
- private static final int DEBUG_LEVEL = 0;
-
- private static final int INFO_LEVEL = 1;
-
- private static final int WARN_LEVEL = 2;
-
- private static final int ERROR_LEVEL = 3;
-
- private static final int FATAL_LEVEL = 4;
-
- // What version of the platform are we on.
- private static boolean TWO_DOT_ONE;
-
- private static boolean THREE_DOT;
-
- private static String _version;
-
- // The shared instance.
- private static JSFUICommonPlugin _plugin;
-
- private Logger _log;
-
- private ResourceBundle _resourceBundle;
-
- private Properties _properties;
-
- private URL _pluginBase;
-
- private static Alerts _alerts;
-
- /**
- * The constructor.
- */
- public JSFUICommonPlugin() {
- super();
- _plugin = this;
- versionCheck();
- }
-
- private void versionCheck() {
- String version = (String) ResourcesPlugin.getPlugin().getBundle()
- .getHeaders().get(org.osgi.framework.Constants.BUNDLE_VERSION);
- Version identifier = new Version(version);
-
- TWO_DOT_ONE = ((identifier.getMajor() == 2) && (identifier
- .getMinor() == 1));
- THREE_DOT = (identifier.getMajor() == 3);
- _version = identifier.toString();
- }
-
- /**
- * This method is called upon plug-in activation
- */
- public void start(BundleContext context) throws Exception {
- super.start(context);
-
- // This plugin is for 3.0 only, do a version check.
- if (isThreeDot() == false) {
- throw new CoreException(new Status(IStatus.ERROR, getBundle()
- .getSymbolicName(), IStatus.OK,
- "Requires eclipse version 3.x", null)); //$NON-NLS-1$
- }
-
- try {
- // get resource bundle.
- _resourceBundle = ResourceBundle
- .getBundle("org.eclipse.jst.jsf.common.ui.CommonResources"); //$NON-NLS-1$
- _alerts = new Alerts(this, _resourceBundle);
-
- // get properties.
- _properties = new Properties();
- InputStream input = null;
- _pluginBase = getBundle().getEntry("/"); //$NON-NLS-1$
- try {
- input = (new URL(_pluginBase, PROPERTIES)).openStream();
- _properties.load(input);
- } finally {
- try {
- input.close();
- } catch (IOException ee)// NOPMD
- {
- // nothing to do when IOException throwed in closing files.
- }
- }
-
- // set up logging for this plugin and everthing under it.
- _log = new Logger(this.getBundle(), _resourceBundle);
-
- // NOTE: add in any other plugin code statup HERE!!!!
-
- // log.CommonPlugin=Web Application Development Common Plugin
- // initialized on eclipse version {0}.
-
- // log.info("log.CommonPlugin", version);
-
- } catch (Exception ee) {
- // only log if the logger was configured correctly.
- if (_log != null) {
- _log
- .error(
- "log.msg", //$NON-NLS-1$
- "Problems starting plug-in Web Application Development Common.", //$NON-NLS-1$
- ee);
- }
-
- throw new CoreException(
- new Status(
- IStatus.ERROR,
- getBundle().getSymbolicName(),
- IStatus.OK,
- "Problems starting plug-in Web Application Development Common", //$NON-NLS-1$
- ee));
- }
- }
-
- /**
- * Returns the shared instance.
- * @return the plugin instance
- */
- public static JSFUICommonPlugin getDefault() {
- return _plugin;
- }
-
- /**
- * get the alerts objects associated with this plugin for alerting the user.
- *
- * @return the alerts object
- */
- public static Alerts getAlerts() {
- return _alerts;
- }
-
- /**
- * Returns a logger for the new class using this plugin for reference.
- * @param theClass
- * @return the logger
- */
- // TODO: theClass is never used!!
- public static Logger getLogger(Class theClass) {
- return getDefault().getRootLogger();
- }
-
- /**
- * Returns the plugin's root logger
- * @return the root logger
- */
- public Logger getRootLogger() {
- return _log;
- }
-
- /**
- * Returns this plugin's unique identifier
- *
- * @return this plugin's unique identifier
- *
- */
- public static String getPluginId() {
- return getDefault().getBundle().getSymbolicName();
- }
-
- /**
- * Returns the plugin's resource bundle,
- * @return the resource bundle
- */
- public ResourceBundle getResourceBundle() {
- return _resourceBundle;
- }
-
- /**
- * Returns the string from the plugin's resource bundle, or 'key' if not
- * found.
- * @param key
- * @return the resource string
- */
- public static String getResourceString(String key) {
- ResourceBundle bundle = JSFUICommonPlugin.getDefault().getResourceBundle();
- try {
- return (bundle != null) ? bundle.getString(key) : key;
- } catch (MissingResourceException e) {
- return key;
- }
- }
-
- /**
- * Returns the plugin's descriptor's resource bundle,
- * @return the bundle
- */
- public ResourceBundle getPluginDecriptorBundle() {
- return Platform.getResourceBundle(getDefault().getBundle());
- }
-
- /**
- * Returns the plugin's default properties. These are normally used for
- * default preferences.
- * @return the properties
- */
- public Properties getProperties() {
- return _properties;
- }
-
- /**
- * Returns a shared image for the given name
- * <p>
- * Note: Images returned from this method will be automitically disposed of
- * when this plug-in shuts down. Callers must not dispose of these images
- * themselves.
- * </p>
- *
- * @param name
- * the image name found in /icons (with extension)
- * @return the image, null on error or not found.
- */
- public Image getImage(String name) {
- if (name == null) {
- return null;
- }
-
- ImageRegistry images = getImageRegistry();
- Image image = images.get(name);
- if (image == null) {
- try {
- ImageDescriptor id = ImageDescriptor.createFromURL(new URL(
- _pluginBase, "icons/" + name)); //$NON-NLS-1$
- images.put(name, id);
-
- image = images.get(name);
- } catch (MalformedURLException ee) {
- // log.CommonPlugin.image.error=Image {0} not found.
- _log.error("log.msg", "log.CommonPlugin.image.error", name, ee); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- return image;
- }
-
- /**
- * Returns a shared ImageDescriptor for the given name
- * <p>
- * Note: ImageDescriptor returned from this method will be automitically
- * disposed of when this plug-in shuts down. Callers must not dispose of
- * these ImageDescriptor themselves.
- * </p>
- *
- * @param name
- * the ImageDescriptor name found in /icons (with extension)
- * @return the ImageDescriptor, null on error or not found.
- */
- public ImageDescriptor getImageDescriptor(String name) {
- if (name == null) {
- return null;
- }
-
- ImageRegistry images = getImageRegistry();
- ImageDescriptor id = images.getDescriptor(name);
- if (id == null) {
- try {
- id = ImageDescriptor.createFromURL(new URL(_pluginBase,
- "icons/" + name)); //$NON-NLS-1$
- images.put(name, id);
- } catch (MalformedURLException ee) {
- // log.CommonPlugin.image.error=Image {0} not found.
- _log.error("log.msg", "log.CommonPlugin.image.error", name, ee); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- return id;
- }
-
- /**
- * Is this eclipse version 2.1
- *
- * @return true if version is 2.1
- */
- public static boolean isTwoDotOne() {
- return TWO_DOT_ONE;
- }
-
- /**
- * Is this eclipse version 3.x
- *
- * @return true if version is 3.x
- */
- public static boolean isThreeDot() {
- return THREE_DOT;
- }
-
- /**
- * get the eclipse version
- *
- * @return version string.
- */
- public static String getVersion() {
- return _version;
- }
-
-
-
- /**
- * Initializes the preference controls to the default values. These values
- * are used the first time the preference page is displayed or when the user
- * presses the Defaults button in the preferences page.
- */
- protected void initializeDefaultPreferences(IPreferenceStore store) {
- // NOTE: no logging can happen here since we haven't initialized logging
- // yet because it
- // depends on preferences!!!!
-
- store.setDefault(P_CONSOLE_LOGGING, _properties.getProperty(
- P_CONSOLE_LOGGING, Boolean.TRUE.toString()));
- store.setDefault(P_CONSOLE_LOG_LEVEL, strToIntLogLevel(_properties
- .getProperty(P_CONSOLE_LOG_LEVEL, "ERROR"))); //$NON-NLS-1$
-
- store.setDefault(P_ECLIPSE_LOGGING, _properties.getProperty(
- P_ECLIPSE_LOGGING, Boolean.TRUE.toString()));
- store.setDefault(P_ECLIPSE_LOG_LEVEL, strToIntLogLevel(_properties
- .getProperty(P_ECLIPSE_LOG_LEVEL, "ERROR"))); //$NON-NLS-1$
-
- store.setDefault(P_FILE_LOGGING, _properties.getProperty(
- P_FILE_LOGGING, Boolean.FALSE.toString()));
- store.setDefault(P_FILE_LOG_LEVEL, strToIntLogLevel(_properties
- .getProperty(P_FILE_LOG_LEVEL, "ERROR"))); //$NON-NLS-1$
- store.setDefault(P_FILE_PATH, _properties.getProperty(P_FILE_PATH, "")); //$NON-NLS-1$
- store.setDefault(P_FILE_CLEAR, _properties.getProperty(P_FILE_CLEAR,
- Boolean.TRUE.toString()));
- store.setDefault(P_FILE_ROLLOVER_FREQUENCY, _properties.getProperty(
- P_FILE_ROLLOVER_FREQUENCY, "DAILY")); //$NON-NLS-1$
- }
-
- /**
- * Converts the log level from string to int. The level defaults to
- * ERROR_LEVEL.
- *
- * @param str
- * String representation of log level
- * @return integer representation of log level
- */
- private int strToIntLogLevel(String str) {
- if (str == null) {
- return ERROR_LEVEL;
- }
- if (str.equalsIgnoreCase("DEBUG")) { //$NON-NLS-1$
- return DEBUG_LEVEL;
- }
- if (str.equalsIgnoreCase("INFO")) { //$NON-NLS-1$
- return INFO_LEVEL;
- }
- if (str.equalsIgnoreCase("WARN")) { //$NON-NLS-1$
- return WARN_LEVEL;
- }
- if (str.equalsIgnoreCase("FATAL")) { //$NON-NLS-1$
- return FATAL_LEVEL;
- }
- return ERROR_LEVEL;
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/IOpenPage.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/IOpenPage.java
deleted file mode 100644
index 8456083ed..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/IOpenPage.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.actions;
-
-/**
- * Editors should implement this if they can handle reseting to a page based on
- * the class defined for that page.
- *
- * @author collinsc,jchoi
- */
-public interface IOpenPage {
- /**
- * Sets the currently active page from the id of the page.
- *
- * @param pageID
- */
- public void setActiveEditorPage(String pageID);
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadCheatSheetAction.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadCheatSheetAction.java
deleted file mode 100644
index de7406f7c..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadCheatSheetAction.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExecutableExtension;
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.cheatsheets.OpenCheatSheetAction;
-
-/**
- * This class is used to open the cheat sheet based on the configuration
- * parameter.
- *
- * @author mengbo
- */
-public class LoadCheatSheetAction extends Action implements
- IExecutableExtension {
- private String _cheatSheetName = null;
-
- /**
- *
- */
- public LoadCheatSheetAction() {
- super();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.action.IAction#run()
- */
- public void run() {
- if (_cheatSheetName != null) {
- OpenCheatSheetAction action = new OpenCheatSheetAction(
- _cheatSheetName);
- action.run();
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IExecutableExtension#setInitializationData(org.eclipse.core.runtime.IConfigurationElement,
- * java.lang.String, java.lang.Object)
- */
- public void setInitializationData(IConfigurationElement config,
- String propertyName, Object data) throws CoreException {
- _cheatSheetName = config.getAttribute("actionparameters"); //$NON-NLS-1$
- }
-
- /**
- * set the cheatSheetName name to open.
- *
- * @param cheatSheetName
- */
- public void setCheatSheetName(String cheatSheetName) {
- _cheatSheetName = cheatSheetName;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadHelpAction.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadHelpAction.java
deleted file mode 100644
index 18b927d2b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/LoadHelpAction.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExecutableExtension;
-import org.eclipse.help.HelpSystem;
-import org.eclipse.help.IContext;
-import org.eclipse.help.IHelpResource;
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * This class is used to open the help page for a configuration param.
- *
- * @author mengbo
- */
-public class LoadHelpAction extends Action implements IExecutableExtension {
- private String _helpContextId = null;
-
- /**
- *
- */
- public LoadHelpAction() {
- super();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.action.IAction#run()
- */
- public void run() {
- IContext context = HelpSystem.getContext(_helpContextId);
- if (context != null) {
- IHelpResource[] topics = context.getRelatedTopics();
- if (topics != null && topics.length == 1) {
- PlatformUI.getWorkbench().getHelpSystem().displayHelpResource(
- topics[0].getHref());
- } else {
- PlatformUI.getWorkbench().getHelpSystem().displayHelp(
- _helpContextId);
- }
- }
-
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IExecutableExtension#setInitializationData(org.eclipse.core.runtime.IConfigurationElement,
- * java.lang.String, java.lang.Object)
- */
- public void setInitializationData(IConfigurationElement config,
- String propertyName, Object data) throws CoreException {
- _helpContextId = config.getAttribute("actionparameters"); //$NON-NLS-1$
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/OpenPageAction.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/OpenPageAction.java
deleted file mode 100644
index 252e44caf..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/actions/OpenPageAction.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExecutableExtension;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.forms.editor.FormEditor;
-
-/**
- * This class is used to open a page in the editor based on the configuration
- * parameter.
- *
- * @author collinsc,jchoi
- */
-public class OpenPageAction extends Action implements IExecutableExtension {
- private String pageID = null;
-
- private ISelection selection;
-
- /**
- *
- */
- public OpenPageAction() {
- super();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.action.IAction#run()
- */
- public void run() {
- if (pageID != null) {
- // get the active editor
- IEditorPart editor = getActiveEditor();
- IOpenPage openPage = (IOpenPage)editor.getAdapter(IOpenPage.class);
- if(openPage != null){
- openPage.setActiveEditorPage(pageID);
- if (selection != null && editor instanceof FormEditor) {
- IEditorPart activePage = ((FormEditor) editor)
- .getActiveEditor();
- if (activePage instanceof ISelectionProvider) {
- ((ISelectionProvider) activePage)
- .setSelection(selection);
- }
- }
- }
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IExecutableExtension#setInitializationData(org.eclipse.core.runtime.IConfigurationElement,
- * java.lang.String, java.lang.Object)
- */
- public void setInitializationData(IConfigurationElement config,
- String propertyName, Object data) throws CoreException {
- pageID = config.getAttribute("actionparameters"); //$NON-NLS-1$
- }
-
- /**
- * set the class name to open.
- * @param className
- */
- public void setPageName(String className) {
- this.pageID = className;
- }
-
- /**
- * get the current active editor
- *
- * @return the active editor part
- */
- public static IEditorPart getActiveEditor() {
- IEditorPart editor = null;
- IWorkbenchWindow win = PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow();
- if (win != null) {
- IWorkbenchPage page = win.getActivePage();
- if (page != null) {
- editor = page.getActiveEditor();
- }
- }
- return editor;
- }
-
- /**
- * @return stored selection
- */
- public ISelection getSelection() {
- return selection;
- }
-
- /**
- * @param selection
- */
- public void setSelection(ISelection selection) {
- this.selection = selection;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/AbstractClassButtonDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/AbstractClassButtonDialogField.java
deleted file mode 100644
index 165846a6b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/AbstractClassButtonDialogField.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jdt.ui.IJavaElementSearchConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.guiutils.Alerts;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.SelectionDialog;
-import org.eclipse.ui.forms.events.HyperlinkAdapter;
-import org.eclipse.ui.forms.events.HyperlinkEvent;
-
-/**
- * @author mengbo
- * @version 1.5
- */
-/*package*/ abstract class AbstractClassButtonDialogField extends
- StringButtonDialogField {
- private IProject _project;
-
- private String _superClass;
-
- private List _interfacesList;
-
- private IType _type;
-
- private int _typeFlag = IJavaElementSearchConstants.CONSIDER_ALL_TYPES;
-
- private boolean _autoOpenResource = true;
-
- /**
- * @param autoOpenResource
- */
- public void setAutoOpenResource(boolean autoOpenResource) {
- _autoOpenResource = autoOpenResource;
- }
-
- /**
- * @param project
- */
- public AbstractClassButtonDialogField(IProject project) {
- super(null);
- this._project = project;
-
- setHyperLink(new HyperlinkAdapter() {
- public void linkActivated(HyperlinkEvent e) {
- activeLink();
- }
- });
-
- setStringButtonAdapter(new IStringButtonAdapter() {
- public void changeControlPressed(DialogField field) {
- browseButtonPressed();
- }
- });
- }
-
- private void activeLink() {
- String className = getText();
- className = trimNonAlphaChars(className);
- if (className.length() > 0
- && JavaUIHelper.doesClassExist(_project, className)) {
- JavaUIHelper.doOpenClass(_project, className);
- } else {
- try {
- if (_project == null || !_project.hasNature(JavaCore.NATURE_ID)) {
- ResourceBundle rb = ResourceBundle
- .getBundle("org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogFieldResources"); //$NON-NLS-1$
- Alerts alerts = new Alerts(JSFUICommonPlugin.getDefault(), rb);
- alerts.error("ClassButtonDialogField.Alert.Title", //$NON-NLS-1$
- "ClassButtonDialogField.Alert.Msg"); //$NON-NLS-1$
- return;
- }
- } catch (CoreException e) {
- e.printStackTrace();
- return;
- }
- JavaClassWizard wizard = new JavaClassWizard(_project, className,
- _superClass, getImplementInterfaces());
- wizard.setAutoOpenResource(_autoOpenResource);
- WizardDialog dialog = new WizardDialog(getShell(), wizard);
- dialog.create();
-
- setDialogSize(dialog, 400, 500);
- if (dialog.open() == WizardDialog.OK) {
- String newValue = wizard.getClassNameWithArgs();
- if (!newValue.equals(className)) {
- setText(newValue);
- }
- }
- }
- }
-
- /**
- * @return the interfaces
- * TODO: the contract seems inconsistent
- * as whether to return null or empty list when none
- */
- protected abstract List getImplementInterfaces();
-
- /**
- * @return the java search scope to be used. Must not be null
- */
- protected abstract IJavaSearchScope getJavaSearchScope();
-
- private void browseButtonPressed() {
- Shell shell = getShell();
- SelectionDialog dialog = JavaUIHelper.openSelectionDialog(shell,
- getJavaSearchScope(), _typeFlag);
- dialog.setTitle(JSFUICommonPlugin
- .getResourceString("DialogField.ClassButton.SelectType"));//$NON-NLS-1$
-
- if (dialog.open() == SelectionDialog.OK) {
- String oldClassName = getText();
- if (dialog.getResult() != null) {
- _type = (IType) dialog.getResult()[0];
- String newClassName = _type.getFullyQualifiedName();
- if (!oldClassName.equals(newClassName)) {
- setText(newClassName);
- }
- }
- }
- }
-
- private void setDialogSize(Dialog dialog, int width, int height) {
- Point computedSize = dialog.getShell().computeSize(SWT.DEFAULT,
- SWT.DEFAULT);
- width = Math.max(computedSize.x, width);
- height = Math.max(computedSize.y, height);
- dialog.getShell().setSize(width, height);
- }
-
- private String trimNonAlphaChars(String className) {
- className = className.trim();
- while (className.length() > 0
- && !Character.isLetter(className.charAt(0))) {
- className = className.substring(1, className.length());
- }
- int loc = className.indexOf(":"); //$NON-NLS-1$
- if (loc != -1 && loc > 0) {
- className = className.substring(0, loc);
- } else if (loc == 0) {
- className = ""; //$NON-NLS-1$
- }
- return className;
- }
-
- /**
- * @return Returns the project.
- */
- public IProject getProject() {
- return _project;
- }
-
- /**
- * @param project
- * The project to set.
- */
- public void setProject(IProject project) {
- this._project = project;
- }
-
- /**
- * @return Returns the superClassName.
- */
- public String getSuperClassName() {
- return _superClass;
- }
-
- /**
- * @param superClassName
- * The superClassName to set.
- */
- public void setSuperClassName(String superClassName) {
- this._superClass = superClassName;
- }
-
- /**
- * @return Returns the interfacesList.
- */
- protected List getInterfacesList() {
- return _interfacesList;
- }
-
- /**
- * Sets (replaces) the interface list
- * TODO: this list can have at most one element
- * @param interfaceName
- */
- public void setInterface(String interfaceName) {
- _interfacesList = new ArrayList();
- _interfacesList.add(interfaceName);
- }
-
- /**
- * @return Returns the _type.
- */
- public IType getType() {
- return _type;
- }
-
- /**
- * @return Returns the typeFalg.
- */
- public int getTypeFlag() {
- return _typeFlag;
- }
-
- /**
- * @param typeFalg
- * The typeFalg to set.
- */
- public void setTypeFlag(int typeFalg) {
- this._typeFlag = typeFalg;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ClassButtonDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ClassButtonDialogField.java
deleted file mode 100644
index baed42bb5..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ClassButtonDialogField.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jdt.core.search.SearchEngine;
-
-/**
- * @author mengbo
- */
-public class ClassButtonDialogField extends AbstractClassButtonDialogField {
- /**
- * @param project
- */
- public ClassButtonDialogField(IProject project) {
- super(project);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.AbstractClassButtonDialogField#getImplementInterfaces()
- */
- protected List getImplementInterfaces() {
- return getInterfacesList();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.AbstractClassButtonDialogField#getJavaSearchScope()
- */
- protected IJavaSearchScope getJavaSearchScope() {
- IJavaSearchScope scope;
- String superType = getSuperClassName();
- List interfaceList = getInterfacesList();
- if (superType == null && interfaceList != null
- && interfaceList.size() > 0) {
- superType = interfaceList.get(0).toString();
- }
- if (getSuperClassName() != null && interfaceList != null
- && interfaceList.size() > 0) {
- superType = null;
- }
- if (superType == null) {
- scope = SearchEngine
- .createJavaSearchScope(new IJavaProject[] { JavaCore
- .create(getProject()) });
- } else {
- scope = JavaUIHelper.findSearchScope(getProject(), superType);
- }
- return scope;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorButtonDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorButtonDialogField.java
deleted file mode 100644
index 822841455..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorButtonDialogField.java
+++ /dev/null
@@ -1,339 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.jst.jsf.common.ui.internal.utils.StyleCombo;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.ColorDialog;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * This class provides a common color choice DialogFiled.
- *
- * @author mengbo
- */
-public class ColorButtonDialogField extends StyleComboDialogField {
- // color selection button
- private Button _button;
-
- // the button enable flag
- private boolean _buttonEnabled;
-
- // the current color
- private Color _color;
-
- // the current color RGB
- private RGB _colorValue;
-
- // the combo control
- private StyleCombo _combo;
-
- // when no color is set or selected, using the empty image
- private Image _emptyImage;
-
- // size of color image
- private Point _extent;
-
- // the color image
- private Image _image;
-
- private ColorPalette _colorPalette;
-
- /**
- * @param flags
- * @param colorPalette
- */
- public ColorButtonDialogField(int flags, ColorPalette colorPalette) {
- super(flags);
- _buttonEnabled = true;
- _colorPalette = colorPalette;
- }
-
- private void buttonPressed() {
- ColorDialog colorDialog = new ColorDialog(_button.getShell());
- colorDialog.setRGB(_colorValue);
- RGB newColor = colorDialog.open();
- if (newColor != null && !newColor.equals(_colorValue)) {
- _colorValue = newColor;
- setText(ColorPalette.getStringColor(newColor));
- updateColorImage();
- }
- }
-
- /**
- * Compute the size of the image to be displayed.
- *
- * @param window -
- * the window used to calculate
- * @return <code>Point</code>
- */
- private Point computeImageSize(Control window) {
- GC gc = new GC(window);
- Font f = _button.getFont();
- gc.setFont(f);
- int height = gc.getFontMetrics().getHeight();
-
- Point p = new Point(height * 3 - 6, height - 2);
- gc.dispose();
- return p;
- }
-
- private void disposeResources() {
- if (_image != null) {
- _image.dispose();
- _image = null;
- }
- if (_emptyImage != null) {
- _emptyImage.dispose();
- _emptyImage = null;
- }
- if (_color != null) {
- _color.dispose();
- _color = null;
- }
-
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField#doFillIntoGrid(org.eclipse.ui.forms.widgets.FormToolkit,
- * org.eclipse.swt.widgets.Composite, int)
- */
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns) {
- assertEnoughColumns(nColumns);
-
- Control requiredLabel = getRequiredLabelControl(toolkit, parent);
- requiredLabel.setLayoutData(gridDataForLabel(1));
-
- Control label = getLabelControl(toolkit, parent);
- label.setLayoutData(gridDataForLabel(1));
-
- StyleCombo combo = getComboControl(toolkit, parent);
- combo.setLayoutData(gridDataForCombo(nColumns - 3));
-
- _button = getChangeControl(toolkit, parent);
- _button.setLayoutData(gridDataForButton(1));
-
- return new Control[] { requiredLabel, label, combo, _button };
- }
-
- /**
- * Sets the enable state of the button.
- * @param enable
- */
- public void enableButton(boolean enable) {
- if (isOkToUse(_button)) {
- _button.setEnabled(isEnabled() && enable);
- }
- _buttonEnabled = enable;
- }
-
- /**
- * Creates or returns the created buttom widget.
- * @param toolkit
- *
- * @param parent
- * The parent composite or <code>null</code> if the widget has
- * already been created.
- * @return the button widget
- */
- public Button getChangeControl(FormToolkit toolkit, Composite parent) {
- if (_button == null) {
- assertCompositeNotNull(parent);
- if (toolkit != null) {
- _button = toolkit.createButton(parent, "", SWT.PUSH); //$NON-NLS-1$
- } else {
- _button = new Button(parent, SWT.PUSH);
- }
- _button.setEnabled(isEnabled() && _buttonEnabled);
-
- _button.addSelectionListener(new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- buttonPressed();
- }
-
- public void widgetSelected(SelectionEvent e) {
- buttonPressed();
- }
- });
-
- _button.addDisposeListener(new DisposeListener() {
- public void widgetDisposed(DisposeEvent event) {
- disposeResources();
- }
- });
-
- _extent = computeImageSize(parent);
- _image = new Image(parent.getDisplay(), _extent.x, _extent.y);
- _emptyImage = new Image(parent.getDisplay(), _extent.x, _extent.y);
- initEmptyImage(_button);
- updateColorImage();
- }
-
- return _button;
- }
-
- private String[] getColorList() {
- Map map = _colorPalette.getExtendedColorMap();
- List list = new ArrayList(map.keySet());
- Collections.sort(list);
- return (String[]) list.toArray(new String[list.size()]);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.StringDialogField#getTextControl(org.eclipse.ui.forms.widgets.FormToolkit,
- * org.eclipse.swt.widgets.Composite)
- */
- public StyleCombo getComboControl(FormToolkit toolkit, Composite parent) {
-
- if (_combo == null) {
- _combo = super.getComboControl(toolkit, parent);
-
- _combo.addSelectionListener(new SelectionListener() {
-
- public void widgetDefaultSelected(SelectionEvent e) {
- updateImageAfterChanged();
- }
-
- public void widgetSelected(SelectionEvent e) {
- updateImageAfterChanged();
- }
- });
- _combo.addFocusListener(new FocusAdapter() {
- public void focusLost(FocusEvent e) {
- updateImageAfterChanged();
- }
- });
- _combo.setItems(getColorList());
- }
- return _combo;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField#getNumberOfControls()
- */
- public int getNumberOfControls() {
- return 4;
- }
- private GridData gridDataForButton(int span) {
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = false;
- gd.horizontalSpan = span;
- gd.widthHint = LayoutUtil.getButtonWidthHint(_button);
- gd.heightHint = _combo.computeSize(SWT.DEFAULT, SWT.DEFAULT).y;
- return gd;
- }
-
- private void initEmptyImage(Control parent) {
- Color transparentColor = parent.getForeground();
- ImageData imageData = _emptyImage.getImageData();
- imageData.transparentPixel = 0;
- GC gc = new GC(_emptyImage);
- gc.setBackground(transparentColor);
- gc.fillRectangle(0, 0, _emptyImage.getBounds().width, _emptyImage
- .getBounds().height);
- }
-
- /**
- * Set the current color value and update the control.
- *
- * @param rgb
- * The new color.
- */
- public void setColorValue(RGB rgb) {
- _colorValue = rgb;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.ComboDialogField#setTextWithoutUpdate(java.lang.String)
- */
- public void setTextWithoutUpdate(String text) {
- super.setTextWithoutUpdate(text);
- updateImageAfterChanged();
- }
-
- /**
- * Update the image being displayed on the button using the current color
- * setting.
- */
- protected void updateColorImage() {
- if (_button.isDisposed()) {
- return;
- }
-
- if (_colorValue == null) {
- _button.setImage(_emptyImage);
- return;
- }
-
- Display display = _button.getDisplay();
- GC gc = new GC(_image);
- gc.setForeground(display.getSystemColor(SWT.COLOR_BLACK));
- gc.drawRectangle(0, 0, _extent.x - 1, _extent.y - 1);
- if (_color != null) {
- _color.dispose();
- }
- _color = new Color(display, _colorValue);
- gc.setBackground(_color);
- gc.fillRectangle(1, 1, _extent.x - 2, _extent.y - 2);
- gc.dispose();
- _button.setImage(_image);
- }
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(_button)) {
- _button.setEnabled(isEnabled() && _buttonEnabled);
- }
- }
-
- private void updateImageAfterChanged() {
- String newColor = getText().trim();
- setColorValue(_colorPalette.getExtendedColorRGB(newColor));
- updateColorImage();
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorPalette.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorPalette.java
deleted file mode 100644
index 454a4c0a5..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ColorPalette.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.RGB;
-
-/**
- * Defines a two sets: one of basic and one of extended colors. Clients extending
- * this class must provide the two maps
- *
- * @author cbateman
- *
- */
-public abstract class ColorPalette
-{
- /**
- * @param cssText
- * @return the basic color matching the cssText key or null if color doesn't exist
- */
- public final Color getBasicColor(String cssText) {
- return (Color) getBasicColorMap().get(cssText.toLowerCase());
- }
-
- /**
- * @param cssText
- * @return the extended color matching the cssText key or null if color doesn't exist
- */
- public final Color getExtendedColor(String cssText) {
- Set keys = getExtendedColorMap().keySet();
- for (Iterator iterator = keys.iterator(); iterator.hasNext();) {
- String key = (String) iterator.next();
- if (key.equalsIgnoreCase(cssText)) {
- return (Color) getExtendedColorMap().get(key);
- }
- }
- return null;
- }
-
- /**
- * @return the map of basic colors where the key is the color name (a string)
- * and the value is an RGB object
- */
- public abstract Map getBasicColorMap();
-
- /**
- * @return the map of extended colors where the key is the color name (a string)
- * and the value is an Color object
- */
- public abstract Map getExtendedColorMap();
-
- /**
- * @param textColor
- * @return same as getExtendedColor but returns value as an RGB object
- */
- public final RGB getExtendedColorRGB(String textColor) {
- if (textColor == null || textColor.length() == 0) {
- return null;
- }
-
- Color color = getExtendedColor(textColor);
- if (color != null) {
- return color.getRGB();
- }
-
- if (textColor.charAt(0) == '#' && textColor.length() == 4) {
- char[] rgbChars = textColor.toCharArray();
- char[] fullChars = { rgbChars[0], rgbChars[1], rgbChars[1],
- rgbChars[2], rgbChars[2], rgbChars[3], rgbChars[3] };
-
- textColor = String.valueOf(fullChars);
- }
-
- if (textColor.charAt(0) == '#' && textColor.length() == 7) {
- try {
- int intColor = Integer.decode(textColor).intValue();
-
- if (intColor > 0xFFFFFF || intColor < 0) {
- return null;
- }
- int r = intColor >> 16;
- int g = (intColor >> 8) & 0xFF;
- int b = intColor & 0xFF;
- return new RGB(r, g, b);
-
- } catch (NumberFormatException e) {
- return null;
- }
- }
- return null;
- }
-
- /**
- * @param rgb
- * @return the hex string for equivalent of the rgb color
- */
- public static String getStringColor(RGB rgb) {
- if (rgb == null) {
- return ""; //$NON-NLS-1$
- }
-
- StringBuffer buffer = new StringBuffer("#"); //$NON-NLS-1$
- int[] intRGBs = new int[] { rgb.red, rgb.green, rgb.blue };
- for (int i = 0; i < 3; i++) {
- if (intRGBs[i] < 16) {
- buffer.append("0"); //$NON-NLS-1$
- }
- buffer.append(Integer.toHexString(intRGBs[i]).toUpperCase());
- }
- return buffer.toString();
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ComboDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ComboDialogField.java
deleted file mode 100644
index 582634e13..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ComboDialogField.java
+++ /dev/null
@@ -1,320 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.Map;
-import java.util.Map.Entry;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * Dialog field containing a label and a combo control.
- *
- * If the combo control is editable, then when user type in the field, will only
- * fire dialogFieldChanged, without dialogFieldApplied just as text control. But
- * when user change selection using the drop down, will fire both
- * dialogFieldChanged and dialogFieldApplied
- *
- * @author mengbo
- */
-public class ComboDialogField extends DialogFieldBase implements
- ISupportTextValue {
- final static private int WIDTH_HINT = 10;
-
- private String _text;
-
- private int _selectionIndex;
-
- private String[] _items;
-
- private CCombo _comboControl;
-
- private ModifyListener _modifyListener;
-
- private int _flags;
-
- private boolean _pending = false;
-
- private Map _entryMap;
-
- /**
- * @param flags
- */
- public ComboDialogField(int flags) {
- super();
- _text = ""; //$NON-NLS-1$
- _items = new String[0];
- _flags = flags;
- _selectionIndex = -1;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns) {
- assertEnoughColumns(nColumns);
-
- Control requiredLabel = getRequiredLabelControl(toolkit, parent);
- requiredLabel.setLayoutData(gridDataForLabel(1));
-
- Control label = getLabelControl(toolkit, parent);
- label.setLayoutData(gridDataForLabel(1));
-
- CCombo combo = getComboControl(toolkit, parent);
- combo.setLayoutData(gridDataForCombo(nColumns - 2));
-
- return new Control[] { requiredLabel, label, combo };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- private static GridData gridDataForCombo(int span) {
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = false;
- gd.horizontalSpan = span;
- gd.widthHint = WIDTH_HINT;
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(_comboControl)) {
- _comboControl.setFocus();
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created combo control.
- * @param toolkit
- *
- * @param parent
- * The parent composite or <code>null</code> when the widget
- * has already been created.
- * @return the custom combo control
- */
- public CCombo getComboControl(FormToolkit toolkit, Composite parent) {
- if (_comboControl == null || _comboControl.isDisposed()) {
- assertCompositeNotNull(parent);
- _modifyListener = new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- doModifyText(e);
- }
- };
- SelectionListener selectionListener = new SelectionListener() {
- public void widgetSelected(SelectionEvent e) {
- doSelectionChanged(e);
- }
-
- public void widgetDefaultSelected(SelectionEvent e) {
- handleDefaultSelection(e);
- }
- };
-
- if (toolkit != null) {
- _comboControl = new CCombo(parent, _flags);
- toolkit.adapt(_comboControl);
- } else {
- _comboControl = new CCombo(parent, _flags | SWT.BORDER);
- _comboControl.setBackground(Display.getCurrent()
- .getSystemColor(SWT.COLOR_LIST_BACKGROUND));
- }
-
- // moved up due to 1GEUNW2
- _comboControl.setItems(_items);
- if (_selectionIndex != -1) {
- _comboControl.select(_selectionIndex);
- } else {
- _comboControl.setText(_text);
- }
- _comboControl.setFont(parent.getFont());
- _comboControl.addModifyListener(_modifyListener);
- _comboControl.addSelectionListener(selectionListener);
- _comboControl.addFocusListener(new FocusAdapter() {
- public void focusLost(FocusEvent e) {
- doFocusLost(e);
- }
- });
- _comboControl.setEnabled(isEnabled());
- _comboControl.setToolTipText(getToolTip());
- }
- return _comboControl;
- }
-
- private void handleDefaultSelection(SelectionEvent e) {
- // commit value
- if (_pending) {
- _pending = false;
- dialogFieldApplied();
- }
- }
-
- private void doFocusLost(FocusEvent e) {
- if (_pending) {
- _pending = false;
- dialogFieldApplied();
- }
- }
-
- private void doModifyText(ModifyEvent e) {
- if (isOkToUse(_comboControl)) {
- _text = getEntryKey(_comboControl.getText());
- _selectionIndex = _comboControl.getSelectionIndex();
- }
- _pending = true;
- dialogFieldChanged();
- }
-
- private void doSelectionChanged(SelectionEvent e) {
- if (isOkToUse(_comboControl)) {
- _items = _comboControl.getItems();
- _text = getEntryKey(_comboControl.getText());
- _selectionIndex = _comboControl.getSelectionIndex();
- }
- _pending = false;
- dialogFieldChangedAndApplied();
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(_comboControl)) {
- _comboControl.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
-
- /**
- * Sets the combo items. Triggers a dialog-changed event.
- * @param items
- */
- public void setItems(String[] items) {
- _items = items;
- if (isOkToUse(_comboControl)) {
- _comboControl.setItems(items);
- }
- _pending = false;
- // dialogFieldChangedAndApplied();
- }
-
- /**
- * Gets the text.
- */
- public String getText() {
- return _text;
- }
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- */
- public void setText(String text) {
- setTextWithoutUpdate(text);
- _pending = false;
- dialogFieldChangedAndApplied();
- }
-
- /**
- * Selects an item.
- * @param index
- */
- public void selectItem(int index) {
- if (isOkToUse(_comboControl)) {
- _comboControl.select(index);
- } else {
- if (index >= 0 && index < _items.length) {
- _text = getEntryKey(_items[index]);
- _selectionIndex = index;
- }
- }
- dialogFieldChangedAndApplied();
- }
-
- /**
- * Sets the text without triggering a dialog-changed event.
- */
- public void setTextWithoutUpdate(String text) {
- _pending = false;
- if (text == null) {
- text = "";//$NON-NLS-1$
- }
- _text = text;
- if (isOkToUse(_comboControl)) {
- _comboControl.removeModifyListener(_modifyListener);
- _comboControl.setText(getEntryValue(text));
- _comboControl.addModifyListener(_modifyListener);
- }
- }
-
- private String getEntryValue(String key) {
- if (_entryMap == null || !_entryMap.containsKey(key)) {
- return key;
- }
- return _entryMap.get(key).toString();
- }
-
- private String getEntryKey(String value) {
- if (_entryMap == null || !_entryMap.containsValue(value)) {
- return value;
- }
-
- Entry[] entries = (Entry[]) _entryMap.entrySet().toArray(new Entry[0]);
- for (int i = 0; i < entries.length; i++) {
- if (entries[i].getValue() == value
- || (value != null && value.equals(entries[i].getValue()))) {
- return entries[i].getKey().toString();
- }
- }
- return value;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField#handleGrabHorizontal()
- */
- public void handleGrabHorizontal() {
- LayoutUtil.setGrabHorizontal(_comboControl, true);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogField.java
deleted file mode 100644
index 0ff86f78c..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogField.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.forms.events.IHyperlinkListener;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * @author mengbo
- * @version 1.5
- */
-public interface DialogField {
- /**
- * this method must be called directly after constructor, in this case,
- * system will create a hyper link label, and when the hyper link is
- * clicked, the corresponding method on the listener will be called. A
- * RuntimeException will throw out if this method is called after the label
- * has been created.
- *
- * @param listener
- * can't be null
- */
- public abstract void setHyperLink(IHyperlinkListener listener);
-
- /**
- * Sets the label of the dialog field.
- * @param labeltext
- */
- public abstract void setLabelText(String labeltext);
-
- // ------ change listener
- /**
- * Listener that is notified on a field change
- * @param listener
- */
- public abstract void setDialogFieldChangeListener(
- IDialogFieldChangeListener listener);
-
- /**
- * Listener that is notified on a field apply
- * @param listener
- */
- public abstract void setDialogFieldApplyListener(
- IDialogFieldApplyListener listener);
-
- // ------- focus management
- /**
- * Tries to set the focus to the dialog field. Returns <code>true</code>
- * if the dialog field can take focus. To be re-implemented by dialog field
- * implementors.
- * @return true if dialog field can take focus
- */
- public abstract boolean setFocus();
-
- /**
- * Creates all controls of the dialog field and fills it to a composite. The
- * composite is assumed to have <code>MGridLayout</code> as layout. The
- * dialog field will adjust its controls' spans to the number of columns
- * given. To be reimplemented by dialog field implementors.
- * @param toolkit
- * @param parent
- * @param nColumns
- * @return the controls
- */
- public abstract Control[] doFillIntoGrid(FormToolkit toolkit,
- Composite parent, int nColumns);
-
- /**
- * Returns the number of columns of the dialog field. To be reimplemented by
- * dialog field implementors.
- * @return the number of columns
- */
- public abstract int getNumberOfControls();
-
- // ------- ui creation
- /**
- * @param _formToolkit
- * @param parent
- * @return the label control
- */
- public abstract Control getLabelControl(FormToolkit _formToolkit,
- Composite parent);
-
- // --------- enable / disable management
- /**
- * @param enabled
- */
- public abstract void setEnabled(boolean enabled);
-
- /**
- * Gets the enable state of the dialog field.
- * @return true if enabled is set
- */
- public abstract boolean isEnabled();
-
- /**
- * Get attached data by key.
- *
- * @param key
- * @return the attached data object for key
- */
- public abstract Object getAttachedData(Object key);
-
- /**
- * You can attach any data to the DialogField, and get it using the
- * <code>getAttachedData</code> method.
- *
- * @param key
- * @param value
- */
- public abstract void putAttachedData(Object key, Object value);
-
- /**
- * this method give the DialogField a chance to set the correct column to
- * grab horizontal space. In the implementation of this method, should only
- * change the GridData of control, should not do anything else.
- *
- * The caller is responsible to make sure the controls for the dialog field
- * has been created before calling this method.
- */
- public abstract void handleGrabHorizontal();
-
- /**
- * @return true if is required field
- */
- public abstract boolean isRequired();
-
- /**
- * @param toolTip
- */
- public abstract void setToolTip(String toolTip);
-
- /**
- * @return the field's enclosing shell or null if none
- */
- public Shell getShell();
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldBase.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldBase.java
deleted file mode 100644
index 7d61f4983..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldBase.java
+++ /dev/null
@@ -1,559 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseTrackAdapter;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.forms.events.IHyperlinkListener;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Hyperlink;
-
-/**
- * Base class of all Dialog fields. Dialog fields manage controls together with
- * the model, independed from the creation time of the widgets. - support for
- * automated layouting. - enable / disable, set focus a concept of the base
- * class. DialogField have a label.
- *
- * DialogField may be used in two different context:
- * <ol>
- * <li> In side dialog. In this case, whenever there is anything change in the
- * dialog field, such as user type anything, the dialog should listen to the
- * dialogFieldChanged() events and do things like validation. When user press
- * the "OK" button, dialog should call getXXX to get the value from the dialog
- * field and apply them.
- * <li> In side form based editor or properties view. In this case, whenever
- * there is anything change in the dialog field, such as user type anything, the
- * editor/view should listen to the dialogFieldChanged() events and do things
- * like validation. When user press "Enter" or move the focus out of the control
- * (finish editing), the dialog field will fire out dialogFieldApplied() events,
- * and the editor/view should listen to this event and apply the value to the
- * underlying model.
- * </ol>
- *
- * The basic idea of the DialogField framework is comming from
- * <code>org.eclipse.jface.preference.FieldEditor</code> and
- * <code>org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField</code>
- *
- * @author mengbo
- */
-public class DialogFieldBase implements DialogField {
- private Label _label;
-
- private Label _requiredLabel;
-
- private String _labelText;
-
- private IDialogFieldChangeListener _dialogFieldChangeListener;
-
- private IDialogFieldApplyListener _dialogFieldApplyListener;
-
- private boolean _enabled;
-
- private FontMetrics _fontMetrics;
-
- private IHyperlinkListener _listener;
-
- private Hyperlink _hyperlink;
-
- private Map _attachedData;
-
- private boolean _isRequired;
-
- private String toolTip;
-
- /**
- * default constructor
- */
- public DialogFieldBase() {
- _enabled = true;
- _label = null;
- _requiredLabel = null;
- _hyperlink = null;
- _labelText = ""; //$NON-NLS-1$
- }
-
- /**
- * this method must be called directly after constructor, in this case,
- * system will create a hyper link label, and when the hyper link is
- * clicked, the corresponding method on the listene will be called. A
- * RuntimeException will throw out if this method is called after the label
- * has been created.
- *
- * @param listener
- * can't be null
- */
- public void setHyperLink(IHyperlinkListener listener) {
- if (_label != null) {
- throw new RuntimeException(
- "The Label instance does not support the listener"); //$NON-NLS-1$
- }
- this._listener = listener;
- }
-
- /**
- * Sets the label of the dialog field.
- */
- public void setLabelText(String labeltext) {
- _labelText = labeltext == null ? "" : labeltext; //$NON-NLS-1$
- // if (_isRequired)
- // {
- // _labelText = "* " + _labelText;
- // }
- // else
- // {
- // _labelText = " " + _labelText;
- // }
- if (_label != null && !_label.isDisposed()) {
- _label.setText(_labelText);
- } else if (_hyperlink != null && !_hyperlink.isDisposed()) {
- _hyperlink.setText(_labelText);
- }
- }
-
- /**
- * @return return the enclosing Shell or null if one cannot be determined
- */
- public Shell getShell() {
- if (_label != null && !_label.isDisposed()) {
- return _label.getShell();
- } else if (_hyperlink != null && !_hyperlink.isDisposed()) {
- return _hyperlink.getShell();
- }
- return null;
- }
-
- // ------ change listener
-
- /**
- * Defines the listener for this dialog field.
- */
- public final void setDialogFieldChangeListener(
- IDialogFieldChangeListener listener) {
- _dialogFieldChangeListener = listener;
- }
-
- public final void setDialogFieldApplyListener(
- IDialogFieldApplyListener listener) {
- _dialogFieldApplyListener = listener;
- }
-
- /**
- * fire both dialogFieldChanged and dialogFieldApplied events.
- */
- public void dialogFieldChangedAndApplied() {
- if (_dialogFieldChangeListener != null) {
- _dialogFieldChangeListener.dialogFieldChanged(this);
- }
- if (_dialogFieldApplyListener != null) {
- _dialogFieldApplyListener.dialogFieldApplied(this);
- }
- }
-
- /**
- * fire dialogFieldChanged event.
- *
- */
- public void dialogFieldChanged() {
- if (_dialogFieldChangeListener != null) {
- _dialogFieldChangeListener.dialogFieldChanged(this);
- }
- }
-
- /**
- * fire dialogFieldApplied event.
- *
- */
- public void dialogFieldApplied() {
- if (_dialogFieldApplyListener != null) {
- _dialogFieldApplyListener.dialogFieldApplied(this);
- }
- }
-
- // ------- focus management
-
-
- public boolean setFocus() {
- return false;
- }
-
- //
- // /**
- // * Posts <code>setFocus</code> to the display event queue.
- // */
- // public void postSetFocusOnDialogField(Display display)
- // {
- // if (display != null)
- // {
- // display.asyncExec(new Runnable()
- // {
- // public void run()
- // {
- // setFocus();
- // }
- // }
- // );
- // }
- // }
-
- // ------- layout helpers
-
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns) {
- assertEnoughColumns(nColumns);
-
- Control label = getLabelControl(toolkit, parent);
- label.setLayoutData(gridDataForLabel(nColumns));
-
- return new Control[] { label };
- }
-
- /**
- * Initializes the computation of horizontal and vertical dialog units based
- * on the size of current font.
- * <p>
- * This method must be called before any of the dialog unit based conversion
- * methods are called.
- * </p>
- *
- * @param control
- * a control from which to obtain the current font
- * @return the font metrics for control
- */
- protected FontMetrics getDialogUnits(Control control) {
- if (_fontMetrics == null) {
- // Compute and store a font metric
- GC gc = new GC(control);
- gc.setFont(control.getFont());
- _fontMetrics = gc.getFontMetrics();
- gc.dispose();
- }
- return _fontMetrics;
- }
-
- /**
- * Returns the number of columns of the dialog field. To be reimplemented by
- * dialog field implementors.
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- /**
- * @param span
- * @return a new GridData for the horizontal 'span' value
- */
- protected static GridData gridDataForLabel(int span) {
- GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gd.horizontalSpan = span;
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created label widget.
- *
- * @param parent
- * The parent composite or <code>null</code> if the widget has
- * already been created.
- */
- public Control getLabelControl(FormToolkit _formToolkit, Composite parent) {
- Control control = null;
- if ((_label == null || _label.isDisposed()) && (_hyperlink == null || _hyperlink.isDisposed())) {
- assertCompositeNotNull(parent);
-
- String label = null;
- if (_labelText != null && !"".equals(_labelText)) { //$NON-NLS-1$
- //$NON-NLS-1$
- label = _labelText;
- } else {
- label = "."; //$NON-NLS-1$
- }
-
- if (_listener == null) {
- control = createLabel(_formToolkit, parent, label);
- } else {
- control = createHyperlink(_formToolkit, parent, label);
- }
- /**
- * if(isRequired) { FontData[] fontData =
- * parent.getFont().getFontData(); FontData[] newFontData = new
- * FontData[fontData.length]; for(int i=0; i<fontData.length; i++) {
- * newFontData[i] = new FontData(fontData[i].getName(),
- * fontData[i].getHeight(), fontData[i].getStyle() | SWT.BOLD); }
- * final Font font = new Font(control.getDisplay(),newFontData);
- * control.setFont(font); control.addDisposeListener(new
- * DisposeListener() {
- *
- * public void widgetDisposed(DisposeEvent e) { font.dispose(); }
- * }); } else { control.setFont(parent.getFont()); }
- */
- control.setFont(parent.getFont());
- control.setEnabled(_enabled);
- } else {
- if (_label != null) {
- control = _label;
- } else {
- control = _hyperlink;
- }
- }
- return control;
- }
-
- /**
- * @param _formToolkit
- * @param parent
- * @return get the Label control for required
- */
- public Control getRequiredLabelControl(FormToolkit _formToolkit,
- Composite parent) {
- if (_requiredLabel == null || _requiredLabel.isDisposed()) {
- if (_formToolkit == null) {
- _requiredLabel = new Label(parent, SWT.LEFT | SWT.WRAP);
- } else {
- _requiredLabel = _formToolkit.createLabel(parent, "", SWT.LEFT //$NON-NLS-1$
- | SWT.WRAP);
- _requiredLabel.setForeground(getLabelColor());
- }
- if (_isRequired) {
- _requiredLabel.setText(DialogFieldResources.getInstance()
- .getString("DialogFieldBase.Label.RequiredSymbol")); //$NON-NLS-1$
- }
- }
- return _requiredLabel;
- }
-
- private Control createLabel(FormToolkit _formToolkit, Composite parent,
- String labelString) {
- if (_formToolkit == null) {
- _label = new Label(parent, SWT.LEFT | SWT.WRAP);
- _label.setText(labelString);
- } else {
- _label = _formToolkit.createLabel(parent, labelString, SWT.LEFT
- | SWT.WRAP);
- _label.setForeground(getLabelColor());
- }
- return _label;
- }
-
- /**
- * get color for label
- */
- private Color getLabelColor() {
- String osname = System.getProperty("os.name").toLowerCase(); //$NON-NLS-1$
- if (osname.startsWith("mac os")) { //$NON-NLS-1$
- return Display.getCurrent().getSystemColor(
- SWT.COLOR_LIST_FOREGROUND);
- }
- return Display.getCurrent()
- .getSystemColor(SWT.COLOR_LIST_SELECTION);
- }
-
- private Control createHyperlink(FormToolkit _formToolkit, Composite parent,
- String label) {
- if (_formToolkit == null) {
- _hyperlink = new Hyperlink(parent, SWT.LEFT | SWT.WRAP);
- _hyperlink.setForeground(getLabelColor());
- _hyperlink.setUnderlined(true);
- _hyperlink.addMouseTrackListener(new MouseTrackAdapter() {
-
- public void mouseEnter(MouseEvent e) {
- _hyperlink.setForeground(Display.getCurrent()
- .getSystemColor(SWT.COLOR_BLUE));
- }
-
- public void mouseExit(MouseEvent e) {
- _hyperlink.setForeground(getLabelColor());
- }
- });
- _hyperlink.setText(label);
- } else {
- _hyperlink = _formToolkit.createHyperlink(parent, label, SWT.LEFT
- | SWT.WRAP);
- }
- _hyperlink.addHyperlinkListener(_listener);
- return _hyperlink;
- }
-
- /**
- * Creates a spacer control.
- * @param toolkit
- *
- * @param parent
- * The parent composite
- * @return a spacer control
- */
- public Control createEmptySpace(FormToolkit toolkit, Composite parent) {
- return createEmptySpace(toolkit, parent, 1);
- }
-
- /**
- * Creates a spacer control with the given span. The composite is assumed to
- * have <code>MGridLayout</code> as layout.
- * @param toolkit
- *
- * @param parent
- * The parent composite
- * @param span
- * @return a label that creates empty space
- */
- public Control createEmptySpace(FormToolkit toolkit, Composite parent,
- int span) {
- Label label;
- if (toolkit != null) {
- label = toolkit.createLabel(parent, ""); //$NON-NLS-1$
- } else {
- label = new Label(parent, SWT.LEFT);
- }
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.BEGINNING;
- gd.grabExcessHorizontalSpace = false;
- gd.horizontalSpan = span;
- gd.horizontalIndent = 0;
- gd.widthHint = 0;
- gd.heightHint = 0;
- label.setLayoutData(gd);
- return label;
- }
-
- /**
- * Tests is the control is not <code>null</code> and not disposed.
- * @param control
- * @return true if the control is valid for use
- */
- protected final boolean isOkToUse(Control control) {
- return (control != null) && !(control.isDisposed());
- }
-
- // --------- enable / disable management
-
- /**
- * Sets the enable state of the dialog field.
- */
- public final void setEnabled(boolean enabled) {
- if (enabled != _enabled) {
- _enabled = enabled;
- updateEnableState();
- }
- }
-
- /**
- * Called when the enable state changed. To be extended by dialog field
- * implementors.
- */
- protected void updateEnableState() {
- if (_label != null && !_label.isDisposed()) {
- _label.setEnabled(_enabled);
- }
- if (_hyperlink != null && !_hyperlink.isDisposed()) {
- _hyperlink.setEnabled(_enabled);
- }
- }
-
- /**
- * Gets the enable state of the dialog field.
- */
- public final boolean isEnabled() {
- return _enabled;
- }
-
- /**
- * @param comp
- */
- protected final void assertCompositeNotNull(Composite comp) {
- Assert.isNotNull(comp,
- "uncreated control requested with composite null"); //$NON-NLS-1$
- }
-
- /**
- * @param nColumns
- */
- protected final void assertEnoughColumns(int nColumns) {
- Assert.isTrue(nColumns >= getNumberOfControls(),
- "given number of columns is too small"); //$NON-NLS-1$
- }
-
- /**
- * Get attached data by key.
- *
- * @param key
- * @return the attached data object for key
- */
- public Object getAttachedData(Object key) {
- if (_attachedData != null) {
- return _attachedData.get(key);
- }
- return null;
- }
-
- /**
- * You can attach any data to the DialogField, and get it using the
- * <code>getAttachedData</code> method.
- *
- * @param key
- * @param value
- */
- public void putAttachedData(Object key, Object value) {
- if (_attachedData == null) {
- _attachedData = new HashMap();
- }
- _attachedData.put(key, value);
- }
-
- /**
- * this method give the DialogField a chance to set the correct column to
- * grab horizontal space. In the implementation of this method, should only
- * change the GridData of control, should not do anything else.
- *
- * The caller is responsible to make sure the controls for the dialog field
- * has been created before calling this method.
- */
- public void handleGrabHorizontal() {
- // do nothing.
- }
-
- public boolean isRequired() {
- return _isRequired;
- }
-
- /**
- * @param isRequired
- */
- public void setRequired(boolean isRequired) {
- this._isRequired = isRequired;
- }
-
- /**
- * @return gthe tool tip text
- */
- protected String getToolTip() {
- return toolTip;
- }
-
- public void setToolTip(String toolTip) {
- this.toolTip = toolTip;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroup.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroup.java
deleted file mode 100644
index 0ed7b3a66..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroup.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * This class represents a group of dialog fields, following the normal dialog
- * field's lifecycle.
- *
- * The design of this class is to make a section could be reused in both dialog
- * environment and form based editor environment.
- *
- * @author mengbo
- */
-public abstract class DialogFieldGroup {
- private IDialogFieldChangeListener _defaultChangeListener;
-
- private IDialogFieldApplyListener _defaultApplyListener;
-
- /**
- * set default handler, should be called before <code>initialize()</code>
- * @param changelistener
- *
- */
- public void setDefaultChangeListener(
- IDialogFieldChangeListener changelistener) {
- _defaultChangeListener = changelistener;
- }
-
- /**
- * Normally, the client should call this method in <code>initialize()</code>
- * for those field that wants to use the default event handler.
- *
- * @return could be null
- */
- public IDialogFieldChangeListener getDefaultChangeListener() {
- return _defaultChangeListener;
- }
-
- /**
- * set default handler, should be called before <code>initialize()</code>
- *
- * @param applylistener
- */
- public void setDefaultApplyListener(IDialogFieldApplyListener applylistener) {
- _defaultApplyListener = applylistener;
- }
-
- /**
- * Normally, the client should call this method in <code>initialize()</code>
- * for those field that wants to use the default event handler.
- *
- * @return could be null
- */
- public IDialogFieldApplyListener getDefaultApplyListener() {
- return _defaultApplyListener;
- }
-
- /**
- * it is supposed to create all dialog fields and setup event listeners in
- * this method.
- *
- * Normally client will create DialogFieldSection first, then
- * setDefaultChangeListener()/setDefaultApplyListener(), then call
- * initialize().
- */
- public abstract void initialize();
-
- /**
- * reload data from underlying model and set them into the dialog fields.
- *
- */
- public abstract void refreshData();
-
- /**
- * layout the dialog fields.
- *
- * @param toolkit
- * could be null
- * @param parent
- *
- */
- public abstract void layoutDialogFields(FormToolkit toolkit,
- Composite parent);
-
- /**
- * validate whether the values in the dialog fields are valid. This method
- * should also enable/disable dialog fields based on their current value and
- * relationship
- *
- * @return could return null. or an array containing null elements.
- */
- public abstract IStatus[] validateDialogFields();
-
- /**
- * Intended to allow subclasses to recreate controls. Default implementation does nothing.
- */
- public void reset(){
- //do nothing by default
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroupPage.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroupPage.java
deleted file mode 100644
index 2e10f45e3..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldGroupPage.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * @author mengbo
- */
-public class DialogFieldGroupPage extends WizardPage {
- private DialogFieldGroup _group;
-
- private IDialogFieldChangeListener _defaultChangeListener = new IDialogFieldChangeListener() {
- public void dialogFieldChanged(DialogField field) {
- validate();
- }
- };
-
- /**
- * @param pageName
- * @param section
- */
- public DialogFieldGroupPage(String pageName, DialogFieldGroup section) {
- super(pageName);
- _group = section;
- initializeGroup(_group);
- }
-
- /**
- * child class could override this method.
- *
- * @param group
- */
- protected void initializeGroup(DialogFieldGroup group) {
- group.setDefaultChangeListener(_defaultChangeListener);
- group.initialize();
- }
-
- public void createControl(Composite parent) {
- Composite container = new Composite(parent, SWT.NONE);
- _group.layoutDialogFields(null, container);
- _group.refreshData();
- validate();
- this.setControl(container);
- }
-
- /**
- * @return the dialog field group
- */
- public DialogFieldGroup getDialogFieldGroup() {
- return _group;
- }
-
- /**
- * validate all the dialog fields. Updates
- * status line and sets page completion if there are no errors
- */
- private void validate() {
- IStatus[] statuses = _group.validateDialogFields();
- IStatus status = StatusUtil.getMostSevere(statuses);
- StatusUtil.applyToStatusLine(this, status);
- setPageComplete(status == null || status.getSeverity() != IStatus.ERROR);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.java
deleted file mode 100644
index 30828e6b7..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.jst.jsf.common.ui.internal.utils.ResourceUtils;
-
-/**
- * Resource bundle class for datastore wizard and it's pages
- *
- * @author mengbo
- */
-/*package*/ class DialogFieldResources extends ResourceUtils {
- /** Create the logger for this class */
- private static Logger _log = JSFUICommonPlugin
- .getLogger(DialogFieldResources.class);
-
- private static DialogFieldResources _resource; // singleton
-
- private static final String BUNDLE = DialogFieldResources.class.getName();
-
- /**
- * Empty Constructor.
- *
- * @return WizardsResources
- */
-
- public static DialogFieldResources getInstance() {
- if (_resource == null) {
- _resource = new DialogFieldResources();
- }
- return _resource;
- }
-
- /**
- * The constructor create a resource bundle
- */
- protected DialogFieldResources() {
- try {
- _resources = ResourceBundle.getBundle(BUNDLE);
- // NOTE: this throws a runtime "MissingResourceException".
- } catch (MissingResourceException ee) {
- // Wizards.WizardResource.Error.ResourceNotFound = Unable to locate
- // resource.
- _log.error("Wizards.WizardResource.Error.ResourceNotFound", ee); //$NON-NLS-1$
- }
- setBundle(_resources, BUNDLE);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.properties
deleted file mode 100644
index ad34404dd..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/DialogFieldResources.properties
+++ /dev/null
@@ -1,48 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2007 Oracle Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Oracle Corporation - initial API and implementation
-###############################################################################
-##################################################################
-# Resource message for SourceFolderButtonDialogField.
-##################################################################
-SourceFolderButtonDialogField.container.label = Source Folder:
-SourceFolderButtonDialogField.container.button = Browse...
-
-SourceFolderButtonDialogField.ChooseSourceContainerDialog.Title = Folder Selection
-SourceFolderButtonDialogField.ChooseSourceContainerDialog.Description = Choose a folder:
-
-SourceFolderButtonDialogField.error.EnterContainerName = Folder name is empty.
-SourceFolderButtonDialogField.error.NotSameProject = The project should be \''{0}\''.
-SourceFolderButtonDialogField.error.ContainerIsBinary=''{0}'' is a JAR archive.
-SourceFolderButtonDialogField.error.ContainerDoesNotExist=Folder ''{0}'' does not exist.
-SourceFolderButtonDialogField.error.NotAFolder=''{0}'' must be a project or folder.
-SourceFolderButtonDialogField.error.ProjectClosed=Project ''{0}'' must be accessible.
-SourceFolderButtonDialogField.warning.NotAJavaProject=Folder ''{0}'' is not a Java project.
-SourceFolderButtonDialogField.warning.NotInAJavaProject=Folder ''{0}'' is not in a Java project.
-SourceFolderButtonDialogField.warning.NotOnClassPath=Folder ''{0}'' is not on the Java build class path.
-
-
-##################################################################
-# Resource message for PackageButtonDialogField.
-##################################################################
-PackageButtonDialogField.package.label=Pac&kage:
-PackageButtonDialogField.package.button=Bro&wse...
-
-PackageButtonDialogField.error.InvalidPackageName=Package name ''{0}'' is not valid.
-PackageButtonDialogField.error.ClashOutputLocation=Package clashes with project output folder.
-PackageButtonDialogField.warning.DiscouragedPackageName=This package name ''{0}'' is discouraged.
-PackageButtonDialogField.warning.DefaultPackageDiscouraged=The use of the default package is discouraged.
-
-PackageButtonDialogField.ChoosePackageDialog.title=Package Selection
-PackageButtonDialogField.ChoosePackageDialog.description=&Choose a folder:
-PackageButtonDialogField.ChoosePackageDialog.empty=Cannot find packages to select.
-
-ClassButtonDialogField.Alert.Title=Error Open Type
-ClassButtonDialogField.Alert.Msg=The project does not have Java Nature.
-DialogFieldBase.Label.RequiredSymbol=* \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldApplyListener.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldApplyListener.java
deleted file mode 100644
index e8be7b8f8..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldApplyListener.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-
-/**
- * @author mengbo
- */
-public interface IDialogFieldApplyListener {
- /**
- * when the DialogField believe it should apply its value in UI, will fire
- * this event.
- *
- * Normally, for text input, when user is typing, will only fire
- * dialogFieldChanged(), when lose focus will fire dialogFieldApplied().
- *
- * For other control, such as readonly combo box, whenever user change
- * selection, will fire both dialogFieldChanged() and dialogFieldApplied()
- *
- * @param field
- */
- void dialogFieldApplied(DialogField field);
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldChangeListener.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldChangeListener.java
deleted file mode 100644
index b5ead67e0..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IDialogFieldChangeListener.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-
-/**
- * Change listener used by <code>DialogField</code>
- *
- * @author mengbo
- */
-public interface IDialogFieldChangeListener {
-
- /**
- * The dialog field has changed.
- * @param field
- */
- void dialogFieldChanged(DialogField field);
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IStringButtonAdapter.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IStringButtonAdapter.java
deleted file mode 100644
index 466e35578..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/IStringButtonAdapter.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-
-/**
- * Change listener used by <code>StringButtonDialogField</code>
- */
-public interface IStringButtonAdapter {
-
- /**
- * @param field
- */
- void changeControlPressed(DialogField field);
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ISupportTextValue.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ISupportTextValue.java
deleted file mode 100644
index 014752d66..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ISupportTextValue.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-/**
- * DialogField can choose to also implement this interface. The purpose of this
- * interface is to make DialogFields to be more easily used to edit element
- * attributes, since attributes are all of string type.
- *
- * @author mengbo
- * @version 1.5
- */
-public interface ISupportTextValue {
- /**
- * @param value
- */
- public void setTextWithoutUpdate(String value);
-
- /**
- * @return the text
- */
- public String getText();
-
- /**
- * @param value
- */
- public void setText(String value);
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizard.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizard.java
deleted file mode 100644
index 745874044..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizard.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.ui.JavaUI;
-import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.WorkspaceModifyOperation;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.wizards.newresource.BasicNewResourceWizard;
-
-/**
- * @author mengbo
- */
-/*package*/ class JavaClassWizard extends Wizard {
- private static String STORE_SECTION = "JavaClassWizard"; //$NON-NLS-1$
-
- private JavaClassWizardPage _mainPage;
-
- private String _className, _classArgs;
-
- private IProject _project;
-
- private String _superClass;
-
- private List _interfaceList;
-
- private boolean _autoOpenResource = true;
-
- /**
- * @param autoOpenResource
- */
- public void setAutoOpenResource(boolean autoOpenResource) {
- _autoOpenResource = autoOpenResource;
- }
-
- /**
- * @param project
- * @param className
- */
- public JavaClassWizard(IProject project, String className) {
- this(project, className, null, null);
- }
-
- /**
- * @param project
- * @param className
- * @param superClass
- * @param superInterfaces
- */
- public JavaClassWizard(IProject project, String className,
- String superClass, List superInterfaces) {
- this._project = project;
- this._className = className;
- this._superClass = superClass;
- this._interfaceList = superInterfaces;
- IDialogSettings masterSettings = JSFUICommonPlugin.getDefault()
- .getDialogSettings();
- setDialogSettings(getSettingsSection(masterSettings));
- setWindowTitle(JSFUICommonPlugin
- .getResourceString("DialogField.JavaClassWizard.NewClass"));//$NON-NLS-1$
- setNeedsProgressMonitor(true);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.wizard.IWizard#addPages()
- */
- public void addPages() {
- _mainPage = new JavaClassWizardPage(_project, _className, _superClass,
- _interfaceList);
- addPage(_mainPage);
- _mainPage.init();
- }
-
- private IDialogSettings getSettingsSection(IDialogSettings master) {
- IDialogSettings setting = master.getSection(STORE_SECTION);
- if (setting == null) {
- setting = master.addNewSection(STORE_SECTION);
- }
- return setting;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.wizard.IWizard#performFinish()
- */
- public boolean performFinish() {
- if (_mainPage.getPackageText() != null
- && _mainPage.getPackageText().length() > 0) {
- StringBuffer buffer = new StringBuffer(_mainPage.getPackageText());
- buffer.append(".");//$NON-NLS-1$
- buffer.append(_mainPage.getTypeName());
- _className = buffer.toString();
- } else {
- _className = _mainPage.getTypeName();
- }
- _classArgs = _mainPage.getClassArgs();
- IRunnableWithProgress op = new WorkspaceModifyOperation() {
- protected void execute(IProgressMonitor monitor)
- throws CoreException, InvocationTargetException,
- InterruptedException {
- _mainPage.createType(monitor);
- IResource resource = _mainPage.getModifiedResource();
- if (resource != null && _autoOpenResource) {
- selectAndReveal(resource);
- if (_project.hasNature(JavaCore.NATURE_ID)) {
- IJavaProject jProject = JavaCore.create(_project);
- IJavaElement jElement = jProject.findElement(resource
- .getProjectRelativePath()
- .removeFirstSegments(1));
- if (jElement != null) {
- JavaUI.openInEditor(jElement);
- }
- } else if (resource instanceof IFile) {
- IWorkbenchPage page = PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getActivePage();
- IDE.openEditor(page, (IFile) resource, true);
- }
- }
- }
-
- };
- try {
- getContainer().run(false, true, op);
- } catch (InvocationTargetException e) {
- e.printStackTrace(); // PDEPlugin.logException(e);
- } catch (InterruptedException e) {
- e.printStackTrace();// PDEPlugin.logException(e);
- }
- return true;
- }
-
- private void selectAndReveal(IResource newResource) {
- BasicNewResourceWizard.selectAndReveal(newResource,
- getWorkbenchWindow());
- }
-
- private IWorkbenchWindow getWorkbenchWindow() {
- return PlatformUI.getWorkbench().getActiveWorkbenchWindow();
- }
-
- private String getClassName() {
- return _className;
- }
-
- /**
- * @return the class name including args
- */
- public String getClassNameWithArgs() {
- if (_classArgs != null && _classArgs.length() > 0) {
- StringBuffer buffer = new StringBuffer(_className);
- buffer.append(":");//$NON-NLS-1$
- buffer.append(_classArgs);
- return buffer.toString();
- }
- return getClassName();
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizardPage.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizardPage.java
deleted file mode 100644
index b445c60c2..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaClassWizardPage.java
+++ /dev/null
@@ -1,249 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.core.IPackageFragmentRoot;
-import org.eclipse.jdt.core.JavaConventions;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.ui.wizards.NewClassWizardPage;
-
-/**
- * @author mengbo
- */
-/*package*/ class JavaClassWizardPage extends NewClassWizardPage {
- private String _className;
-
- private final IProject _project;
-
- private final InitialClassProperties _initialValues;
-
- private IJavaProject _javaProject;
-
- private IStatus _fClassNameStatus, _fPackageNameStatus;
-
- private final static String SOURCE_COMPLIANCE_1_3 = JavaCore.VERSION_1_3;
-
- static class InitialClassProperties {
- // populate new wizard page
- private String superClassName;
-
- private List interfacesName;
-
- private String className;
-
- private String classArgs;
-
- private String packageName;
-
- private IPackageFragmentRoot packageFragmentRoot;
-
- private IPackageFragment packageFragment;
-
- InitialClassProperties() {
- this.superClassName = ""; //$NON-NLS-1$
- this.interfacesName = null;
- this.className = null;
- this.classArgs = null;
- this.packageName = null;
- this.packageFragment = null;
- this.packageFragmentRoot = null;
- }
- }
-
- /**
- * @param project
- * @param className
- * @param superClassName
- * @param interfacesName
- */
- public JavaClassWizardPage(IProject project, String className,
- String superClassName, List interfacesName) {
- super();
- this._className = className;
- this._project = project;
- try {
- if (project != null && project.hasNature(JavaCore.NATURE_ID)) {
- this._javaProject = JavaCore.create(project);
- } else {
- this._javaProject = null;
- }
- } catch (CoreException e) {
- e.printStackTrace();// PDEPlugin.logException(e);
- }
- _initialValues = new InitialClassProperties();
- _initialValues.className = className;
- _initialValues.superClassName = superClassName;
- _initialValues.interfacesName = interfacesName;
- }
-
- /**
- * @param project
- * @param className
- */
- public JavaClassWizardPage(IProject project, String className) {
- this(project, className, null, null);
- }
-
- /**
- * Call when page is added to wizard to initialize
- */
- public void init() {
- initializeExpectedValues();
- initializeWizardPage();
- }
-
- private void initializeExpectedValues() {
- // source folder name, package name, class name
- int loc = _className.indexOf(":"); //$NON-NLS-1$
- if (loc != -1) {
- if (loc < _className.length()) {
- _initialValues.classArgs = _className.substring(loc + 1,
- _className.length());
- _className = _className.substring(0, loc);
- }
- if (loc > 0) {
- _initialValues.className = _className.substring(0, loc);
- } else if (loc == 0) {
- _initialValues.className = ""; //$NON-NLS-1$
- }
- }
- _fClassNameStatus = JavaConventions
- .validateJavaTypeName(_initialValues.className, SOURCE_COMPLIANCE_1_3,SOURCE_COMPLIANCE_1_3);
-
- loc = _className.lastIndexOf('.');
- if (loc != -1) {
- _initialValues.packageName = _className.substring(0, loc);
- _initialValues.className = _className.substring(loc + 1);
- _fPackageNameStatus = JavaConventions
- .validateJavaTypeName(_initialValues.packageName, SOURCE_COMPLIANCE_1_3,SOURCE_COMPLIANCE_1_3);
- _fClassNameStatus = JavaConventions
- .validateJavaTypeName(_initialValues.className, SOURCE_COMPLIANCE_1_3,SOURCE_COMPLIANCE_1_3);
- }
- if (_javaProject == null) {
- return;
- }
- try {
- if (_initialValues.packageFragmentRoot == null) {
- IPackageFragmentRoot srcEntryDft = null;
- IPackageFragmentRoot[] roots = _javaProject
- .getPackageFragmentRoots();
- for (int i = 0; i < roots.length; i++) {
- if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {
- srcEntryDft = roots[i];
- break;
- }
- }
- if (srcEntryDft != null) {
- _initialValues.packageFragmentRoot = srcEntryDft;
- } else {
- _initialValues.packageFragmentRoot = _javaProject
- .getPackageFragmentRoot(_javaProject.getResource());
- }
- if (_initialValues.packageFragment == null
- && _initialValues.packageFragmentRoot != null
- && _initialValues.packageName != null
- && _initialValues.packageName.length() > 0) {
- IFolder packageFolder = _project
- .getFolder(_initialValues.packageName);
- _initialValues.packageFragment = _initialValues.packageFragmentRoot
- .getPackageFragment(packageFolder
- .getProjectRelativePath().toOSString());
- }
- }
- // superclass and interface
- if (_initialValues.superClassName == null) {
- _initialValues.superClassName = "java.lang.Object"; //$NON-NLS-1$
- }
-// _initialValues.superClassType = findTypeForName(_initialValues.superClassName);
- } catch (JavaModelException e) {
- e.printStackTrace();// PDEPlugin.logException(e);
- }
- }
-
- /**
- * initialize the wizard page
- */
- protected void initializeWizardPage() {
- setPackageFragmentRoot(_initialValues.packageFragmentRoot, true);
- setPackageFragment(_initialValues.packageFragment, true);
- setEnclosingType(null, true);
- setEnclosingTypeSelection(false, true);
- setTypeName(_initialValues.className, true);
- setSuperClass(_initialValues.superClassName, true);
- if (_initialValues.interfacesName != null) {
- setSuperInterfaces(_initialValues.interfacesName, true);
- }
- boolean hasSuperClass = _initialValues.superClassName != null
- && _initialValues.superClassName.length() > 0;
- boolean hasInterface = _initialValues.interfacesName != null
- && _initialValues.interfacesName.size() > 0;
- setMethodStubSelection(false, hasSuperClass, hasInterface
- || hasSuperClass, true);
- }
-
-// private IType findTypeForName(String typeName) throws JavaModelException {
-// if (typeName == null || typeName.length() == 0) {
-// return null;
-// }
-// IType type = null;
-// String fileName = typeName.replace('.', '/') + ".java"; //$NON-NLS-1$
-// IJavaElement element = _javaProject.findElement(new Path(fileName));
-// if (element == null) {
-// return null;
-// }
-// if (element instanceof IClassFile) {
-// type = ((IClassFile) element).getType();
-// } else if (element instanceof ICompilationUnit) {
-// IType[] types = ((ICompilationUnit) element).getTypes();
-// type = types[0];
-// }
-// return type;
-// }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.ui.wizards.NewClassWizardPage#setVisible(boolean)
- */
- public void setVisible(boolean visible) {
- super.setVisible(visible);
- // policy: wizards are not allowed to come up with an error message;
- // in this wizard, some fields may need initial validation and thus,
- // potentially start with an error message.
- if (_fClassNameStatus != null && !_fClassNameStatus.isOK()) {
- updateStatus(_fClassNameStatus);
- }
- if (_fPackageNameStatus != null && !_fPackageNameStatus.isOK()) {
- updateStatus(_fPackageNameStatus);
- }
- }
-
- /**
- * @return the class arguments or "" if not set
- */
- public String getClassArgs() {
- if (_initialValues.classArgs == null) {
- return ""; //$NON-NLS-1$
- }
- return _initialValues.classArgs;
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScope.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScope.java
deleted file mode 100644
index 8ac58072d..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScope.java
+++ /dev/null
@@ -1,221 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.ITypeHierarchy;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jst.jsf.common.ui.IFileFolderConstants;
-
-/**
- * @author mengbo
- */
-/*package*/ class JavaSearchScope implements IJavaSearchScope {
- private final IProject _project;
-
- private final String _superType;
-
- private HashSet _allowedTypeSet;
-
- private IPath[] _enclosingProjectsAndJars;
-
- private IProject[] _relativeProjects;
-
- /**
- * @param project
- * @param superType
- */
- public JavaSearchScope(IProject project, String superType) {
- this._project = project;
- this._superType = superType;
- computeRelativeProjects();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#enclosingProjectsAndJars()
- */
- public IPath[] enclosingProjectsAndJars() {
- if (_enclosingProjectsAndJars == null) {
- ArrayList list = new ArrayList();
- for (int i = 0; i < _relativeProjects.length; i++) {
- try {
- if (_relativeProjects[i].hasNature(JavaCore.NATURE_ID)) {
- IJavaProject javaProject = JavaCore
- .create(_relativeProjects[i]);
- IClasspathEntry[] classpath = javaProject
- .getResolvedClasspath(true);
- for (int j = 0; j < classpath.length; j++) {
- list.add(classpath[j].getPath());
- }
- list.add(javaProject.getPath());
- }
- } catch (CoreException e)// NOPMD
- {
- // skip the project.
- }
- }
- _enclosingProjectsAndJars = (IPath[]) list.toArray(new IPath[(list
- .size())]);
- }
- return _enclosingProjectsAndJars;
- }
-
- private void computeRelativeProjects() {
- try {
- IProject[] referencedProjects = _project.getReferencedProjects();
- _relativeProjects = new IProject[referencedProjects.length + 1];
- System.arraycopy(referencedProjects, 0, _relativeProjects, 1,
- referencedProjects.length);
- _relativeProjects[0] = _project;
- } catch (CoreException e) {
- _relativeProjects = new IProject[] { _project };
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#encloses(java.lang.String)
- */
- public boolean encloses(String resourcePath) {
- if (_allowedTypeSet == null) {
- try {
- _allowedTypeSet = findAllowedTypes(_superType);
- } catch (CoreException e) {
- e.printStackTrace();
- }
- }
- if (_allowedTypeSet == null) {
- _allowedTypeSet = new HashSet();
- }
- int separatorIndex = resourcePath.indexOf(JAR_FILE_ENTRY_SEPARATOR);
- if (separatorIndex != -1) {
- String className = resourcePath.substring(separatorIndex + 1,
- resourcePath.length() - 6).replace('/', '.');
- if (_allowedTypeSet.contains(className)) {
- return true;
- }
- } else if (_allowedTypeSet.contains(resourcePath)) {
- return true;
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#encloses(org.eclipse.jdt.core.IJavaElement)
- */
- public boolean encloses(IJavaElement element) {
- return encloses(element.getPath().toString());
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#includesBinaries()
- */
- public boolean includesBinaries() {
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#includesClasspaths()
- */
- public boolean includesClasspaths() {
- return true;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#setIncludesBinaries(boolean)
- */
- public void setIncludesBinaries(boolean includesBinaries) {
- // do nothing, includeBinaries always true
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#setIncludesClasspaths(boolean)
- */
- public void setIncludesClasspaths(boolean includesClasspaths) {
- // do nothing, includeClasspaths always trues
- }
-
- private HashSet findAllowedTypes(String superType) throws CoreException {
- HashSet set = new HashSet();
-
- IProject[] projects = _relativeProjects;
-
- for (int i = 0; i < projects.length; i++) {
- IType type = null;
- if (projects[i].hasNature(JavaCore.NATURE_ID)) {
- IJavaProject javaProject = JavaCore.create(projects[i]);
- if (superType != null) {
- try {
- type = javaProject.findType(superType);
- if (type != null) {
- ITypeHierarchy typeHierarchy = type
- .newTypeHierarchy(javaProject, null);
- IType[] subtypes = typeHierarchy
- .getAllSubtypes(type);
- for (int j = 0; j < subtypes.length; j++) {
- if (!subtypes[j].isBinary()) {
- set.add(subtypes[j].getPath().toString());
- } else {
- String path = subtypes[j].getPath()
- .toString();
- if (path != null
- && path
- .endsWith(IFileFolderConstants.DOT
- + IFileFolderConstants.EXT_JAR)) {
- set.add(subtypes[j]
- .getFullyQualifiedName());
- } else {
- set.add(path);
- }
- }
- }
- }
- } catch (JavaModelException e) {
- e.printStackTrace();
- }
- }
- }
- }
- return set;
- }
-
- /**
- * @return Returns the superType.
- */
- public String getSuperType() {
- return _superType;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScopeDecorator.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScopeDecorator.java
deleted file mode 100644
index 94cd55ca1..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaSearchScopeDecorator.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-
-/**
- * @author mengbo
- * @version 1.5
- */
-/*package*/ class JavaSearchScopeDecorator implements IJavaSearchScope {
- JavaSearchScope[] _scopes = new JavaSearchScope[0];
-
- /**
- * @param project
- * @param superTypes
- */
- public JavaSearchScopeDecorator(IProject project, List superTypes) {
- List scopeList = new ArrayList();
- if (superTypes != null) {
- for (int i = 0; i < superTypes.size(); i++) {
- scopeList.add(new JavaSearchScope(project, superTypes.get(i)
- .toString()));
- }
- }
- _scopes = (JavaSearchScope[]) scopeList
- .toArray(new JavaSearchScope[scopeList.size()]);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#encloses(java.lang.String)
- */
- public boolean encloses(String resourcePath) {
- for (int i = 0; i < _scopes.length; i++) {
- if (_scopes[i].encloses(resourcePath) == true) {
- return true;
- }
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#encloses(org.eclipse.jdt.core.IJavaElement)
- */
- public boolean encloses(IJavaElement element) {
- for (int i = 0; i < _scopes.length; i++) {
- if (_scopes[i].encloses(element) == true) {
- return true;
- }
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#enclosingProjectsAndJars()
- */
- public IPath[] enclosingProjectsAndJars() {
- Set set = new HashSet();
- for (int i = 0; i < _scopes.length; i++) {
- set.addAll(Arrays.asList(_scopes[i].enclosingProjectsAndJars()));
- }
- return (IPath[]) set.toArray(new IPath[set.size()]);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#includesBinaries()
- */
- public boolean includesBinaries() {
- for (int i = 0; i < _scopes.length; i++) {
- if (_scopes[i].includesBinaries() == true) {
- return true;
- }
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#includesClasspaths()
- */
- public boolean includesClasspaths() {
- for (int i = 0; i < _scopes.length; i++) {
- if (_scopes[i].includesClasspaths() == true) {
- return true;
- }
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#setIncludesBinaries(boolean)
- */
- public void setIncludesBinaries(boolean includesBinaries) {
- for (int i = 0; i < _scopes.length; i++) {
- _scopes[i].setIncludesBinaries(includesBinaries);
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.core.search.IJavaSearchScope#setIncludesClasspaths(boolean)
- */
- public void setIncludesClasspaths(boolean includesClasspaths) {
- for (int i = 0; i < _scopes.length; i++) {
- _scopes[i].setIncludesClasspaths(includesClasspaths);
- }
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaUIHelper.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaUIHelper.java
deleted file mode 100644
index 8bee86022..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/JavaUIHelper.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jdt.core.search.SearchEngine;
-import org.eclipse.jdt.ui.JavaUI;
-import org.eclipse.jface.dialogs.ProgressMonitorDialog;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.SelectionDialog;
-import org.eclipse.ui.ide.IDE;
-
-/**
- * @author mengbo
- */
-public final class JavaUIHelper {
- /**
- * @param project
- * @param className
- */
- static void doOpenClass(IProject project, String className) {
- String path = className.replace('.', '/') + ".java"; //$NON-NLS-1$
- try {
- if (project.hasNature(JavaCore.NATURE_ID)) {
- IJavaProject javaProject = JavaCore.create(project);
- IJavaElement result = javaProject.findElement(new Path(path));
- JavaUI.openInEditor(result);
- } else {
- IResource resource = project.findMember(new Path(path));
- if (resource instanceof IFile) {
- IWorkbenchPage page = PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getActivePage();
- IDE.openEditor(page, (IFile) resource, true);
- }
- }
- } catch (PartInitException e) {
- e.printStackTrace();// PDEPlugin.logException(e);
- } catch (JavaModelException e) {
- e.printStackTrace();// Display.getCurrent().beep();
- } catch (CoreException e) {
- e.printStackTrace();// PDEPlugin.logException(e);
- }
- }
-
- /**
- * @param project
- * @param className
- * @return true if the class exists in project
- */
- static boolean doesClassExist(IProject project, String className) {
- String path = className.replace('.', '/') + ".java"; //$NON-NLS-1$
- try {
- if (project.hasNature(JavaCore.NATURE_ID)) {
- IJavaProject javaProject = JavaCore.create(project);
-
- IJavaElement result = javaProject.findElement(new Path(path));
- return result != null;
- }
- IResource resource = project.findMember(new Path(path));
- return resource != null;
- } catch (JavaModelException e) {
- return false;
- } catch (CoreException e) {
- return false;
- }
- }
-
- /**
- * @param shell
- * @param searchScope
- * @param typeFlag
- * @return the selection dialog
- */
- static SelectionDialog openSelectionDialog(Shell shell,
- IJavaSearchScope searchScope, int typeFlag) {
- try {
- return JavaUI.createTypeDialog(shell, new ProgressMonitorDialog(
- shell), searchScope, typeFlag, false);
- } catch (JavaModelException e) {
- JSFUICommonPlugin.getLogger(JavaUIHelper.class).error(e);
- return null;
- }
- }
-
- /**
- * @param shell
- * @param project
- * @param superType
- * @param typeFlag
- * @return the selection dialog
- */
- public static SelectionDialog openSelectionDialog(Shell shell,
- IProject project, String superType, int typeFlag) {
- IJavaSearchScope searchScope = findSearchScope(project, superType);
- return openSelectionDialog(shell, searchScope, typeFlag);
- }
-
- /**
- * @param project
- * @param superType
- * @return the search scope
- */
- static IJavaSearchScope findSearchScope(IProject project,
- String superType) {
- if (project != null) {
- if (superType == null || "".equals(superType)) { //$NON-NLS-1$
- superType = "java.lang.Object";//$NON-NLS-1$
- }
- return new JavaSearchScope(project, superType);
- }
- return SearchEngine.createWorkspaceScope();
- }
-
- private JavaUIHelper()
- {
- // static helper, no instantiation
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/LayoutUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/LayoutUtil.java
deleted file mode 100644
index 2457cd153..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/LayoutUtil.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * A layout utility class
- *
- */
-public final class LayoutUtil {
- // The Text control looks higher then Button control when they have the same
- // height,
- // Increasing the height of 5 pixels will make them looks the same height.
- private final static int BUTTON_HEIGHT_ADJUSTMENT = 5;
-
-
- /**
- * @param control
- * @param grab
- */
- public static void setGrabHorizontal(Control control, boolean grab) {
- Object ld = control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData) ld).grabExcessHorizontalSpace = grab;
- }
- }
-
- /**
- * Sets the width hint of a control. Assumes that GridData is used.
- * @param control
- * @param widthHint
- */
- public static void setWidthHint(Control control, int widthHint) {
- Object ld = control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData) ld).widthHint = widthHint;
- }
- }
-
-
- /**
- * Sets the horizontal indent of a control. Assumes that GridData is used.
- * @param control
- * @param horizontalIndent
- */
- static void setHorizontalIndent(Control control, int horizontalIndent) {
- Object ld = control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData) ld).horizontalIndent = horizontalIndent;
- }
- }
-
- /**
- * Sets the horizontal indent of a control. Assumes that GridData is used.
- * @param control
- */
- public static void setHorizontalGrabbing(Control control) {
- Object ld = control.getLayoutData();
- if (ld instanceof GridData) {
- ((GridData) ld).grabExcessHorizontalSpace = true;
- }
- }
-
- /**
- * Returns a width hint for a button control.
- * @param button
- * @return the hint value
- */
- static int getButtonWidthHint(Button button) {
- if (button.getFont().equals(JFaceResources.getDefaultFont()))
- button.setFont(JFaceResources.getDialogFont());
-
- GC gc = new GC(button);
- gc.setFont(button.getFont());
- FontMetrics fontMetrics = gc.getFontMetrics();
- gc.dispose();
-
- int length = button.getText().length();
- int widthHint = Dialog.convertWidthInCharsToPixels(fontMetrics,
- length < 2 ? 2 : length);
- return Math.max(widthHint, button.computeSize(SWT.DEFAULT, SWT.DEFAULT,
- true).x);
- }
-
- static int getButtonHeightHint(FormToolkit toolkit, Text text) {
- if (toolkit != null) {
- return text.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).y
- + BUTTON_HEIGHT_ADJUSTMENT;
- }
- return text.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).y;
- }
-
- private LayoutUtil()
- {
- // static utility class; no instantiation
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/RadiosDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/RadiosDialogField.java
deleted file mode 100644
index 7db537b68..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/RadiosDialogField.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.RowLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * This will display a labal and a group of radio buttons. The group of radio
- * buttons will be layed out horizontally use a RowLayout, and them as a group
- * will use one cell in the GridLayout.
- *
- * Whenever the radios selection change will fire both dialogFieldChanged() and
- * dialogFieldApplied() event.
- *
- * @author mengbo
- */
-public class RadiosDialogField extends DialogFieldBase {
- final static private String INDEXKEY = "INDEX"; //$NON-NLS-1$
-
- private Composite _group;
-
- private String[] _items;
-
- private Button[] _button;
-
- private int _selectIndex = -1;
-
- private boolean _fireEvent = true;
-
- /**
- * Default constructor
- */
- public RadiosDialogField() {
- super();
- }
-
- /**
- * this method must be called before create control
- *
- * @param items
- */
- public void setItems(String[] items) {
- _items = items;
- _button = new Button[_items.length];
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns) {
- assertEnoughColumns(nColumns);
-
- Control requiredLabel = getRequiredLabelControl(toolkit, parent);
- requiredLabel.setLayoutData(gridDataForLabel(1));
-
- Control label = getLabelControl(toolkit, parent);
- label.setLayoutData(gridDataForLabel(1));
-
- _group = getGroup(toolkit, parent);
- _group.setLayoutData(gridDataForGroup(nColumns - 2));
-
- return new Control[] { requiredLabel, label, _group };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- /**
- * @param span
- * @return the grid data
- */
- protected static GridData gridDataForGroup(int span) {
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = false;
- gd.horizontalSpan = span;
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(_group)) {
- _group.setFocus();
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * @param toolkit
- * @param parent
- * @return the group composite
- */
- public Composite getGroup(FormToolkit toolkit, Composite parent) {
- if (_group == null || _group.isDisposed()) {
- assertCompositeNotNull(parent);
- if (toolkit != null) {
- _group = toolkit.createComposite(parent);
- } else {
- _group = new Composite(parent, SWT.NONE);
- }
- RowLayout layout = new RowLayout();
- layout.marginBottom = 0;
- _group.setLayout(layout);
- for (int i = 0; i < _items.length; i++) {
- if (toolkit != null) {
- _button[i] = toolkit.createButton(_group, _items[i],
- SWT.RADIO);
- } else {
- _button[i] = new Button(_group, SWT.RADIO);
- _button[i].setText(_items[i]);
- }
- _button[i].setData(INDEXKEY, new Integer(i));
- _button[i].addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent e) {
- if (_fireEvent) {
- _selectIndex = ((Integer) e.widget
- .getData(INDEXKEY)).intValue();
- // FIXME: seemed will fire widgetSelected twice, one
- // for the deselect one,
- // one for the newly selected one. Need investigate.
- if (((Button) e.widget).getSelection()) {
- dialogFieldChangedAndApplied();
- }
- }
- }
-
- });
- }
- }
- return _group;
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(_group)) {
- _group.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- * @param index
- */
- public void setSelectedIndex(int index) {
- _selectIndex = index;
- if (isOkToUse(_group)) {
- if (_selectIndex >= 0 && _selectIndex < _items.length) {
- _button[_selectIndex].setSelection(true);
- } else {
- for (int i = 0; i < _items.length; i++) {
- if (_button[i].getSelection()) {
- _button[i].setSelection(false);
- }
- }
- }
- }
- dialogFieldChangedAndApplied();
- }
-
- /**
- * Sets the text without triggering a dialog-changed event.
- * @param index
- */
- public void setSelectedIndexWithoutUpdate(int index) {
- _selectIndex = index;
- if (isOkToUse(_group)) {
- _fireEvent = false;
- if (_selectIndex >= 0 && _selectIndex < _items.length) {
- _button[_selectIndex].setSelection(true);
- } else {
- for (int i = 0; i < _items.length; i++) {
- if (_button[i].getSelection()) {
- _button[i].setSelection(false);
- }
- }
- }
- _fireEvent = true;
- }
- }
-
- /**
- * @return the index selected
- */
- public int getSelectedIndex() {
- return _selectIndex;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField#handleGrabHorizontal()
- */
- public void handleGrabHorizontal() {
- LayoutUtil.setGrabHorizontal(this._group, true);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ResourceButtonDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ResourceButtonDialogField.java
deleted file mode 100644
index 8ab30f002..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/ResourceButtonDialogField.java
+++ /dev/null
@@ -1,231 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.dialogs.CommonResourceDialog;
-import org.eclipse.jst.jsf.common.ui.internal.utils.PathUtil;
-import org.eclipse.jst.jsf.common.ui.internal.utils.WebrootUtil;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * This class provides a common resource choice DialogFiled. You must set a
- * no-null IProject instance to enable it working. You should give it a suffix
- * list if you want to choose files ended with specific file extensions. The
- * selection result will be a relative path based on the _referredFile's value
- * if it is set, or else based on the _project path.
- *
- * The usage: Shell shell = new Shell(); IProject project = getProject();
- * ResourceButtonDialogField localeField = new
- * ResourceButtonDialogField(project);
- * localeField.setResourceDescription("image"); localeField.setSuffixs(new
- * String[]{"bmp","jpg","gif"});
- * localeField.setReferredFile(StructuredModelUtil.getFileFor(_element.getModel()));
- *
- * @author mengbo
- */
-public class ResourceButtonDialogField extends StringButtonDialogField {
- private IProject _project;
-
- private String[] _suffixs;
-
- private String _resourceDescription;
-
- private IFile _referredFile;
-
- private boolean _isWebPath = false;
-
- private IFolder _folder;
-
- private String _separator = ""; //$NON-NLS-1$
-
- /**
- * @param project
- */
- public ResourceButtonDialogField(IProject project) {
- this(null, project);
- setStringButtonAdapter(new IStringButtonAdapter() {
- public void changeControlPressed(DialogField field) {
- String oldValue = getText();
- String newValue = browseButtonPressed();
- if (newValue != null && !newValue.equals(oldValue)) {
- setText(newValue);
- }
- }
- });
- }
-
- /**
- * @param adapter
- * @param project
- */
- public ResourceButtonDialogField(IStringButtonAdapter adapter,
- IProject project) {
- super(adapter);
- this._project = project;
- }
-
- /**
- * @return the string
- */
- protected String browseButtonPressed() {
- Shell shell = getShell();
- CommonResourceDialog dialog = null;
- int style = "".equals(_separator) ? SWT.NONE : SWT.MULTI | SWT.H_SCROLL //$NON-NLS-1$
- | SWT.V_SCROLL;
- if (_folder != null) {
- dialog = new CommonResourceDialog(shell, _folder.getProject(), style);
- } else {
- dialog = new CommonResourceDialog(shell, _project, style);
- }
- dialog.setTitle(JSFUICommonPlugin
- .getResourceString("DialogField.ResourceButton.SelectFile"));//$NON-NLS-1$
- dialog.setSuffixs(_suffixs);
- dialog.setResourceDescription(_resourceDescription);
-
- if (dialog.open() == Window.OK) {
- Object[] result = dialog.getResult();
- StringBuffer buffer = new StringBuffer();
- for (int i = 0; i < result.length; i++) {
- String newValue = null;
- IPath path = ((IFile) result[i]).getLocation();
-
- IPath referredPath = null;
- if (_referredFile != null) {
- referredPath = _referredFile.getLocation();
- } else {
- referredPath = _project.getLocation();
- }
- if (this._isWebPath) {
- IFile selectedFile = ((IFile) result[i]);
- newValue = WebrootUtil.getWebPath(selectedFile
- .getFullPath());
- } else {
- newValue = PathUtil.convertToRelativePath(path.toString(),
- referredPath.toString());
- }
- buffer.append(newValue);
- buffer.append(_separator);
- }
- if (buffer.length() > 0) {
- return buffer.substring(0, buffer.length()
- - _separator.length());
- }
-
- }
- return null;
- }
-
- /**
- * @return Returns the project.
- */
- public IProject getProject() {
- return _project;
- }
-
- /**
- * @param project
- * The project to set.
- */
- public void setProject(IProject project) {
- this._project = project;
- }
-
- /**
- * @return Returns the relative folder.
- */
- public IFolder getFolder() {
- return _folder;
- }
-
- /**
- * @param folder
- * The relative folder to set.
- */
- public void setFolder(IFolder folder) {
- this._folder = folder;
- }
-
- /**
- * @return Returns the referredFile.
- */
- public IFile getReferredFile() {
- return _referredFile;
- }
-
- /**
- * @param referredFile
- * The referredFile to set.
- */
- public void setReferredFile(IFile referredFile) {
- this._referredFile = referredFile;
- }
-
- /**
- * @return Returns the resourceDescription.
- */
- public String getResourceDescription() {
- return _resourceDescription;
- }
-
- /**
- * @param resourceDescription
- * The resourceDescription to set.
- */
- public void setResourceDescription(String resourceDescription) {
- this._resourceDescription = resourceDescription;
- }
-
- /**
- * @return Returns the suffixs.
- */
- public String[] getSuffixs() {
- return _suffixs;
- }
-
- /**
- * @param suffixs
- * The suffixs to set.
- */
- public void setSuffixs(String[] suffixs) {
- this._suffixs = suffixs;
- }
-
- /**
- * set some special path to web path instead of relative path
- *
- * @param isWebPath
- */
- public void setWebPath(boolean isWebPath) {
- this._isWebPath = isWebPath;
- }
-
- /**
- * @return the separator string
- */
- public String getSeparator() {
- return _separator;
- }
-
- /**
- * @param separator
- */
- public void setSeparator(String separator) {
- this._separator = separator;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/Separator.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/Separator.java
deleted file mode 100644
index f54722a77..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/Separator.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * Dialog field describing a separator.
- */
-public class Separator extends DialogFieldBase {
-
- private Label _separator;
-
- private int _style;
-
- /**
- * Default constructor
- */
- public Separator() {
- this(SWT.NONE);
- }
-
- /**
- * @param style
- * of the separator. See <code>Label</code> for possible
- * styles.
- */
- public Separator(int style) {
- _style = style;
- }
-
- // ------- layout helpers
-
- /**
- * Creates the separator and fills it in a MGridLayout.
- * @param toolkit
- * @param parent
- * @param nColumns
- *
- * @param height
- * The heigth of the separator
- * @return the controls or empty array
- */
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns, int height) {
- assertEnoughColumns(nColumns);
-
- Control separator = getSeparator(toolkit, parent);
- separator.setLayoutData(gridDataForSeperator(nColumns, height));
-
- return new Control[] { separator };
- }
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns) {
- return doFillIntoGrid(toolkit, parent, nColumns, 4);
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 1;
- }
-
- /**
- * @param span
- * @param height
- * @return the grid data
- */
- protected static GridData gridDataForSeperator(int span, int height) {
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.verticalAlignment = GridData.BEGINNING;
- gd.heightHint = height;
- gd.horizontalSpan = span;
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created separator.
- * @param toolkit
- *
- * @param parent
- * The parent composite or <code>null</code> if the widget has
- * already been created.
- * @return the separator
- */
- private Control getSeparator(FormToolkit toolkit, Composite parent) {
- if (_separator == null || _separator.isDisposed()) {
- assertCompositeNotNull(parent);
- if (toolkit != null) {
- _separator = toolkit.createSeparator(parent, _style);
- } else {
- _separator = new Label(parent, _style);
- }
- }
- return _separator;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField#handleGrabHorizontal()
- */
- public void handleGrabHorizontal() {
- // do nothing.
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/SourceFolderButtonDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/SourceFolderButtonDialogField.java
deleted file mode 100644
index 420a95093..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/SourceFolderButtonDialogField.java
+++ /dev/null
@@ -1,340 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaModel;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IPackageFragmentRoot;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.ui.JavaElementComparator;
-import org.eclipse.jdt.ui.JavaElementLabelProvider;
-import org.eclipse.jdt.ui.StandardJavaElementContentProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
-
-/**
- * This class provides a source folder selection DialogFiled. There are two
- * conditions: 1. If you set the IProject instance, the source folder selection
- * will only be limited in the specified project 2. If you set null, the source
- * folder selection is allowed in all workspaces
- *
- *
- * @author mengbo
- * @version 1.5
- */
-public class SourceFolderButtonDialogField extends StringButtonDialogField {
- /** Create the logger for this class */
- private static Logger _log = JSFUICommonPlugin
- .getLogger(SourceFolderButtonDialogField.class);
-
- /**
- * package fragment root corresponding to the input type (can be null)
- */
- private IPackageFragmentRoot _fCurrRoot;
-
- private IProject _project;
-
- /**
- * @param project
- */
- public SourceFolderButtonDialogField(IProject project) {
- super(null);
-
- _project = project;
-
- setLabelText(DialogFieldResources.getInstance().getString(
- "SourceFolderButtonDialogField.container.label")); //$NON-NLS-1$
-
- setButtonLabel(DialogFieldResources.getInstance().getString(
- "SourceFolderButtonDialogField.container.button")); //$NON-NLS-1$
-
- setStringButtonAdapter(new IStringButtonAdapter() {
- public void changeControlPressed(DialogField field) {
- containerChangeControlPressed(field);
- }
-
- });
- }
-
- /**
- * @return Returns the project.
- */
- public IProject getProject() {
- return _project;
- }
-
- /**
- * @param project
- * The project to set.
- */
- public void setProject(IProject project) {
- this._project = project;
- }
-
- /**
- * @param field
- */
- protected void containerChangeControlPressed(DialogField field) {
- // take the current jproject as init element of the dialog
- IPackageFragmentRoot root = getPackageFragmentRoot();
- root = chooseSourceContainer(root);
- if (root != null) {
- setPackageFragmentRoot(root, true);
- }
- }
-
- /**
- * Sets the current source folder (model and text field) to the given
- * package fragment root.
- *
- * @param root
- * The new root.
- * @param canBeModified
- * if <code>false</code> the source folder field can not be
- * changed by the user. If <code>true</code> the field is
- * editable
- */
- public void setPackageFragmentRoot(IPackageFragmentRoot root,
- boolean canBeModified) {
- _fCurrRoot = root;
- String str = (root == null) ? "" : root.getPath().makeRelative().toString(); //$NON-NLS-1$
- setText(str);
- setEnabled(canBeModified);
- }
-
- /**
- * Returns the <code>IPackageFragmentRoot</code> that corresponds to the
- * current value of the source folder field.
- *
- * @return the IPackageFragmentRoot or <code>null</code> if the current
- * source folder value is not a valid package fragment root
- *
- */
- public IPackageFragmentRoot getPackageFragmentRoot() {
- return _fCurrRoot;
- }
-
- /**
- * Returns the current text of source folder text field.
- *
- * @return the text of the source folder text field
- */
- public String getPackageFragmentRootText() {
- return getText();
- }
-
- /**
- * choose source container dialog
- *
- * @param initElement
- * @return
- */
- private IPackageFragmentRoot chooseSourceContainer(IJavaElement initElement) {
- Class[] acceptedClasses = new Class[] { IPackageFragmentRoot.class,
- IJavaProject.class, };
-
- TypedElementSelectionValidator validator = new TypedElementSelectionValidator(
- acceptedClasses, false) {
- // TODO: never used
-// public boolean isSelectedValid(Object element) {
-// try {
-// if (element instanceof IJavaProject) {
-// IJavaProject jproject = (IJavaProject) element;
-// IPath path = jproject.getProject().getFullPath();
-// return (jproject.findPackageFragmentRoot(path) != null);
-// } else if (element instanceof IPackageFragmentRoot) {
-// return (((IPackageFragmentRoot) element).getKind() == IPackageFragmentRoot.K_SOURCE);
-// }
-// return true;
-// } catch (JavaModelException e) {
-// _log.error("JavaModelException"); // just log, no ui in
-// // validation
-// }
-// return false;
-// }
- };
-
- acceptedClasses = new Class[] { IJavaModel.class,
- IPackageFragmentRoot.class, IJavaProject.class, };
- ViewerFilter filter = new TypedViewerFilter(acceptedClasses) {
- public boolean select(Viewer viewer, Object parent, Object element) {
- if (element instanceof IPackageFragmentRoot) {
- try {
- return (((IPackageFragmentRoot) element).getKind() == IPackageFragmentRoot.K_SOURCE);
- } catch (JavaModelException e) {
- _log.error(e); // just log, no ui
- // in validation
- return false;
- }
- }
- return super.select(viewer, parent, element);
- }
- };
-
- StandardJavaElementContentProvider provider = new StandardJavaElementContentProvider();
- ILabelProvider labelProvider = new JavaElementLabelProvider(
- JavaElementLabelProvider.SHOW_DEFAULT);
- ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(
- getShell(), labelProvider, provider);
- dialog.setValidator(validator);
- dialog.setComparator(new JavaElementComparator());
- // HibernateWizardPage.ChooseSourceContainerDialog.Title = Folder
- // Selection
- dialog
- .setTitle(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.ChooseSourceContainerDialog.Title")); //$NON-NLS-1$
- // HibernateWizardPage.ChooseSourceContainerDialog.Description = Choose
- // a folder:
- dialog
- .setMessage(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.ChooseSourceContainerDialog.Description")); //$NON-NLS-1$
- dialog.addFilter(filter);
- if (_project != null) {
- dialog.setInput(JavaCore.create(_project));
- } else {
- dialog.setInput(JavaCore.create(ResourcesPlugin.getWorkspace()
- .getRoot()));
- }
- dialog.setInitialSelection(initElement);
-
- if (dialog.open() == Window.OK) {
- Object element = dialog.getFirstResult();
- if (element instanceof IJavaProject) {
- IJavaProject jproject = (IJavaProject) element;
- return jproject.getPackageFragmentRoot(jproject.getProject());
- } else if (element instanceof IPackageFragmentRoot) {
- return (IPackageFragmentRoot) element;
- }
- return null;
- }
- return null;
- }
-
- /**
- * This method updates the model and returns an error status. The underlying
- * model is only valid if the returned status is OK.
- *
- * @return the model's error status
- */
- public IStatus getChangedStatus() {
- StatusInfo status = new StatusInfo();
-
- _fCurrRoot = null;
- String str = getPackageFragmentRootText();
- if (str.length() == 0) {
- // SourceFolderButtonDialogField.error.EnterContainerName = Folder
- // name is empty.
- status.setError(DialogFieldResources.getInstance().getString(
- "SourceFolderButtonDialogField.error.EnterContainerName")); //$NON-NLS-1$
- return status;
- }
- IPath path = new Path(str);
- IResource res = ResourcesPlugin.getWorkspace().getRoot().findMember(
- path);
- if (res != null) {
- int resType = res.getType();
- if (resType == IResource.PROJECT || resType == IResource.FOLDER) {
- IProject proj = res.getProject();
- if (!proj.isOpen()) {
- status
- .setError(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.error.ProjectClosed", proj.getFullPath().toString())); //$NON-NLS-1$
- return status;
- }
- if (_project != null && proj != _project) {
- // HibernateWizardPage.error.NotSameProject = The project
- // should be \''{0}\''.
- status
- .setError(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.error.NotSameProject", _project.getName())); //$NON-NLS-1$
- return status;
- }
- IJavaProject jproject = JavaCore.create(proj);
- _fCurrRoot = jproject.getPackageFragmentRoot(res);
- if (res.exists()) {
- try {
- if (!proj.hasNature(JavaCore.NATURE_ID)) {
- if (resType == IResource.PROJECT) {
- status
- .setError(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.warning.NotAJavaProject", proj.getName())); //$NON-NLS-1$
- } else {
- status
- .setWarning(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.warning.NotInAJavaProject", proj.getName())); //$NON-NLS-1$
- }
- return status;
- }
- } catch (CoreException e) {
- status
- .setWarning(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.warning.NotAJavaProject", proj.getName())); //$NON-NLS-1$
- }
- if (!jproject.isOnClasspath(_fCurrRoot)) {
- status
- .setWarning(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.warning.NotOnClassPath", str)); //$NON-NLS-1$
- }
- if (_fCurrRoot.isArchive()) {
- status
- .setError(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.error.ContainerIsBinary", str)); //$NON-NLS-1$
- return status;
- }
- }
- return status;
- }
- status.setError(DialogFieldResources.getInstance().getString(
- "SourceFolderButtonDialogField.error.NotAFolder", str)); //$NON-NLS-1$
- return status;
- }
- status
- .setError(DialogFieldResources
- .getInstance()
- .getString(
- "SourceFolderButtonDialogField.error.ContainerDoesNotExist", str)); //$NON-NLS-1$
- return status;
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusInfo.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusInfo.java
deleted file mode 100644
index 8a8c9b75b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusInfo.java
+++ /dev/null
@@ -1,198 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-
-/**
- * A settable IStatus. Can be an error, warning, info or ok. For error, info and
- * warning states, a message describes the problem.
- *
- * TODO: couldn't have sub-classed Status?
- *
- * @author mengbo
- * @version 1.5
- */
-/*package*/ class StatusInfo implements IStatus {
-
- /**
- * a default status info for IStatus.OK
- */
- public static final IStatus OK_STATUS = new StatusInfo();
-
- private String fStatusMessage;
-
- private int fSeverity;
-
- /**
- * Creates a status set to OK (no message)
- */
- public StatusInfo() {
- this(OK, null);
- }
-
- /**
- * Creates a status .
- *
- * @param severity
- * The status severity: ERROR, WARNING, INFO and OK.
- * @param message
- * The message of the status. Applies only for ERROR, WARNING and
- * INFO.
- */
- public StatusInfo(int severity, String message) {
- fStatusMessage = message;
- fSeverity = severity;
- }
-
- /**
- * Returns if the status' severity is OK.
- */
- public boolean isOK() {
- return fSeverity == IStatus.OK;
- }
-
- /**
- * Returns if the status' severity is WARNING.
- * @return true if severity is IStatus.WARNING
- */
- public boolean isWarning() {
- return fSeverity == IStatus.WARNING;
- }
-
- /**
- * Returns if the status' severity is INFO.
- * @return true if severity is INFO
- */
- public boolean isInfo() {
- return fSeverity == IStatus.INFO;
- }
-
- /**
- * Returns if the status' severity is ERROR.
- * @return true if severity is error
- */
- public boolean isError() {
- return fSeverity == IStatus.ERROR;
- }
-
- /**
- * @see IStatus#getMessage
- */
- public String getMessage() {
- return fStatusMessage;
- }
-
- /**
- * Sets the status to ERROR.
- *
- * @param errorMessage
- * The error message (can be empty, but not null)
- */
- public void setError(String errorMessage) {
- Assert.isNotNull(errorMessage);
- fStatusMessage = errorMessage;
- fSeverity = IStatus.ERROR;
- }
-
- /**
- * Sets the status to WARNING.
- *
- * @param warningMessage
- * The warning message (can be empty, but not null)
- */
- public void setWarning(String warningMessage) {
- Assert.isNotNull(warningMessage);
- fStatusMessage = warningMessage;
- fSeverity = IStatus.WARNING;
- }
-
- /**
- * Sets the status to INFO.
- *
- * @param infoMessage
- * The info message (can be empty, but not null)
- */
- public void setInfo(String infoMessage) {
- Assert.isNotNull(infoMessage);
- fStatusMessage = infoMessage;
- fSeverity = IStatus.INFO;
- }
-
- /**
- * Sets the status to OK.
- */
- public void setOK() {
- fStatusMessage = null;
- fSeverity = IStatus.OK;
- }
-
- /*
- * @see IStatus#matches(int)
- */
- public boolean matches(int severityMask) {
- return (fSeverity & severityMask) != 0;
- }
-
- /**
- * Returns always <code>false</code>.
- *
- * @see IStatus#isMultiStatus()
- */
- public boolean isMultiStatus() {
- return false;
- }
-
- /*
- * @see IStatus#getSeverity()
- */
- public int getSeverity() {
- return fSeverity;
- }
-
- /*
- * @see IStatus#getPlugin()
- */
- public String getPlugin() {
- return JSFUICommonPlugin.getPluginId();
- }
-
- /**
- * Returns always <code>null</code>.
- *
- * @see IStatus#getException()
- */
- public Throwable getException() {
- return null;
- }
-
- /**
- * Returns always the error severity.
- *
- * @see IStatus#getCode()
- */
- public int getCode() {
- return fSeverity;
- }
-
- /**
- * Returns always <code>null</code>.
- *
- * @see IStatus#getChildren()
- */
- public IStatus[] getChildren() {
- return new IStatus[0];
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusUtil.java
deleted file mode 100644
index 22fe6d866..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StatusUtil.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jface.dialogs.DialogPage;
-
-/**
- * copied from org.eclipse.jdt.internal.dialogs. Enhanced to support null status
- * as parameter
- *
- * A utility class to work with IStatus.
- */
-public class StatusUtil {
-
- /**
- * Compares two instances of <code>IStatus</code>. The more severe is
- * returned: An error is more severe than a warning, and a warning is more
- * severe than ok. If the two stati have the same severity, the second is
- * returned.
- * @param s1
- * @param s2
- *
- * @return Could be null.
- */
- public static IStatus getMoreSevere(IStatus s1, IStatus s2) {
- if (s1 == null && s2 == null) {
- return null;
- } else if (s1 == null) {
- return s2;
- } else if (s2 == null) {
- return s1;
- } else if (s1.getSeverity() > s2.getSeverity()) {
- return s1;
- } else {
- return s2;
- }
- }
-
- /**
- * Finds the most severe status from a array of stati. An error is more
- * severe than a warning, and a warning is more severe than ok.
- * @param status
- *
- * @return could be null
- */
- public static IStatus getMostSevere(IStatus[] status) {
- if (status == null)
- return null;
- IStatus max = null;
- for (int i = 0; i < status.length; i++) {
- IStatus curr = status[i];
- if (curr == null)
- continue;
-
- if (curr.matches(IStatus.ERROR)) {
- return curr;
- }
- if (max == null || curr.getSeverity() > max.getSeverity()) {
- max = curr;
- }
- }
- if (max != null)
- {
- return max;
- }
-
- return null;
- }
-
- /**
- * Applies the status to the status line of a dialog page.
- * @param page
- * @param status
- */
- public static void applyToStatusLine(DialogPage page, IStatus status) {
- if (status == null) {
- page.setMessage(null);
- page.setErrorMessage(null);
- } else {
- String message = status.getMessage();
- switch (status.getSeverity()) {
- case IStatus.OK:
- page.setMessage(message, DialogPage.NONE);
- page.setErrorMessage(null);
- break;
- case IStatus.WARNING:
- page.setMessage(message, DialogPage.WARNING);
- page.setErrorMessage(null);
- break;
- case IStatus.INFO:
- page.setMessage(message, DialogPage.INFORMATION);
- page.setErrorMessage(null);
- break;
- default:
- if (message.length() == 0) {
- message = null;
- }
- page.setMessage(null);
- page.setErrorMessage(message);
- break;
- }
- }
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringButtonDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringButtonDialogField.java
deleted file mode 100644
index eebc9e5c4..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringButtonDialogField.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * Dialog field containing a label, text control and a button control.
- */
-public class StringButtonDialogField extends StringDialogField {
- private Button _browseButton;
-
- private String _browseButtonLabel;
-
- private IStringButtonAdapter _stringButtonAdapter;
-
- private boolean _buttonEnabled;
-
- /**
- * @param adapter
- */
- public StringButtonDialogField(IStringButtonAdapter adapter) {
- _stringButtonAdapter = adapter;
- _browseButtonLabel = JSFUICommonPlugin
- .getResourceString("DialogField.Browse"); //$NON-NLS-1$
- _buttonEnabled = true;
- }
-
- /**
- * Sets the label of the button.
- * @param label
- */
- public void setButtonLabel(String label) {
- _browseButtonLabel = label;
- }
-
- // ------ adapter communication
-
- /**
- * Programmatical pressing of the button
- */
- public void changeControlPressed() {
- _stringButtonAdapter.changeControlPressed(this);
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns) {
- assertEnoughColumns(nColumns);
-
- Control requiredLabel = getRequiredLabelControl(toolkit, parent);
- requiredLabel.setLayoutData(gridDataForLabel(1));
-
- Control label = getLabelControl(toolkit, parent);
- label.setLayoutData(gridDataForLabel(1));
-
- Text text = getTextControl(toolkit, parent);
- text.setLayoutData(gridDataForText(nColumns - 3));
- Button button = getChangeControl(toolkit, parent);
- button.setLayoutData(gridDataForButton(toolkit, button, text, 1));
-
- return new Control[] { requiredLabel, label, text, button };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 4;
- }
-
- /**
- * @param toolkit
- * @param button
- * @param text
- * @param span
- * @return the grid data for the button
- */
- protected static GridData gridDataForButton(FormToolkit toolkit,
- Button button, Text text, int span) {
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = false;
- gd.horizontalSpan = span;
- // gd.heightHint = SWTUtil.getButtonHeightHint(button);
- gd.widthHint = LayoutUtil.getButtonWidthHint(button);
- gd.heightHint = LayoutUtil.getButtonHeightHint(toolkit, text);
- return gd;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created buttom widget.
- * @param toolkit
- *
- * @param parent
- * The parent composite or <code>null</code> if the widget has
- * already been created.
- * @return the button
- */
- public Button getChangeControl(FormToolkit toolkit, Composite parent) {
- if (_browseButton == null || _browseButton.isDisposed()) {
- assertCompositeNotNull(parent);
- if (toolkit != null) {
- _browseButton = toolkit.createButton(parent,
- _browseButtonLabel, SWT.PUSH);
- } else {
- _browseButton = new Button(parent, SWT.PUSH);
- _browseButton.setText(_browseButtonLabel);
- }
- _browseButton.setEnabled(isEnabled() && _buttonEnabled);
- _browseButton.addSelectionListener(new SelectionListener() {
- public void widgetDefaultSelected(SelectionEvent e) {
- changeControlPressed();
- }
-
- public void widgetSelected(SelectionEvent e) {
- changeControlPressed();
- }
- });
-
- }
- return _browseButton;
- }
-
- // ------ enable / disable management
-
- /**
- * Sets the enable state of the button.
- * @param enable
- */
- public void enableButton(boolean enable) {
- if (isOkToUse(_browseButton)) {
- _browseButton.setEnabled(isEnabled() && enable);
- }
- _buttonEnabled = enable;
- }
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(_browseButton)) {
- _browseButton.setEnabled(isEnabled() && _buttonEnabled);
- }
- }
-
- /**
- * @return Returns the _stringButtonAdapter.
- */
- public IStringButtonAdapter getStringButtonAdapter() {
- return _stringButtonAdapter;
- }
-
- /**
- * @param buttonAdapter
- * The _stringButtonAdapter to set.
- */
- public void setStringButtonAdapter(IStringButtonAdapter buttonAdapter) {
- _stringButtonAdapter = buttonAdapter;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringDialogField.java
deleted file mode 100644
index bf334a54c..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StringDialogField.java
+++ /dev/null
@@ -1,291 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * Dialog field containing a label and a text control.
- */
-public class StringDialogField extends DialogFieldBase implements
- ISupportTextValue {
- final static private int TEXT_WIDTH_HINT = 10;
-
- private String _text;
-
- private Text _textControl;
-
- private ModifyListener _modifyListener;
-
- private int _numRows;
-
- /**
- * whether there is change in the UI but not fire applied event yet.
- */
- private boolean _pending = false;
-
- /**
- * default constructor
- * numRows == 1
- */
- public StringDialogField() {
- this(1);
- _text = ""; //$NON-NLS-1$
- }
-
- /**
- * @param numRows
- */
- public StringDialogField(int numRows) {
- super();
- _text = ""; //$NON-NLS-1$
- _numRows = numRows;
- }
-
- // ------- layout helpers
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(FormToolkit kit, Composite parent,
- int nColumns) {
- assertEnoughColumns(nColumns);
-
- Control requiredLabel = getRequiredLabelControl(kit, parent);
- requiredLabel.setLayoutData(gridDataForLabel(1));
-
- Control label = getLabelControl(kit, parent);
- label.setLayoutData(gridDataForLabel(1));
-
- Text text = getTextControl(kit, parent);
- int heightHint = -1;
- if (_numRows > 1) {
- heightHint = getDialogUnits(parent).getHeight() * _numRows;
- }
- text.setLayoutData(gridDataForText(nColumns - 2, heightHint));
-
- return new Control[] { requiredLabel, label, text };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- protected static GridData gridDataForLabel(int span) {
- GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
- gd.horizontalSpan = span;
- return gd;
- }
-
- /**
- * @param span
- * @param heightHint
- * @return the grid data for text
- */
- protected static GridData gridDataForText(int span, int heightHint) {
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = false;
- gd.heightHint = heightHint;
- gd.horizontalSpan = span;
- gd.widthHint = TEXT_WIDTH_HINT;
- return gd;
- }
-
- /**
- * @param span
- * @return the grid data for text
- */
- protected static GridData gridDataForText(int span) {
- GridData gd = gridDataForText(span, -1);
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(_textControl)) {
- _textControl.setFocus();
- _textControl.setSelection(0, _textControl.getText().length());
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created text control.
- * @param toolkit
- *
- * @param parent
- * The parent composite or <code>null</code> when the widget
- * has already been created.
- * @return the text control
- */
- public Text getTextControl(FormToolkit toolkit, Composite parent) {
- if (_textControl == null || _textControl.isDisposed()) {
- assertCompositeNotNull(parent);
- _modifyListener = new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- doModifyText(e);
- }
- };
-
- if (toolkit != null) {
- if (_numRows <= 1) {
- _textControl = toolkit.createText(parent, ""); //$NON-NLS-1$
- } else {
- _textControl = toolkit.createText(parent, "", SWT.V_SCROLL); //$NON-NLS-1$
- }
- } else {
- if (_numRows <= 1) {
-
- _textControl = new Text(parent, SWT.SINGLE | SWT.BORDER);
- } else {
- _textControl = new Text(parent, SWT.V_SCROLL | SWT.WRAP
- | SWT.BORDER);
- }
- }
-
- _textControl.setText(_text);
- _textControl.setFont(parent.getFont());
- _textControl.addModifyListener(_modifyListener);
- _textControl.addFocusListener(new FocusAdapter() {
-
- public void focusLost(FocusEvent e) {
- doFocusLost(e);
- }
-
- });
- _textControl.addKeyListener(new KeyAdapter() {
- public void keyReleased(KeyEvent e) {
- doKeyReleased(e);
- }
- });
-
- _textControl.setEnabled(isEnabled());
-
- _textControl.setToolTipText(getToolTip());
- }
- return _textControl;
- }
-
- /**
- * @param e
- */
- protected void doKeyReleased(KeyEvent e) {
- if (e.character == '\r') {
- // commit value
- if (_pending) {
- _pending = false;
- dialogFieldApplied();
- }
- }
- }
-
- /**
- * @param e
- */
- protected void doFocusLost(FocusEvent e) {
- if (_pending) {
- _pending = false;
- dialogFieldApplied();
- }
- }
-
- /**
- * some get changed in the Text. As in <code>setText</code> and
- * <code>setTextWithoutUpdate</code> we removed the listener, so this must
- * be user typing in the text field.
- *
- * @param e
- */
- private void doModifyText(ModifyEvent e) {
- if (isOkToUse(_textControl)) {
- _text = _textControl.getText();
- }
- _pending = true;
- dialogFieldChanged();
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(_textControl)) {
- _textControl.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
- /**
- * Gets the text. Can not be <code>null</code>
- */
- public String getText() {
- return _text;
- }
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- */
- public void setText(String text) {
- setTextWithoutUpdate(text);
- dialogFieldChangedAndApplied();
- }
-
- /**
- * Sets the text without triggering a dialog-changed event.
- */
- public void setTextWithoutUpdate(String text) {
- // reset _pending state.
- _pending = false;
-
- if (text == null)
- text = ""; //$NON-NLS-1$
- _text = text;
- if (isOkToUse(_textControl)) {
- _textControl.removeModifyListener(_modifyListener);
- _textControl.setText(text);
- _textControl.addModifyListener(_modifyListener);
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField#handleGrabHorizontal()
- */
- public void handleGrabHorizontal() {
- LayoutUtil.setGrabHorizontal(_textControl, true);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StyleComboDialogField.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StyleComboDialogField.java
deleted file mode 100644
index 93c93320b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/StyleComboDialogField.java
+++ /dev/null
@@ -1,398 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.Map;
-import java.util.TreeMap;
-import java.util.Map.Entry;
-
-import org.eclipse.jst.jsf.common.ui.internal.utils.StyleCombo;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.PaintEvent;
-import org.eclipse.swt.events.PaintListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.forms.FormColors;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * A dialog field for style combos
- *
- */
-public class StyleComboDialogField extends DialogFieldBase implements
- ISupportTextValue {
- final static private int WIDTH_HINT = 10;
-
- private String _text;
-
- private int _selectionIndex;
-
- private String[] _items;
-
- private StyleCombo _comboControl;
-
- private ModifyListener _modifyListener;
-
- private int _flags;
-
- private boolean _pending = false;
-
- private Map _entryMap;
-
- private String _defaultValue;
-
-
- /**
- * @param defaultValue
- */
- public void setDefaultValue(String defaultValue) {
- this._defaultValue = defaultValue;
- if (_comboControl != null && ! _comboControl.isDisposed())
- _comboControl.setDefaultValue(_defaultValue);
- }
-
- /**
- * @param flags
- */
- public StyleComboDialogField(int flags) {
- super();
- _text = ""; //$NON-NLS-1$
- _items = new String[0];
- _flags = flags;
- _selectionIndex = -1;
- }
-
- // ------- layout helpers
-
-
- /*
- * @see DialogField#doFillIntoGrid
- */
- public Control[] doFillIntoGrid(FormToolkit toolkit, Composite parent,
- int nColumns) {
- assertEnoughColumns(nColumns);
-
- Control requiredLabel = getRequiredLabelControl(toolkit, parent);
- requiredLabel.setLayoutData(gridDataForLabel(1));
-
- Control label = getLabelControl(toolkit, parent);
- label.setLayoutData(gridDataForLabel(1));
-
- StyleCombo combo = getComboControl(toolkit, parent);
- combo.setLayoutData(gridDataForCombo(nColumns - 2));
-
- return new Control[] { requiredLabel, label, combo };
- }
-
- /*
- * @see DialogField#getNumberOfControls
- */
- public int getNumberOfControls() {
- return 3;
- }
-
- /**
- * @param span
- * @return the grid data for the combo
- */
- protected static GridData gridDataForCombo(int span) {
- GridData gd = new GridData();
- gd.horizontalAlignment = GridData.FILL;
- gd.grabExcessHorizontalSpace = false;
- gd.horizontalSpan = span;
- gd.widthHint = WIDTH_HINT;
- return gd;
- }
-
- // ------- focus methods
-
- /*
- * @see DialogField#setFocus
- */
- public boolean setFocus() {
- if (isOkToUse(_comboControl)) {
- _comboControl.setFocus();
- }
- return true;
- }
-
- // ------- ui creation
-
- /**
- * Creates or returns the created combo control.
- * @param toolkit
- *
- * @param parent
- * The parent composite or <code>null</code> when the widget
- * has already been created.
- * @return the combo control
- */
- public StyleCombo getComboControl(FormToolkit toolkit,
- final Composite parent) {
- if (_comboControl == null || _comboControl.isDisposed()) {
- assertCompositeNotNull(parent);
- _modifyListener = new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- doModifyText(e);
- }
- };
- SelectionListener selectionListener = new SelectionListener() {
- public void widgetSelected(SelectionEvent e) {
- doSelectionChanged(e);
- }
-
- public void widgetDefaultSelected(SelectionEvent e) {
- handleDefaultSelection(e);
- }
- };
-
- if (toolkit != null) {
- _comboControl = new StyleCombo(parent, _flags);
- final FormColors colors = new FormColors(parent.getDisplay());
- parent.addPaintListener(new PaintListener() {
-
- public void paintControl(PaintEvent event) {
- Composite composite = (Composite) event.widget;
- Control[] children = composite.getChildren();
- for (int i = 0; i < children.length; i++) {
- Control c = children[i];
- if (!(c instanceof StyleCombo) || !c.isVisible()) {
- continue;
- }
- Rectangle b = c.getBounds();
- GC gc = event.gc;
- gc.setForeground(colors.getBorderColor());
- gc.drawRectangle(b.x - 1, b.y - 1, b.width + 1,
- b.height + 1);
- }
- }
- });
-
- // when the parent is disposed, the colors should no
- // no longer be needed.
- parent.addDisposeListener(new DisposeListener()
- {
- public void widgetDisposed(DisposeEvent e) {
- colors.dispose();
- }
- }
- );
- toolkit.adapt(_comboControl);
- } else {
- _comboControl = new StyleCombo(parent, _flags | SWT.BORDER);
- _comboControl.setBackground(Display.getCurrent()
- .getSystemColor(SWT.COLOR_LIST_BACKGROUND));
- }
-
- // moved up due to 1GEUNW2
- _comboControl.setItems(_items);
- _comboControl.setDefaultValue(_defaultValue);
- if (_selectionIndex != -1) {
- _comboControl.select(_selectionIndex);
- } else {
- _comboControl.setText(_text);
- }
- _comboControl.setFont(parent.getFont());
- _comboControl.addModifyListener(_modifyListener);
- _comboControl.addSelectionListener(selectionListener);
- _comboControl.addFocusListener(new FocusAdapter() {
- public void focusLost(FocusEvent e) {
- doFocusLost(e);
- }
- });
- _comboControl.setEnabled(isEnabled());
- _comboControl.setToolTipText(getToolTip());
- }
- return _comboControl;
- }
-
- /**
- * @param e
- */
- protected void handleDefaultSelection(SelectionEvent e) {
- // commit value
- if (_pending) {
- _pending = false;
- dialogFieldApplied();
- }
- }
-
- /**
- * @param e
- */
- protected void doFocusLost(FocusEvent e) {
- if (_pending) {
- _pending = false;
- dialogFieldApplied();
- }
- }
-
- private void doModifyText(ModifyEvent e) {
- if (isOkToUse(_comboControl)) {
- _text = getEntryKey(_comboControl.getText());
- _selectionIndex = _comboControl.getSelectionIndex();
- }
- _pending = true;
- dialogFieldChanged();
- }
-
- private void doSelectionChanged(SelectionEvent e) {
- if (isOkToUse(_comboControl)) {
- _items = _comboControl.getItems();
- _text = getEntryKey(_comboControl.getText());
- _selectionIndex = _comboControl.getSelectionIndex();
- }
- _pending = false;
- dialogFieldChangedAndApplied();
- }
-
- // ------ enable / disable management
-
- /*
- * @see DialogField#updateEnableState
- */
- protected void updateEnableState() {
- super.updateEnableState();
- if (isOkToUse(_comboControl)) {
- _comboControl.setEnabled(isEnabled());
- }
- }
-
- // ------ text access
-
- /**
- * Sets the combo items. Triggers a dialog-changed event.
- * @param items
- */
- public void setItems(String[] items) {
- _items = items;
- if (isOkToUse(_comboControl)) {
- _comboControl.setItems(items);
- }
- _pending = false;
- // dialogFieldChangedAndApplied();
- }
-
- /**
- * @param map
- */
- public void setEntryMap(Map map) {
- this._entryMap = map;
- if (_entryMap == null) {
- _entryMap = new TreeMap();
- }
- Entry[] entries = (Entry[]) _entryMap.entrySet().toArray(new Entry[0]);
- String[] items = new String[entries.length];
- for (int i = 0; i < entries.length; i++) {
- items[i] = entries[i].getValue().toString();
- }
- setItems(items);
- }
-
- /**
- * Gets the text.
- */
- public String getText() {
- return _text;
- }
-
- /**
- * Sets the text. Triggers a dialog-changed event.
- */
- public void setText(String text) {
- setTextWithoutUpdate(text);
- _pending = false;
- dialogFieldChangedAndApplied();
- }
-
- /**
- * Selects an item.
- * @param index
- */
- public void selectItem(int index) {
- if (isOkToUse(_comboControl)) {
- _comboControl.select(index);
- } else {
- if (index >= 0 && index < _items.length) {
- _text = getEntryKey(_items[index]);
- _selectionIndex = index;
- }
- }
- dialogFieldChangedAndApplied();
- }
-
- /**
- * @return the selection index
- */
- public int getSelectionIndex() {
- return _selectionIndex;
- }
-
- /**
- * Sets the text without triggering a dialog-changed event.
- */
- public void setTextWithoutUpdate(String text) {
- _pending = false;
- if (text == null) {
- text = "";//$NON-NLS-1$
- }
- _text = text;
- if (isOkToUse(_comboControl)) {
- _comboControl.removeModifyListener(_modifyListener);
- _comboControl.setText(getEntryValue(text));
- _comboControl.addModifyListener(_modifyListener);
- }
- }
-
- private String getEntryValue(String key) {
- if (_entryMap == null || !_entryMap.containsKey(key)) {
- return key;
- }
- return _entryMap.get(key).toString();
- }
-
- private String getEntryKey(String value) {
- if (_entryMap == null || !_entryMap.containsValue(value)) {
- return value;
- }
-
- Entry[] entries = (Entry[]) _entryMap.entrySet().toArray(new Entry[0]);
- for (int i = 0; i < entries.length; i++) {
- if (entries[i].getValue() == value
- || (value != null && value.equals(entries[i].getValue()))) {
- return entries[i].getKey().toString();
- }
- }
- return value;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.jsf.common.ui.internal.dialogfield.DialogField#handleGrabHorizontal()
- */
- public void handleGrabHorizontal() {
- LayoutUtil.setGrabHorizontal(_comboControl, true);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedElementSelectionValidator.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedElementSelectionValidator.java
deleted file mode 100644
index 8d0e09101..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedElementSelectionValidator.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-import java.util.Collection;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.ui.dialogs.ISelectionStatusValidator;
-
-/**
- * Implementation of a <code>ISelectionValidator</code> to validate the type
- * of an element. Empty selections are not accepted.
- *
- * @author mengbo
- * @version 1.5
- */
-/*package*/ class TypedElementSelectionValidator implements
- ISelectionStatusValidator {
-
- private IStatus _fgErrorStatus = new StatusInfo(IStatus.ERROR, ""); //$NON-NLS-1$
-
- private IStatus _fgOKStatus = new StatusInfo();
-
- private Class[] _fAcceptedTypes;
-
- private boolean _fAllowMultipleSelection;
-
- private Collection _fRejectedElements;
-
- /**
- * @param acceptedTypes
- * The types accepted by the validator
- * @param allowMultipleSelection
- * If set to <code>true</code>, the validator allows multiple
- * selection.
- */
- public TypedElementSelectionValidator(Class[] acceptedTypes,
- boolean allowMultipleSelection) {
- this(acceptedTypes, allowMultipleSelection, null);
- }
-
- /**
- * @param acceptedTypes
- * The types accepted by the validator
- * @param allowMultipleSelection
- * If set to <code>true</code>, the validator allows multiple
- * selection.
- * @param rejectedElements
- * A list of elements that are not accepted
- */
- public TypedElementSelectionValidator(Class[] acceptedTypes,
- boolean allowMultipleSelection, Collection rejectedElements) {
- Assert.isNotNull(acceptedTypes);
- _fAcceptedTypes = acceptedTypes;
- _fAllowMultipleSelection = allowMultipleSelection;
- _fRejectedElements = rejectedElements;
- }
-
- /*
- * @see org.eclipse.ui.dialogs.ISelectionValidator#isValid(java.lang.Object)
- */
- public IStatus validate(Object[] elements) {
- if (isValid(elements)) {
- return _fgOKStatus;
- }
- return _fgErrorStatus;
- }
-
- private boolean isOfAcceptedType(Object o) {
- for (int i = 0; i < _fAcceptedTypes.length; i++) {
- if (_fAcceptedTypes[i].isInstance(o)) {
- return true;
- }
- }
- return false;
- }
-
- private boolean isRejectedElement(Object elem) {
- return (_fRejectedElements != null)
- && _fRejectedElements.contains(elem);
- }
-
- private boolean isValid(Object[] selection) {
- if (selection.length == 0) {
- return false;
- }
-
- if (!_fAllowMultipleSelection && selection.length != 1) {
- return false;
- }
-
- for (int i = 0; i < selection.length; i++) {
- Object o = selection[i];
- if (!isOfAcceptedType(o) || isRejectedElement(o)) {
- return false;
- }
- }
- return true;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedViewerFilter.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedViewerFilter.java
deleted file mode 100644
index 52ecb6a2a..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogfield/TypedViewerFilter.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogfield;
-
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-
-/**
- * Viewer filter used in selection dialogs.
- *
- * @author mengbo
- * @version 1.5
- */
-/*package*/ class TypedViewerFilter extends ViewerFilter {
-
- private Class[] _fAcceptedTypes;
-
- private Object[] _fRejectedElements;
-
- /**
- * Creates a filter that only allows elements of gives types.
- *
- * @param acceptedTypes
- * The types of accepted elements
- */
- public TypedViewerFilter(Class[] acceptedTypes) {
- this(acceptedTypes, null);
- }
-
- /**
- * Creates a filter that only allows elements of gives types, but not from a
- * list of rejected elements.
- *
- * @param acceptedTypes
- * Accepted elements must be of this types
- * @param rejectedElements
- * Element equals to the rejected elements are filtered out
- */
- public TypedViewerFilter(Class[] acceptedTypes, Object[] rejectedElements) {
- Assert.isNotNull(acceptedTypes);
- _fAcceptedTypes = acceptedTypes;
- _fRejectedElements = rejectedElements;
- }
-
- /**
- * @see ViewerFilter#select(org.eclipse.jface.viewers.Viewer,
- * java.lang.Object, java.lang.Object)
- */
- public boolean select(Viewer viewer, Object parentElement, Object element) {
- if (_fRejectedElements != null) {
- for (int i = 0; i < _fRejectedElements.length; i++) {
- if (element.equals(_fRejectedElements[i])) {
- return false;
- }
- }
- }
- for (int i = 0; i < _fAcceptedTypes.length; i++) {
- if (_fAcceptedTypes[i].isInstance(element)) {
- return true;
- }
- }
- return false;
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonResourceDialog.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonResourceDialog.java
deleted file mode 100644
index debc2f996..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonResourceDialog.java
+++ /dev/null
@@ -1,368 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogs;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.jst.jsf.common.ui.internal.utils.WebrootUtil;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-import org.eclipse.ui.views.navigator.ResourceComparator;
-
-/**
- * This dialog shows IFile type resources within a IProject domain for
- * selection. The client can prvide the suffixs of files to filter when
- * candidates are shown on the tree.
- *
- * The usage: Shell shell = new Shell(); IProject project = getProject();
- * CommonResourceDialog dlg = new CommonResourceDialog(shell, project);
- * dlg.setResourceDescription("image"); dlg.setSuffixs(new
- * String[]{"bmp","jpg","gif"}); if(dlg.open() == Window.OK) { IFile
- * selectedFile = (IFile)dlg.getResult()[0]; }
- *
- * Note: In code above, what you get is an absolute resource path. You can use
- * <code>org.eclipse.wst.sse.core.util.PathHelper.convertToRelative(String input, String base)</code>
- * to convert a absolute resource path to a relative path based on one path.
- *
- * @author mengbo
- */
-public class CommonResourceDialog extends TreeViewerSelectionDialog {
- private static Logger _log = JSFUICommonPlugin
- .getLogger(CommonResourceDialog.class);
-
- // private static final String STATUS_MESSAGE_0 = CommonPlugin
- // .getResourceString("Dialog.CommonResourceDialog.StatusMessage0");
- // //$NON-NLS-1$
-
- private IProject _project = null;
-
- private String _suffixs[] = null;
-
- private CommonResourceFilter _filter = null;
-
- // The resource type resourceDescription, such as "image", "jsp", "java
- // class" etc.
- private String _resourceDescription = null;
-
- private IFolder _folder;
-
- // The content provider
- class ProjectFileDialogContentProvider implements ITreeContentProvider {
- /**
- * The visual part that is using this content provider is about to be
- * disposed. Deallocate all allocated SWT resources.
- */
- public void dispose() {
- // nothing to dispose
- }
-
- /**
- * @see ITreeContentProvider#getChildren
- */
- public Object[] getChildren(Object element) {
- if (element instanceof Object[]) {
- return (Object[]) element;
- } else if (element instanceof IContainer) {
- IContainer container = (IContainer) element;
- if (container.isAccessible()) {
- try {
- return container.members();
- } catch (CoreException e) {
- _log.error(
- "Error.ProjectFileDialogContentProvider.0", e); //$NON-NLS-1$
- }
- }
-
- }
- return new Object[0];
- }
-
- /**
- * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(Object)
- */
- public Object[] getElements(Object element) {
- return getChildren(element);
- }
-
- /**
- * @see ITreeContentProvider#getParent
- */
- public Object getParent(Object element) {
- if (element instanceof IResource) {
- return ((IResource) element).getParent();
- }
- return null;
- }
-
- /**
- * @see ITreeContentProvider#hasChildren
- */
- public boolean hasChildren(Object element) {
- return getChildren(element).length > 0;
- }
-
- /**
- * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(Viewer, Object, Object)
- */
- public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
- // no viewer change support required
- }
-
- }
-
- // The default resource filter
- class CommonResourceFilter extends ViewerFilter {
- private String _filterSuffixs[] = null;
-
- /**
- * @return Returns the _suffixs.
- */
- public String[] getSuffixs() {
- return _filterSuffixs;
- }
-
- /**
- * @param _suffixs
- * The _suffixs to set.
- */
- public void setSuffixs(String[] _suffixs) {
- this._filterSuffixs = _suffixs;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer,
- * java.lang.Object, java.lang.Object)
- */
- public boolean select(Viewer viewer, Object parentElement,
- Object element) {
- if (element instanceof IFile) {
- IFile file = (IFile) element;
- if (!WebrootUtil.isUnderWebContentFolder(file)) {
- return false;
- }
- if (isSuffixBlank()) {
- return true;
- }
- if (file.getFileExtension() != null) {
- if (Arrays.asList(_filterSuffixs).contains(
- file.getFileExtension().toLowerCase())) {
- return true;
- }
- }
- } else if (element instanceof IContainer) {
- if (!((IContainer) element).isAccessible()) {
- return false;
- }
- if (element instanceof IProject) {
- return true;
- } else if (element instanceof IFolder) {
- IContainer container = (IContainer) element;
- try {
- IResource[] members = container.members();
- for (int i = 0; i < members.length; i++) {
- if (select(viewer, members[i].getParent(),
- members[i])) {
- return true;
- }
- }
- } catch (CoreException e) {
- _log.error(
- "Error.ProjectFileDialogContentProvider.0", e); //$NON-NLS-1$
- return false;
- }
- }
- }
- return false;
- }
-
- }
-
- /**
- * This is a dialog for common resource selection, the resouce supported
- * include IFolder, IProject, IFile, user can provide
- *
- * @param parentShell
- * @param project
- * @param style
- */
- public CommonResourceDialog(Shell parentShell, IProject project, int style) {
- super(parentShell, "", style); //$NON-NLS-1$
- if (project == null) {
- throw new IllegalArgumentException(
- "Argument(project) cannot be null"); //$NON-NLS-1$
- }
- _project = project;
- setContentProvider(new ProjectFileDialogContentProvider());
- setLabelProvider(WorkbenchLabelProvider
- .getDecoratingWorkbenchLabelProvider());
- _filter = new CommonResourceFilter();
- setFilter(_filter);
- setViewerComparator(new ResourceComparator(ResourceComparator.TYPE));
- _project = project;
- setStatusMessage(getStatusMessage());
- }
-
- /**
- * Same as CommonResourceDialog(parentShell, project, SWT.NONE)
- *
- * @param parentShell
- * @param project
- */
- public CommonResourceDialog(Shell parentShell, IProject project) {
- this(parentShell, project, SWT.NONE);
- }
-
- private String getStatusMessage() {
- if (_resourceDescription == null) {
- return ""; //$NON-NLS-1$
- }
- return _resourceDescription;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.pagedesigner.ui.common.SelectionTreeViewerDialog#findInputElement()
- */
- protected Object findInputElement() {
- if (_folder != null) {
- return new Object[] { _folder, };
- }
- return new Object[] { _project, };
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.pagedesigner.ui.common.SelectionTreeViewerDialog#isValidSelection(java.lang.Object)
- */
- protected boolean isValidSelection(Object selection) {
- if (selection instanceof Object[]) {
- for (int i = 0, n = ((Object[]) selection).length; i < n; i++) {
- if (isValidElement(((Object[]) selection)[i]) == true) {
- return true;
- }
- }
- return false;
- }
- return isValidElement(selection);
- }
-
- private boolean isValidElement(Object selection) {
- if ((selection instanceof IFile)) {
- // Null means no filter is set
- if (isSuffixBlank()) {
- return true;
- }
- // The extension is supported?
- else if (_suffixs != null
- && Arrays.asList(_suffixs).contains(
- ((IFile) selection).getFileExtension()
- .toLowerCase())) {
- return true;
- }
- }
- // None of above conditions, invalid.
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.dialogs.SelectionDialog#getResult()
- */
- public Object[] getResult() {
- Object[] objects = super.getResult();
- if (objects == null || objects.length == 0) {
- return null;
- }
- List list = new ArrayList();
- for (int i = 0; i < objects.length; i++) {
- if (objects[i] instanceof IFile) {
- list.add(objects[i]);
- }
- }
- return list.toArray();
- }
-
- /**
- * @param suffixs
- * The suffixs to set.
- */
- public void setSuffixs(String[] suffixs) {
- this._suffixs = convertTolowercase(suffixs);
- _filter.setSuffixs(_suffixs);
- setStatusMessage(getStatusMessage());
- }
-
- private String[] convertTolowercase(String[] suffixs) {
- if (suffixs != null) {
- String[] newSuffixs = new String[suffixs.length];
- for (int i = 0; i < suffixs.length; i++) {
- newSuffixs[i] = suffixs[i].toLowerCase();
- }
- return newSuffixs;
- }
- return null;
- }
-
- /**
- * @return Returns the sourceDescription.
- */
- public String getResourceDescription() {
- return _resourceDescription;
- }
-
- /**
- * @param sourceDescription
- * The sourceDescription to set.
- */
- public void setResourceDescription(String sourceDescription) {
- this._resourceDescription = sourceDescription;
- setStatusMessage(getStatusMessage());
- }
-
- private boolean isSuffixBlank() {
- boolean isSuffixBlank = false;
- if (_suffixs == null) {
- isSuffixBlank = true;
- } else {
- int count = 0;
- for (int i = 0, size = _suffixs.length; i < size; i++) {
- if (_suffixs[i] != null && !"".equals(_suffixs[i])) { //$NON-NLS-1$
- count++;
- break;
- }
- }
- if (count == 0) {
- isSuffixBlank = true;
- }
- }
- return isSuffixBlank;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonWizardDialog.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonWizardDialog.java
deleted file mode 100644
index 3fd719c77..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/CommonWizardDialog.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogs;
-
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.wizard.IWizard;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Wizard Dialog with a Finish set to OK if no previous
- * or next buttons are needed
- *
- */
-public class CommonWizardDialog extends WizardDialog {
-
- /**
- * @param parentShell
- * @param newWizard
- */
- public CommonWizardDialog(Shell parentShell, IWizard newWizard) {
- super(parentShell, newWizard);
- }
-
- protected void createButtonsForButtonBar(Composite parent) {
- super.createButtonsForButtonBar(parent);
-
- IWizard wizard = getWizard();
- if (!wizard.needsPreviousAndNextButtons()) {
- getButton(IDialogConstants.FINISH_ID).setText(
- IDialogConstants.OK_LABEL);
- }
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/ResourceOnClasspathDialog.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/ResourceOnClasspathDialog.java
deleted file mode 100644
index 934957d96..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/ResourceOnClasspathDialog.java
+++ /dev/null
@@ -1,254 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogs;
-
-import java.io.File;
-import java.util.Arrays;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IJarEntryResource;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.ui.JavaElementLabelProvider;
-import org.eclipse.jdt.ui.StandardJavaElementContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jst.jsf.common.ui.IFileFolderConstants;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.utils.PathUtil;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * This dialog will let client to select resources that located on a
- * IJavaProject classpath, the client can provide a list of files suffixs to
- * filter.
- *
- * @author mengbo
- */
-// TODO: Since many jar files might do nothing to do with client's selection, we
-// may need to provides more filter choice
-// to clients to exclude unnecessary jar files, such as that are located in JDK
-// dir.
-public class ResourceOnClasspathDialog extends TreeViewerSelectionDialog {
- // ResourcesOnClasspathDialog.statusMessage = Please select a property file
- private static final String STATUS_MESSAGE = JSFUICommonPlugin
- .getResourceString("Dialog.ResourceOnClasspathDialog.StatusMessage"); //$NON-NLS-1$
-
- private IJavaProject _javaProject;
-
- // the suffixs of files that can be selected
- private String _suffixs[];
-
- // IJMTConstants.DEFAULT_SUFFIX;
-
- private ResourceOnClasspathFilter _filter;
-
- // Client doesn't need to know it.
- class ResourceOnClasspathFilter extends ViewerFilter {
- StandardJavaElementContentProvider _javaContentProvider;
-
- /**
- * @param contentProvider
- */
- public ResourceOnClasspathFilter(
- StandardJavaElementContentProvider contentProvider) {
- _javaContentProvider = contentProvider;
- }
-
- /**
- * Set the suffixs of files need to be selected.
- *
- * @param suffixs
- */
- public void setSuffixs(String suffixs[]) {
- _suffixs = suffixs;
- }
-
- /**
- * @param contentProvider
- * The _javaContentProvider to set.
- */
- public void setJavaContentProvider(
- StandardJavaElementContentProvider contentProvider) {
- _javaContentProvider = contentProvider;
- }
-
- /**
- * @param project
- * The _javaProject to set.
- */
- public void setJavaProject(IJavaProject project) {
- _javaProject = project;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer,
- * java.lang.Object, java.lang.Object)
- */
- public boolean select(Viewer viewer, Object parentElement,
- Object element) {
- // TODO: This logic can be improved by add caching mechanism
- if (element instanceof IJavaProject) {
- String currentProjectName = ((IJavaProject) element)
- .getProject().getFullPath().toString().trim();
- String projectName = _javaProject.getProject().getFullPath()
- .toString().trim();
- if (projectName.equalsIgnoreCase(currentProjectName)) {
- return true;
- }
- return false;
- } else if (element instanceof IResource) {
- if (((_javaProject != null) && !_javaProject
- .isOnClasspath((IResource) element))) {
- return false;
- }
- if (element instanceof IFile) {
- if (Arrays.asList(_suffixs).contains(
- ((IFile) element).getFileExtension())) {
- return true;
- }
- }
- return false;
- }
-
- if (element instanceof IJarEntryResource) {
- String ext = ((IJarEntryResource) element).getFullPath()
- .getFileExtension();
- if (ext != null && Arrays.asList(_suffixs).contains(ext)) {
- return true;
- }
- return false;
- }
- if (!(element instanceof IJavaElement)) {
- return false;
- }
- if (((_javaProject != null) && !_javaProject
- .isOnClasspath((IJavaElement) element))) {
- return false;
- }
- IJavaElement javaElement = (IJavaElement) element;
- Object[] children = null;
- switch (javaElement.getElementType()) {
- case IJavaElement.PACKAGE_FRAGMENT_ROOT:
- children = _javaContentProvider.getChildren(javaElement);
- break;
- case IJavaElement.IMPORT_CONTAINER:
- return true;
- case IJavaElement.PACKAGE_FRAGMENT:
- children = _javaContentProvider.getChildren(javaElement);
- break;
- case IJavaElement.CLASS_FILE:
- if (Arrays.asList(_suffixs).contains(
- IFileFolderConstants.EXT_CLASS)) {
- return true;
- }
- return false;
- case IJavaElement.COMPILATION_UNIT:
- String ext = javaElement.getPath().getFileExtension();
- if (ext != null && Arrays.asList(_suffixs).contains(ext)) {
- return true;
- }
- return false;
- default:
- return false;
- }
-
- for (int i = 0; i < children.length; i++) {
- if (select(viewer, javaElement, children[i])) {
- return true;
- }
- }
- // Either the resouce or its children are not for displaying.
- return false;
- }
- }
-
- /**
- * Set the suffixs of files need to be selected.
- *
- * @param suffixs
- */
- public void setSuffixs(String suffixs[]) {
- _suffixs = suffixs;
- _filter.setSuffixs(suffixs);
- }
-
- /**
- * @param parentShell
- * @param project
- */
- public ResourceOnClasspathDialog(Shell parentShell, IJavaProject project) {
- super(parentShell, STATUS_MESSAGE);
- // set provider and filter
- StandardJavaElementContentProvider contentProvider = new StandardJavaElementContentProvider();
- setContentProvider(contentProvider);
- setLabelProvider(new JavaElementLabelProvider());
- _filter = new ResourceOnClasspathFilter(contentProvider);
- setFilter(_filter);
- // store the project
- _javaProject = project;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.dialogs.SelectionDialog#getResult()
- */
- public Object[] getResult() {
- Object[] objects = super.getResult();
- if (objects == null || objects.length == 0) {
- return null;
- }
- IPath path = PathUtil.getPathOnClasspath(_javaProject, objects[0]);
- String result = null;
- if (path.segmentCount() == 0) {
- return new Object[] { "" }; //$NON-NLS-1$
- }
- path = path.removeFileExtension();
- result = path.toOSString();
- result = result.replace(File.separatorChar, '.');
- return new Object[] { result };
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jst.pagedesigner.ui.common.SelectionTreeViewerDialog#isValidSelection()
- */
- protected boolean isValidSelection(Object selection) {
- String extension = PathUtil.getPathOnClasspath(_javaProject, selection)
- .getFileExtension();
- return (extension != null && Arrays.asList(_suffixs).contains(extension));
- }
-
- protected Object findInputElement() {
- Object input = ResourcesPlugin.getWorkspace();
- if (input instanceof IWorkspace) {
- return JavaCore.create(((IWorkspace) input).getRoot());
- } else if (input instanceof IContainer) {
- IJavaElement element = JavaCore.create((IContainer) input);
- if (element != null && element.exists()) {
- return element;
- }
- return input;
- }
- return JavaCore.create(ResourcesPlugin.getWorkspace().getRoot());
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/TreeViewerSelectionDialog.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/TreeViewerSelectionDialog.java
deleted file mode 100644
index 3214dbd7e..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/dialogs/TreeViewerSelectionDialog.java
+++ /dev/null
@@ -1,393 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.dialogs;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.ViewerComparator;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.SelectionDialog;
-import org.eclipse.ui.part.DrillDownComposite;
-
-/**
- * This is a base dialog that uses TreeViewer to show selections, subclass needs
- * to provide IContentProvider, ILabelProvider and ViewerFilter for the
- * TreeViewer. Subclass needs to implement isValidSelection(), which valids the
- * selection, and findInputElement() which provides the root element of the
- * tree. Besides, subclass might need to implement getResult() to return a
- * customized result.
- *
- * @author mengbo
- *
- */
-public abstract class TreeViewerSelectionDialog extends SelectionDialog {
- private static final String DEFAULT_TITLE = JSFUICommonPlugin
- .getResourceString("Dialog.TreeViewerSelectionDialog.DefaultTitle"); //$NON-NLS-1$
-
- /** Used to tag the image type */
- public static final int STYLE_NONE = 0;
-
- private static final int STYLE_INFORMATION = 1;
-
- private static final int STYLE_ERROR = 2;
-
- private static final int STYLE_WARNING = 3;
-
- /** Sizi of the TreeViewer composite */
- private static final int SIZING_SELECTION_PANE_HEIGHT = 300;
-
- private static final int SIZING_SELECTION_PANE_WIDTH = 320;
-
- private String _title = DEFAULT_TITLE;
-
- // the seleciton on the treeviewer.
- private static Object[] _selection;
-
- // providers
- private ITreeContentProvider _contentProvider;
-
- private ILabelProvider _labelProvider;
-
- private ViewerFilter _filter;
-
- /** The validation image */
- private Label _statusImage;
-
- /** The validation message */
- private Label _statusLabel;
-
- private String _statusMessage;
-
- /** The selection tree */
- private TreeViewer _treeViewer;
-
- private int _style;
-
- private ViewerSorter _viewerSorter = null;
- private ViewerComparator _viewerComparator = null;
- /**
- * @param parentShell
- * @param statusMessage
- * @param style
- */
- public TreeViewerSelectionDialog(Shell parentShell, String statusMessage,
- int style) {
- super(parentShell);
- _statusMessage = statusMessage;
- _style = style;
- setShellStyle(SWT.CLOSE | SWT.TITLE | SWT.BORDER
- | SWT.APPLICATION_MODAL | SWT.RESIZE);
- }
-
- /**
- * Convenience for TreeViewerSelectionDialog(parentShell, statusMessage, SWT.NONE)
- *
- * @param parentShell
- * @param statusMessage
- */
- public TreeViewerSelectionDialog(Shell parentShell, String statusMessage) {
- this(parentShell, statusMessage, SWT.NONE);
- }
-
- public void setTitle(String title) {
- super.setTitle(title);
- _title = title;
- }
-
- /**
- * Returns a new drill down viewer for this dialog.
- * @param parent
- */
- protected void createTreeViewer(Composite parent) {
- // Create drill down
- DrillDownComposite drillDown = new DrillDownComposite(parent,
- SWT.BORDER);
- GridData spec = new GridData(GridData.FILL_BOTH);
- spec.widthHint = SIZING_SELECTION_PANE_WIDTH;
- spec.heightHint = SIZING_SELECTION_PANE_HEIGHT;
- drillDown.setLayoutData(spec);
- _treeViewer = new TreeViewer(drillDown, _style);
- drillDown.setChildTree(_treeViewer);
- }
-
- private void setTreeViewerProviders() {
- _treeViewer.setContentProvider(_contentProvider);
- _treeViewer.setLabelProvider(_labelProvider);
- if (_viewerSorter == null) {
- _viewerSorter = new ViewerSorter();
- }
- _treeViewer.setSorter(_viewerSorter);
-
- // override if not null.. setSorter is discouraged.
- if (_viewerComparator != null)
- {
- _treeViewer.setComparator(_viewerComparator);
- }
- _treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
- public void selectionChanged(SelectionChangedEvent event) {
- _selection = getSelectedElements((IStructuredSelection) event
- .getSelection());
- updateStatus();
- }
- });
- _treeViewer.addDoubleClickListener(new IDoubleClickListener() {
- public void doubleClick(DoubleClickEvent event) {
- ISelection selection = event.getSelection();
- if (selection instanceof IStructuredSelection) {
- Object item = ((IStructuredSelection) selection)
- .getFirstElement();
- if (item instanceof IFile) {
- okPressed();
- } else if (_treeViewer.getExpandedState(item)) {
- _treeViewer.collapseToLevel(item, 1);
- } else {
- _treeViewer.expandToLevel(item, 1);
- }
- }
- }
- });
- _treeViewer.setInput(findInputElement());
-
- if (_filter != null) {
- _treeViewer.addFilter(_filter);
- }
- }
-
- /**
- * Creates the contents of the composite.
- * @param parent
- */
- protected void createTreeViewerComposite(Composite parent) {
- Composite treeViewerComposite = new Composite(parent, SWT.NONE);
- GridLayout layout = new GridLayout();
- layout.marginWidth = 0;
- treeViewerComposite.setLayout(layout);
-
- GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
- gridData.horizontalSpan = 2;
- treeViewerComposite.setLayoutData(gridData);
- Label label = new Label(treeViewerComposite, SWT.WRAP);
- label.setText(_title);
- label.setFont(treeViewerComposite.getFont());
- createTreeViewer(treeViewerComposite);
- Dialog.applyDialogFont(treeViewerComposite);
- }
-
- /**
- * Sets the selected existing container.
- * @param selection
- */
- public void setSelectedElement(Object[] selection) {
- // Expand to and select the specified container
- if (selection == null) {
- return;
- }
-
- for (int i = 0; i < selection.length; i++) {
- if (_selection[i] != null) {
- _treeViewer.expandToLevel(_selection[i], 1);
-
- }
- }
- _treeViewer.setSelection(new StructuredSelection(selection), true);
- }
-
- /*
- * (non-Javadoc) Method declared on Dialog.
- */
- protected Control createDialogArea(Composite parent) {
- Composite area = (Composite) super.createDialogArea(parent);
- GridLayout gridLayout = new GridLayout();
- gridLayout.numColumns = 2;
- area.setLayout(gridLayout);
-
- // Container treeviewer composite
- createTreeViewerComposite(area);
-
- _statusImage = createLabel(area);
- _statusImage.setImage(getMessageImage(STYLE_ERROR));
- _statusLabel = createLabel(area);
- // Link to model
- setTreeViewerProviders();
-
- return dialogArea;
- }
-
- private Label createLabel(Composite parent) {
- Label label = new Label(parent, SWT.LEFT);
- GridData data = new GridData();
- data.horizontalSpan = 1;
- data.horizontalAlignment = GridData.FILL;
- label.setLayoutData(data);
- label.setText(_statusMessage == null ? "" : _statusMessage); //$NON-NLS-1$
- return label;
- }
-
- private Object[] getSelectedElements(IStructuredSelection selection) {
- return selection.toArray();
- }
-
- /**
- * @param provider
- * The _contentProvider to set.
- */
- public void setContentProvider(ITreeContentProvider provider) {
- _contentProvider = provider;
- }
-
- /**
- * @param provider
- * The _labelProvider to set.
- */
- public void setLabelProvider(ILabelProvider provider) {
- _labelProvider = provider;
- }
-
- /**
- * @param filter
- * The _filter to set.
- */
- public void setFilter(ViewerFilter filter) {
- this._filter = filter;
- }
-
- /**
- * @param sorter
- * The _viewerSorter to set.
- */
- public void setViewerSorter(ViewerSorter sorter) {
- _viewerSorter = sorter;
- }
-
- /**
- * Set the viewer comparator. If not null, it's set after after the
- * viewer sorter and thus overrides it.
- *
- * @param viewerComparator
- */
- public void setViewerComparator(ViewerComparator viewerComparator)
- {
- _viewerComparator = viewerComparator;
- }
-
- /**
- * @param message
- */
- public void setStatusMessage(String message) {
- _statusMessage = message;
- }
-
- /**
- * Update the status message
- */
- private void updateStatus() {
- Object selection = _selection;
- if (_selection != null && _selection.length == 1) {
- selection = _selection[0];
- }
- if (isValidSelection(selection)) {
- _statusImage.setVisible(false);
- _statusLabel.setText(""); //$NON-NLS-1$
- getOkButton().setEnabled(true);
- } else {
- _statusImage.setVisible(true);
- _statusImage.setImage(getMessageImage(STYLE_ERROR));
- _statusImage.redraw();
- _statusLabel.setText(_statusMessage);
- getOkButton().setEnabled(false);
- }
-
- }
-
- /**
- * Get the different message according the message type.
- * @param imageType
- *
- * @return Image - the message image
- */
- protected Image getMessageImage(int imageType) {
- switch (imageType) {
- case STYLE_ERROR:
- return JFaceResources.getImage(Dialog.DLG_IMG_MESSAGE_ERROR);
- case STYLE_WARNING:
- return JFaceResources.getImage(Dialog.DLG_IMG_MESSAGE_WARNING);
- case STYLE_INFORMATION:
- return JFaceResources.getImage(Dialog.DLG_IMG_MESSAGE_INFO);
- default:
- return null;
- }
- }
-
- /**
- * The <code>ContainerSelectionDialog</code> implementation of this
- * <code>Dialog</code> method builds a list of the selected resource
- * containers for later retrieval by the client and closes this dialog.
- */
- protected void okPressed() {
- List chosenContainerPathList = new ArrayList();
- if (_selection != null) {
- chosenContainerPathList.addAll(Arrays.asList(_selection));
- }
- setResult(chosenContainerPathList);
- super.okPressed();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.window.Window#createContents(org.eclipse.swt.widgets.Composite)
- */
- protected Control createContents(Composite parent) {
- Control control = super.createContents(parent);
- if (_selection != null) {
- this.setSelectedElement(_selection);
- }
- return control;
- }
-
- /**
- * @param selection
- * @return true if selection is valid
- */
- protected abstract boolean isValidSelection(Object selection);
-
- /**
- * Used to set the input element on the tree viewer
- * @return the input element
- */
- protected abstract Object findInputElement();
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractDetailsForm.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractDetailsForm.java
deleted file mode 100644
index 887d57f9b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractDetailsForm.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.form;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * The parent of all detail forms.
- *
- * @author cbateman
- *
- */
-public abstract class AbstractDetailsForm
-{
- private FormToolkit _toolkit;
-
- /**
- *
- */
- protected AbstractDetailsForm()
- {
- super();
- }
-
- /**
- * Called to refresh model if stale
- */
- public void refresh()
- {
- // do nothing by default
- }
-
- /**
- * Called before createContents.
- *
- * @param toolkit
- */
- public final void initialize(final FormToolkit toolkit)
- {
- _toolkit = toolkit;
- doInitialize();
- }
-
- /**
- * Override to customize initialization. getToolkit() is safe to call
- * from this method. You should not make other state assumptions.
- */
- protected void doInitialize()
- {
- // do nothing by default;
- }
-
- /**
- * Callled by MasterDetailBlock during it's dispose
- */
- public abstract void dispose();
-
- /**
- * @param onSave
- */
- public abstract void commit(boolean onSave);
-
- /**
- * Called on this details form before it is shown, when it becomes active
- * due to a matching selection change in the master form. Implementer
- * should use newSelection as the new instance of their model and
- * reinitialize UI as appropriate.
- * @param newSelection
- */
- protected abstract void doUpdateSelection(final Object newSelection);
-
- /**
- * @return the contents control. Must not be called before createContents.
- */
- public abstract Control getControl();
-
- /**
- * Fired to indicate that this detail form is now selected based on the
- * master form selected.
- *
- * @param selection
- */
- public void selectionChanged(final ISelection selection)
- {
- // by default, get the first element of the selection if there is
- // one and call doUpdateSelection on it. Sub-classes may change
- // this behaviour
- if (selection instanceof IStructuredSelection)
- {
- final Object selectionObj = ((IStructuredSelection) selection)
- .getFirstElement();
- doUpdateSelection(selectionObj);
- }
- }
-
- /**
- * Create the contents of the detail form using 'parent'. Should not be
- * called before initialize.
- *
- * @param parent
- */
- public abstract void createContents(Composite parent);
-
- /**
- * @return the form toolkit in use. Should not be called before
- * initialize.
- */
- protected final FormToolkit getToolkit()
- {
- return _toolkit;
- }
-
- /**
- * @return true if the form is dirty
- */
- public boolean isDirty()
- {
- // never dirty by default
- return false;
- }
-
- /**
- * @return true if form is stale
- */
- public boolean isStale()
- {
- // always stale by default
- return true;
- }
-
- /**
- * Called to set focus on the detail form's control
- */
- public abstract void setFocus();
-} \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterDetailBlock.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterDetailBlock.java
deleted file mode 100644
index 7141dcb88..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterDetailBlock.java
+++ /dev/null
@@ -1,206 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.form;
-
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.custom.StackLayout;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.forms.widgets.Form;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * An alternative to MasterDetailBlock that doesn't use the ScrolledForm
- * that causes problems as described here:
- *
- * http://dev.eclipse.org/newslists/news.eclipse.platform/msg73145.html
-
- * @author cbateman
- *
- */
-public abstract class AbstractMasterDetailBlock implements
- ISelectionChangedListener
-{
- private AbstractMasterForm _masterForm;
- private Composite _detailsPanel;
- private AbstractDetailsForm _curPage;
- private FormToolkit _toolkit;
- private StackLayout _detailLayout;
- private List<AbstractDetailsForm> _detailForms;
- private BlankDetailsForm _blankDetails;
-
- /**
- *
- */
- protected AbstractMasterDetailBlock()
- {
- super();
- }
-
- /**
- * Disposes the master detail form
- */
- public final void dispose()
- {
- _masterForm.dispose();
-
- for (final AbstractDetailsForm detailsForm : _detailForms)
- {
- detailsForm.dispose();
- }
-
- doDispose();
- }
-
- /**
- * Override to get custom dispose logic. Do not use this to dispose of
- * master or details forms. This is done automatically for you before
- * doDispose is called.
- */
- protected void doDispose()
- {
- // do nothing by default
- }
-
- /**
- * @param toolkit
- * @param form
- */
- public final void createContent(final FormToolkit toolkit, final Form form)
- {
- _toolkit = toolkit;
-
- final GridLayout layout = new GridLayout();
- layout.marginWidth = 5;
- layout.marginHeight = 5;
- form.getBody().setLayout(layout);
- final SashForm sashForm = new SashForm(form.getBody(), SWT.NULL);
- // sashForm.setData("form", managedForm); //$NON-NLS-1$
- _toolkit.adapt(sashForm, false, false);
- sashForm.setMenu(form.getBody().getMenu());
- sashForm.setLayoutData(new GridData(GridData.FILL_BOTH));
- initializeMasterPart(_toolkit, sashForm);
- createDetailsPart(sashForm);
-
- _masterForm.createHead(form);
- createToolBarActions(form);
- form.updateToolBar();
- }
-
- /**
- * @param toolkit
- * @return the master form.
- */
- protected abstract AbstractMasterForm createMasterPart(
- final FormToolkit toolkit);
-
- private void initializeMasterPart(final FormToolkit toolkit,
- final Composite parent)
- {
- _masterForm = createMasterPart(toolkit);
- _masterForm.initialize(this);
- _masterForm.createClientArea(parent);
- }
-
- private void createToolBarActions(final Form form)
- {
- _masterForm.contributeActions(form.getToolBarManager());
- }
-
- private void createDetailsPart(final Composite parent)
- {
- _detailsPanel = new Composite(parent, SWT.NONE);
- _detailLayout = new StackLayout();
- _detailsPanel.setLayout(_detailLayout);
-
- _detailForms = createDetailPages();
-
- for (final AbstractDetailsForm detailForm : _detailForms)
- {
- detailForm.initialize(_toolkit);
- detailForm.createContents(_detailsPanel);
- }
-
- // create default blank page
- _blankDetails = new BlankDetailsForm();
- _blankDetails.initialize(_toolkit);
- _blankDetails.createContents(_detailsPanel);
-
- _curPage = _blankDetails;
- _detailLayout.topControl = _curPage.getControl();
- _detailsPanel.layout();
- }
-
- public final void selectionChanged(final SelectionChangedEvent event)
- {
- final Object selectedObj = ((IStructuredSelection) event.getSelection())
- .getFirstElement();
- final AbstractDetailsForm page = selectPage(selectedObj);
- if (page != null)
- {
- final AbstractDetailsForm fpage = page;
- BusyIndicator.showWhile(_detailsPanel.getDisplay(), new Runnable()
- {
- public void run()
- {
- final AbstractDetailsForm oldPage = _curPage;
- _curPage = fpage;
- // commit the current page
- if (oldPage != null && oldPage.isDirty())
- {
- oldPage.commit(false);
- }
- // refresh the new page
- if (fpage.isStale())
- {
- fpage.refresh();
- }
- _curPage.selectionChanged(event.getSelection());
- // _pageBook.showPage(_curPage.getTextSection().getControl());
- _detailLayout.topControl = _curPage.getControl();
- _detailsPanel.layout();
- }
- });
- }
- }
-
- /**
- * @return a list of detail forms
- */
- protected abstract List<AbstractDetailsForm> createDetailPages();
-
- /**
- * @param forModel
- * @return the details form for 'forModel'. If implementer returns null,
- * then a blank page will be provided
- */
- protected abstract AbstractDetailsForm doSelectPage(final Object forModel);
-
- private AbstractDetailsForm selectPage(final Object forModel)
- {
- final AbstractDetailsForm clientForm = doSelectPage(forModel);
-
- if (clientForm != null)
- {
- return clientForm;
- }
- return _blankDetails;
- }
-
-} \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterForm.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterForm.java
deleted file mode 100644
index 46ec8646e..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractMasterForm.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.form;
-
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.ToolBarManager;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.layout.RowLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.ToolBar;
-import org.eclipse.ui.forms.widgets.Form;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- *
- * @author cbateman
- *
- */
-public abstract class AbstractMasterForm
-{
-
- private final FormToolkit _toolkit;
- private ISelectionChangedListener _listener;
- private ToolBarManager _toolBarManager;
-
- /**
- * @param toolkit
- */
- protected AbstractMasterForm(FormToolkit toolkit)
- {
- super();
- _toolkit = toolkit;
- }
-
- /**
- * @param listener
- * the selection listener that is signalled to indicate the
- * selection in the master has changed and the detail should be
- * updated.
- */
- public final void initialize(final ISelectionChangedListener listener)
- {
- _listener = listener;
- doInitialize();
- }
-
- /**
- * It is safe to call getListener() and get getToolkit() in this method. All
- * other methods should be considered unavailable.
- */
- protected void doInitialize()
- {
- // do nothing by default; override to do customize init
- }
-
- /**
- * @param parent
- * @return the client area for the master form, using parent is the parent
- * control.
- */
- public abstract Control createClientArea(final Composite parent);
-
- /**
- * @param form
- */
- public final void createHead(final Form form)
- {
- final Composite head = form.getHead();
- final Composite container = getToolkit().createComposite(head);
- container.setLayout(new RowLayout());
-
- // sub-class contribution
- contributeToHeadArea(getToolkit(), container);
-
- _toolBarManager = new ToolBarManager(SWT.FLAT);
- ToolBar toolbar = _toolBarManager.createControl(container);
- // _toolkit.adapt(toolbar, false, false);
-
- toolbar.setBackground(form.getHead().getBackground());
- toolbar.setForeground(form.getHead().getForeground());
- //toolbar.setCursor(FormsResources.getHandCursor());
- container.addDisposeListener(new DisposeListener()
- {
- public void widgetDisposed(DisposeEvent e)
- {
- if (_toolBarManager != null)
- {
- _toolBarManager.dispose();
- _toolBarManager = null;
- }
- }
- });
-
- form.setHeadClient(container);
-
- }
-
- /**
- * Override to add client area before the toolbar.
- *
- * @param toolkit
- * @param container
- */
- protected void contributeToHeadArea(FormToolkit toolkit, Composite container)
- {
- // do nothing by default
- }
-
- /**
- * @param formManager
- */
- public final void contributeActions(final IToolBarManager formManager)
- {
- contributeActions(formManager, _toolBarManager);
- }
-
- /**
- * @param formManager
- * adds to the toolkit's toolbar
- * @param localManager
- * adds to AbstractMasterForm's toolbar.
- */
- protected void contributeActions(final IToolBarManager formManager,
- final IToolBarManager localManager)
- {
- // do nothing by default. Override to add actions.
- }
-
- /**
- * Should be called at any time after initialize and createContents when the
- * owner is finished with the master-detail form block.
- */
- public void dispose()
- {
- // do nothing by default;
- }
-
- /**
- * @return the tool kit in use.
- */
- protected final FormToolkit getToolkit()
- {
- return _toolkit;
- }
-
- /**
- * @return the selection listener
- */
- protected final ISelectionChangedListener getListener()
- {
- return _listener;
- }
-} \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractXMLSectionsDetailsForm.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractXMLSectionsDetailsForm.java
deleted file mode 100644
index 902ec7e94..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/AbstractXMLSectionsDetailsForm.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.form;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.RowData;
-import org.eclipse.swt.layout.RowLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormText;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Section;
-
-/**
- * A detail form that uses XML text sections.
- *
- * @author cbateman
- *
- */
-public abstract class AbstractXMLSectionsDetailsForm extends
- AbstractDetailsForm
-{
- private Map<Object, XMLTextSection> _textSections;
- private Composite _detailFormComposite;
-
- /**
- * @param parent
- */
- @Override
- public final void createContents(final Composite parent)
- {
- _detailFormComposite = getToolkit().createComposite(parent, SWT.NONE);
- final RowLayout rowLayout = new RowLayout(SWT.VERTICAL);
- rowLayout.fill = true;
- _detailFormComposite.setLayout(rowLayout);
- // take a copy of what's returned so the sub-class can't control
- // the map reference
- _textSections = Collections
- .unmodifiableMap(new HashMap<Object, XMLTextSection>(
- createXMLTextSections(_detailFormComposite)));
-
- final Set<XMLTextSection> expandedSections = getInitiallyExpanded(_textSections);
- for (final Map.Entry<? extends Object, XMLTextSection> entry : _textSections
- .entrySet())
- {
- final XMLTextSection section = entry.getValue();
- if (expandedSections.contains(section))
- {
- section._section.setExpanded(true);
- }
- }
- }
-
- /**
- * @param parent
- * the parent that should be used for all XMLTextSections
- * @return a map keyed by an object type understood by the sub-class
- * containing as values the XMLTextSections
- */
- protected abstract Map<? extends Object, XMLTextSection> createXMLTextSections(
- final Composite parent);
-
- /**
- * @param sections
- * @return the subset of XMLTextSections in the provided map that are to be
- * expanded. NOTE: all elements in the returned set must be in
- * sections.getValues.
- */
- protected abstract Set<XMLTextSection> getInitiallyExpanded(
- final Map<Object, XMLTextSection> sections);
-
- /**
- * @return the control for this form
- */
- @Override
- public Control getControl()
- {
- return _detailFormComposite;
- }
-
- /**
- * @param selection
- */
- public final void selectionChanged(final ISelection selection)
- {
- if (selection instanceof IStructuredSelection)
- {
- final Object selectionObj = ((IStructuredSelection) selection)
- .getFirstElement();
- doUpdateSelection(selectionObj);
- }
- }
-
- @Override
- public void commit(final boolean onSave)
- {
- // do nothing
- }
-
- @Override
- public void dispose()
- {
- // do nothing
- }
-
- @Override
- public void setFocus()
- {
- // do nothing; sub-classes should override to pick an XMLTextSection
- // where they want focus.
- }
-
- /**
- * An XML text section
- *
- */
- protected final static class XMLTextSection
- {
- private final Section _section;
- private FormText _formText;
-
- /**
- * @param toolkit
- * @param parent
- * @param title
- */
- public XMLTextSection(final FormToolkit toolkit,
- final Composite parent, final String title)
- {
- _section = toolkit.createSection(parent,
- ExpandableComposite.TREE_NODE
- | ExpandableComposite.CLIENT_INDENT);
- _section.setLayoutData(new RowData());
- _section.setText(title);
-
- _formText = toolkit.createFormText(_section, true);
- _formText.setText("", false, false); //$NON-NLS-1$
-
- _section.setClient(_formText);
- }
-
- /**
- * @param text
- * @param parseTags
- * @param expandURLs
- */
- public void setText(final String text, final boolean parseTags,
- final boolean expandURLs)
- {
- _formText.setText(text, parseTags, expandURLs);
- }
-
- /**
- * @return the parent control.
- */
- public Control getControl()
- {
- return _section;
- }
-
- /**
- * Force a visual relayout and update.
- */
- public void refresh()
- {
- _section.getParent().layout(true, true);
- }
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/BlankDetailsForm.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/BlankDetailsForm.java
deleted file mode 100644
index 7678b0394..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/form/BlankDetailsForm.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.form;
-
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * A blank details form.
- *
- * @author cbateman
- *
- */
-public final class BlankDetailsForm extends AbstractDetailsForm
-{
- private Composite _emptyPanel;
-
- @Override
- public void createContents(Composite parent)
- {
- _emptyPanel = getToolkit().createComposite(parent);
- }
-
- @Override
- public Control getControl()
- {
- return _emptyPanel;
- }
-
- @Override
- protected void doUpdateSelection(Object newSelection)
- {
- // do nothing
- }
-
- @Override
- public void commit(boolean onSave)
- {
- // nothing to commit
- }
-
- @Override
- public void dispose()
- {
- // nothing to dispose
- }
-
- @Override
- public void setFocus()
- {
- // don't bother changing focus
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Alerts.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Alerts.java
deleted file mode 100644
index 54c3a27a7..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Alerts.java
+++ /dev/null
@@ -1,837 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import java.lang.reflect.InvocationTargetException;
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.jface.dialogs.InputDialog;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * This class will provide UI alert dialogs to the user. These will
- * automatically get the message from the plugin's resource bundle.
- *
- * NOTE: there are some generic exception methods included in this file. They
- * need resource bundles also, and they make the alerts bettern when the
- * exception is caught at a later stage.
- *
- * @author mengbo
- */
-public class Alerts {
- // this is used for junit testing to turn off all alerts and return the
- // default on yes/no dialogs.
- private static boolean _noAlerts = false;
-
- private ResourceBundle _rb;
-
- private String _pluginId;
-
- /**
- * Construct a alerts with the provided attributes. This constructor should
- * be used from the root plugin that has access to the resource bundle for
- * this plugin.
- *
- * @param plugin
- * @param rb
- * the resource bundle to use.
- */
- public Alerts(AbstractUIPlugin plugin, ResourceBundle rb) {
- _rb = rb;
- if (_rb == null) {
- throw new NullPointerException(
- "No resource bundle was provided to the Alerts."); //$NON-NLS-1$
- }
- if (plugin == null) {
- throw new NullPointerException(
- "No plugin was provided to the Alerts."); //$NON-NLS-1$
- }
- _pluginId = plugin.getBundle().getSymbolicName();
- }
-
- /**
- * Returns the text entered by a user in a simple request dialog.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param initialValue -
- * initial value in the text area.
- * @param validator -
- * something that checks for validity on the name.
- * @return null is returned if the user hits cancel, otherwise it is the
- * text they entered.
- */
- public String getInput(String titleKey, String msgKey, String initialValue,
- IInputValidator validator) {
- if (_noAlerts) {
- return null;
- }
-
- InputDialog inDialog = new InputDialog(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), getResourceString(msgKey),
- initialValue, validator);
- inDialog.open();
- return inDialog.getValue();
- }
-
- /**
- * Displays an Error message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- */
- public void error(String titleKey, String msgKey) {
- if (_noAlerts) {
- return;
- }
-
- MessageDialog.openError(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), getResourceString(msgKey));
- }
-
- /**
- * Displays an Error message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- */
- public void error(String titleKey, String msgKey, Object arg0) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- MessageDialog.openError(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Displays an Error message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param arg1 -
- * arg to place into the resource bundle message.
- */
- public void error(String titleKey, String msgKey, Object arg0, Object arg1) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[2];
- args[0] = arg0;
- args[1] = arg1;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- MessageDialog.openError(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Displays an Error message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param arg1 -
- * arg to place into the resource bundle message.
- * @param arg2 -
- * arg to place into the resource bundle message.
- */
- public void error(String titleKey, String msgKey, Object arg0, Object arg1,
- Object arg2) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[3];
- args[0] = arg0;
- args[1] = arg1;
- args[2] = arg2;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- MessageDialog.openError(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Displays an Error message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param arg1 -
- * arg to place into the resource bundle message.
- * @param arg2 -
- * arg to place into the resource bundle message.
- * @param arg3 -
- * arg to place into the resource bundle message.
- */
- public void error(String titleKey, String msgKey, Object arg0, Object arg1,
- Object arg2, Object arg3) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[4];
- args[0] = arg0;
- args[1] = arg1;
- args[2] = arg2;
- args[3] = arg3;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- MessageDialog.openError(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Displays an Error message to the user.
- *
- * @param shell -
- * the shell for the error dialog
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- */
- public void error(Shell shell, String titleKey, String msgKey) {
- if (_noAlerts) {
- return;
- }
-
- MessageDialog.openError(shell, getResourceString(titleKey),
- getResourceString(msgKey));
- }
-
- /**
- * Displays an Error message to the user with a status using the Display
- * background thread.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- */
- public void detailError(String titleKey, String msgKey) {
- if (_noAlerts) {
- return;
- }
-
- final IStatus fstatus = new Status(IStatus.ERROR, _pluginId,
- IStatus.OK, getResourceString(msgKey), null);
- final String ftitle = getResourceString(titleKey);
-
- Display display = getStandardDisplay();
- display.asyncExec(new Runnable() {
- public void run() {
- ErrorDialog.openError(null, ftitle, null, fstatus);
- }
- });
- }
-
- /**
- * Displays an Error message to the user with a status using the Display
- * background thread. This will give the details button.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param tt -
- * exception to place in the details.
- */
- public void detailError(String titleKey, String msgKey, Throwable tt) {
- if (_noAlerts) {
- return;
- }
-
- internalDetailError(getResourceString(titleKey),
- getResourceString(msgKey), tt);
- }
-
- /**
- * Displays an Error message to the user with a status using the Display
- * background thread. This will give the details button.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param tt -
- * exception to place in the details.
- */
- public void detailError(String titleKey, String msgKey, Object arg0,
- Throwable tt) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- internalDetailError(getResourceString(titleKey),
- formatter.format(args), tt);
- }
-
- /**
- * Displays an Error message to the user with a status using the Display
- * background thread. This will give the details button.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param arg1 -
- * arg to place into the resource bundle message.
- * @param tt -
- * exception to place in the details.
- */
- public void detailError(String titleKey, String msgKey, Object arg0,
- Object arg1, Throwable tt) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[1];
- args[0] = arg0;
- args[1] = arg1;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- internalDetailError(getResourceString(titleKey),
- formatter.format(args), tt);
- }
-
- /**
- * Displays an Error message to the user with a status using the Display
- * background thread. This will give the details button.
- *
- * @param title -
- * the title message
- * @param message -
- * message displayed to the user
- */
- private void internalDetailError(String title, String msg, Throwable tt) {
- if (_noAlerts) {
- return;
- }
-
- if (tt instanceof InvocationTargetException) {
- tt = ((InvocationTargetException) tt).getTargetException();
- }
-
- IStatus status = null;
- if (tt instanceof CoreException) {
- status = ((CoreException) tt).getStatus();
-
- if ((status instanceof MultiStatus) == false) {
- // convert to a multistatus to show the exception details.
-
- Throwable th = status.getException();
- if (th == null) {
- th = tt;
- }
-
- status = buildStackTraceStatus(IStatus.ERROR, status
- .getPlugin(), status.getMessage(), th);
- }
- } else {
- status = buildStackTraceStatus(IStatus.ERROR, _pluginId, tt
- .getMessage(), tt);
- }
-
- final String ftitle = title;
- final IStatus fstatus = status;
- final String fmsg = msg;
- Display display = getStandardDisplay();
- display.asyncExec(new Runnable() {
- public void run() {
- ErrorDialog.openError(null, ftitle, fmsg, fstatus);
- }
- });
- }
-
- /**
- * Builds a multistatus, so that the stack trace shows up in the alery
- * message for detailed alerts.
- *
- * @param code
- * @param pluginId
- * @param message
- * @param tt
- * @return the result of the operation
- */
- public IStatus buildStackTraceStatus(int code, String pluginId,
- String message, Throwable tt) {
- if (tt == null) {
- return new Status(code, pluginId, IStatus.OK, message, tt);
- }
-
- MultiStatus mstat = new MultiStatus(pluginId, code, message, tt);
-
- StackTraceElement[] trace = tt.getStackTrace();
-
- mstat.add(new Status(code, pluginId, IStatus.OK, tt.toString(), null));
- for (int ii = 0; ii < trace.length; ii++) {
- mstat.add(new Status(code, pluginId, IStatus.OK, trace[ii]
- .toString(), null));
- }
- return mstat;
- }
-
- /**
- * Displays an Error message to the user with a status using the Display
- * background thread. This will give the details button.
- *
- * @param status -
- * the status
- * @param title -
- * the title of the message
- */
- public void detailError(String title, IStatus status) {
- if (_noAlerts) {
- return;
- }
-
- final IStatus fstatus = status;
- final String ftitle = title;
- Display display = getStandardDisplay();
- display.asyncExec(new Runnable() {
- public void run() {
- ErrorDialog.openError(null, ftitle, null, fstatus);
- }
- });
- }
-
- /**
- * Displays an information message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- */
- public void info(String titleKey, String msgKey) {
- if (_noAlerts) {
- return;
- }
-
- MessageDialog.openInformation(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), getResourceString(msgKey));
- }
-
- /**
- * Displays an information message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- */
- public void info(String titleKey, String msgKey, Object arg0) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- MessageDialog.openInformation(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Displays an confirmation message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @return true if the user presses the OK button, false otherwise
- */
- public boolean confirm(String titleKey, String msgKey) {
- if (_noAlerts) {
- return true;
- }
-
- return MessageDialog.openConfirm(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), getResourceString(msgKey));
- }
-
- /**
- * Displays an confirmation message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @return true if the user presses the OK button, false otherwise
- */
- public boolean confirm(String titleKey, String msgKey, Object arg0) {
- if (_noAlerts) {
- return true;
- }
-
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- return MessageDialog.openConfirm(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Displays an question message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @return true if the user presses the "yes" button, false otherwise
- */
- public boolean question(String titleKey, String msgKey) {
- if (_noAlerts) {
- return true;
- }
-
- return MessageDialog.openQuestion(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), getResourceString(msgKey));
- }
-
- /**
- * Displays an question message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @return true if the user presses the "yes" button, false otherwise
- */
- public boolean question(String titleKey, String msgKey, Object arg0) {
- if (_noAlerts) {
- return true;
- }
-
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- return MessageDialog.openQuestion(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Displays an warning message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- */
- public void warning(String titleKey, String msgKey) {
- if (_noAlerts) {
- return;
- }
-
- MessageDialog.openWarning(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), getResourceString(msgKey));
- }
-
- /**
- * Displays an warning message to the user.
- *
- * @param titleKey -
- * the title resource bundle key for the message
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- */
- public void warning(String titleKey, String msgKey, Object arg0) {
- if (_noAlerts) {
- return;
- }
-
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- MessageDialog.openWarning(PlatformUI.getWorkbench()
- .getActiveWorkbenchWindow().getShell(),
- getResourceString(titleKey), formatter.format(args));
- }
-
- /**
- * Returns the standard display to be used. The method first checks, if the
- * thread calling this method has an associated dispaly. If so, this display
- * is returned. Otherwise the method returns the default display.
- *
- * TODO: should probably use the workbench display
- */
- private Display getStandardDisplay() {
- Display display = Display.getCurrent();
- if (display == null) {
- display = Display.getDefault();
- }
- return display;
- }
-
- /**
- * Returns the string from the resource bundle, or 'key' if not found.
- */
- private String getResourceString(String key) {
- if (key == null) {
- return null;
- }
-
- try {
- return _rb.getString(key);
- } catch (MissingResourceException ee) {
- return key;
- }
- }
-
- /**
- * Throw a core exception built around the message with the correct plugin
- * id and resource bundle string.
- *
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @throws CoreException
- */
- public void throwCoreException(String msgKey) throws CoreException {
- IStatus status = new Status(IStatus.ERROR, _pluginId, IStatus.OK,
- getResourceString(msgKey), null);
- throw new CoreException(status);
- }
-
- /**
- * Throw a core exception built around the message with the correct plugin
- * id and resource bundle string.
- *
- * @param ee -
- * the real exception.
- * @throws CoreException
- */
- public void throwCoreException(Throwable ee) throws CoreException {
- IStatus status = new Status(IStatus.ERROR, _pluginId, IStatus.OK, ee
- .getMessage(), ee);
- throw new CoreException(status);
- }
-
- /**
- * Throw a core exception built around the message with the correct plugin
- * id and resource bundle string.
- *
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param ee -
- * the real exception.
- * @throws CoreException
- */
- public void throwCoreException(String msgKey, Throwable ee)
- throws CoreException {
- IStatus status = new Status(IStatus.ERROR, _pluginId, IStatus.OK,
- getResourceString(msgKey), ee);
- throw new CoreException(status);
- }
-
- /**
- * Throw a core exception built around the message with the correct plugin
- * id and resource bundle string.
- *
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @throws CoreException
- */
- public void throwCoreException(String msgKey, Object arg0)
- throws CoreException {
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- IStatus status = new Status(IStatus.ERROR, _pluginId, IStatus.OK,
- formatter.format(args), null);
- throw new CoreException(status);
- }
-
- /**
- * Throw a core exception built around the message with the correct plugin
- * id and resource bundle string.
- *
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param ee -
- * the real exception.
- * @throws CoreException
- */
- public void throwCoreException(String msgKey, Object arg0, Throwable ee)
- throws CoreException {
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- IStatus status = new Status(IStatus.ERROR, _pluginId, IStatus.OK,
- formatter.format(args), ee);
- throw new CoreException(status);
- }
-
- /**
- * Throw a core exception built around the message with the correct plugin
- * id and resource bundle string.
- *
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param arg1 -
- * arg to place into the resource bundle message.
- * @throws CoreException
- */
- public void throwCoreException(String msgKey, Object arg0, Object arg1)
- throws CoreException {
- Object[] args = new Object[2];
- args[0] = arg0;
- args[1] = arg1;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- IStatus status = new Status(IStatus.ERROR, _pluginId, IStatus.OK,
- formatter.format(args), null);
- throw new CoreException(status);
- }
-
- /**
- * Throw a core exception built around the message with the correct plugin
- * id and resource bundle string.
- *
- * @param msgKey -
- * message resource bundle key for the message displayed to the
- * user
- * @param arg0 -
- * arg to place into the resource bundle message.
- * @param arg1 -
- * arg to place into the resource bundle message.
- * @param ee -
- * the real exception.
- * @throws CoreException
- */
- public void throwCoreException(String msgKey, Object arg0, Object arg1,
- Throwable ee) throws CoreException {
- Object[] args = new Object[2];
- args[0] = arg0;
- args[1] = arg1;
-
- MessageFormat formatter = new MessageFormat(getResourceString(msgKey));
-
- IStatus status = new Status(IStatus.ERROR, _pluginId, IStatus.OK,
- formatter.format(args), ee);
- throw new CoreException(status);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/BrowserWindow.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/BrowserWindow.java
deleted file mode 100644
index 33ce9faf4..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/BrowserWindow.java
+++ /dev/null
@@ -1,391 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.jface.window.ApplicationWindow;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.browser.Browser;
-import org.eclipse.swt.browser.LocationAdapter;
-import org.eclipse.swt.browser.LocationEvent;
-import org.eclipse.swt.browser.OpenWindowListener;
-import org.eclipse.swt.browser.StatusTextEvent;
-import org.eclipse.swt.browser.StatusTextListener;
-import org.eclipse.swt.browser.WindowEvent;
-import org.eclipse.swt.custom.ScrolledComposite;
-import org.eclipse.swt.events.ControlAdapter;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.ControlListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.FillLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.ToolBar;
-import org.eclipse.swt.widgets.ToolItem;
-
-/**
- * Brings up a browser into a separate window.
- *
- * @author mengbo.
- *
- * Unused???
- */
-public class BrowserWindow extends ApplicationWindow {
-
- private static final String RELOAD_ITEM_IMAGE_FILE = "reload_nav_16.gif"; //$NON-NLS-1$
-
- private static final String REFRESH_ITEM_IMAGE_FILE = "refresh_nav_16.gif"; //$NON-NLS-1$
-
- private static final String STOP_ITEM_IMAGE_FILE = "stop_nav_16.gif"; //$NON-NLS-1$
-
- private static final String FORWARD_ITEM_IMAGE_FILE = "forward_nav_16.gif"; //$NON-NLS-1$
-
- private static final String BACK_ITEM_IMAGE_FILE = "back_nav_16.gif"; //$NON-NLS-1$
-
-
- /**
- * Command to send to the browser.
- */
- private static final int BROWSER_CMD_BACK = 1;
-
- private static final int BROWSER_CMD_FORWARD = 2;
-
- private static final int BROWSER_CMD_STOP = 3;
-
- private static final int BROWSER_CMD_REFRESH = 4;
-
- private static final int BROWSER_CMD_RELOAD = 5;
-
- private boolean _bIncludeToolbar;
-
- private boolean _bPopups;
-
- private String _title;
-
- private ScrolledComposite _scomp;
-
- private Composite _browserComposite;
-
- private Browser _browser;
-
- private String _startLocation;
-
- private String _startContent;
-
- // these items are browser context sensitive.
- private ToolItem _backItem;
-
- private ToolItem _forwardItem;
-
- /**
- * @param parentShell
- * owner of this window.
- */
- public BrowserWindow(Shell parentShell) {
- this(parentShell, false, null, false);
- }
-
- /**
- * @param parentShell
- * owner of this window.
- * @param bPopups
- * allow popup windows?
- * @param title
- * Tittle on window.
- */
- public BrowserWindow(Shell parentShell, boolean bPopups, String title) {
- this(parentShell, bPopups, title, false);
- }
-
- /**
- * @param parentShell
- * owner of this window.
- * @param bPopups
- * allow popup windows?
- * @param title
- * Tittle on window.
- * @param bModal
- * pretend to a be a dialog?
- */
- public BrowserWindow(Shell parentShell, boolean bPopups, String title,
- boolean bModal) {
- super(parentShell);
- addStatusLine();
- _bPopups = bPopups;
- _title = title;
- includeToolbar(true);
-
- if (bModal && (parentShell != null)) {
- // APPLICATION_MODAL, MODELESS, PRIMARY_MODAL, SYSTEM_MODAL
- setShellStyle(getShellStyle() | SWT.APPLICATION_MODAL);
- setBlockOnOpen(true);
- }
- }
-
- /**
- * Default is true, set whether to include the toolbar at the top. This must
- * be called before the window is opened.
- *
- * @param bIncludeToolbar
- */
- public void includeToolbar(boolean bIncludeToolbar) {
- _bIncludeToolbar = bIncludeToolbar;
- }
-
- /**
- * @param title
- */
- public void setTitle(String title) {
- if ((title != null) && (super.getShell() != null)) {
- super.getShell().setText(title);
- }
- }
-
- /**
- * @param startLocation
- */
- /**
- * @param startLocation
- */
- public void setStartLocation(String startLocation) {
- _startLocation = startLocation;
- }
-
- /**
- * @param startContent
- */
- public void setStartContent(String startContent) {
- _startContent = startContent;
- }
-
- /**
- * @return the browser object
- */
- public Browser getBrowser() {
- return _browser;
- }
-
- protected Control createContents(Composite parent) {
- // Create the scroll composite as the one inside the parent.
- _scomp = new ScrolledComposite(parent, SWT.V_SCROLL | SWT.H_SCROLL);
-
- // Create the composite that goes inside the scroller. We will use this
- // for
- // everything else from here.
- Composite innerComposite = SWTUtils.createComposite(_scomp, 1, 10, -1);
- _scomp.setContent(innerComposite);
- ControlListener listener = new ControlAdapter() {
- // this will handle resizing the browser when the window is resized.
- public void controlResized(ControlEvent e) {
- Point pt = _scomp.getParent().getSize();
- Rectangle rect = _browserComposite.getBounds();
-
- pt.x -= rect.x;
- pt.y -= rect.y;
-
- // spacing offsets in the composites.
- pt.x -= 10;
- pt.y -= 60; // need status bar at bottom...30 more than normal.
-
- // do the sanity check here since it prevents further checks.
- if ((pt.x <= 0) || (pt.y <= 0)) {
- return;
- }
-
- Rectangle innerRect = _scomp.getContent().getBounds();
- Rectangle outerRect = _scomp.getBounds();
-
- // substract if the scroll bars are visible.
- if (innerRect.width > outerRect.width) {
- pt.y -= _scomp.getHorizontalBar().getSize().y;
- }
- if (innerRect.height > outerRect.height) {
- pt.x -= _scomp.getVerticalBar().getSize().x;
- }
-
- _browserComposite.setSize(pt);
- _browserComposite.getParent().layout(true);
- }
- };
- _scomp.addControlListener(listener);
-
- if (_bIncludeToolbar) {
- // ////////////////////////////////////////
- // toobar
- // ////////////////////////////////////////
- ToolBar tb = new ToolBar(innerComposite, SWT.HORIZONTAL | SWT.FLAT);
- fillToolbar(tb);
- }
-
- // ////////////////////////////////////////
- // browser
- // ////////////////////////////////////////
- _browserComposite = new Composite(innerComposite, SWT.NULL);
- _browserComposite.setLayout(new FillLayout());
-
- _browser = new Browser(_browserComposite, SWT.NULL);
-
- if (_startLocation != null) {
- _browser.setUrl(_startLocation);
- } else if (_startContent != null) {
- _browser.setText(_startContent);
- } else {
- _browser.setText(Messages.BrowserWindow_loading);
- }
-
- // send the browser status messages to eclipse.
- _browser.addStatusTextListener(new StatusTextListener() {
- public void changed(StatusTextEvent event) {
- setStatus(event.text);
- }
- });
-
- if (_bIncludeToolbar) {
- // check for change in location so we can enable the back/forward
- // buttons.
- _browser.addLocationListener(new LocationAdapter() {
- public void changed(LocationEvent event) {
- // check if there is something in the forward or back queue.
- _backItem.setEnabled(_browser.isBackEnabled());
- _forwardItem.setEnabled(_browser.isForwardEnabled());
- }
- });
- }
-
- // check is we need to open a new window.
- _browser.addOpenWindowListener(new OpenWindowListener() {
- public void open(WindowEvent event) {
- if (_bPopups) {
- BrowserWindow window = new BrowserWindow(getShell());
- window.open();
- event.browser = window.getBrowser();
- } else {
- event.browser = getBrowser();
- }
- }
- });
-
- setTitle(_title);
- SWTUtils.computeScrollArea(_scomp, innerComposite);
- return _scomp;
- }
-
- /**
- * Fill the toolbar for this window. This method can be overwritten to place
- * other toolbar controls in the bar.
- *
- * @param tb
- */
- protected void fillToolbar(ToolBar tb) {
- // Back browser
- _backItem = new ToolItem(tb, SWT.PUSH);
- _backItem.setImage(JSFUICommonPlugin.getDefault()
- .getImage(BACK_ITEM_IMAGE_FILE));
- _backItem.setToolTipText(JSFUICommonPlugin
- .getResourceString("BrowserWindow.back.tooltip")); //$NON-NLS-1$
- SelectionListener backSelectionListener = new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- browserCmd(BROWSER_CMD_BACK);
- }
- };
- _backItem.addSelectionListener(backSelectionListener);
-
- // Forward Browser
- _forwardItem = new ToolItem(tb, SWT.PUSH);
- _forwardItem.setImage(JSFUICommonPlugin.getDefault().getImage(
- FORWARD_ITEM_IMAGE_FILE));
- _forwardItem.setToolTipText(JSFUICommonPlugin
- .getResourceString("BrowserWindow.forward.tooltip")); //$NON-NLS-1$
- SelectionListener forwardSelectionListener = new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- browserCmd(BROWSER_CMD_FORWARD);
- }
- };
- _forwardItem.addSelectionListener(forwardSelectionListener);
-
- // Stop Browser
- ToolItem stopItem = new ToolItem(tb, SWT.PUSH);
- stopItem
- .setImage(JSFUICommonPlugin.getDefault().getImage(STOP_ITEM_IMAGE_FILE));
- stopItem.setToolTipText(JSFUICommonPlugin
- .getResourceString("BrowserWindow.stop.tooltip")); //$NON-NLS-1$
- SelectionListener stopSelectionListener = new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- browserCmd(BROWSER_CMD_STOP);
- }
- };
- stopItem.addSelectionListener(stopSelectionListener);
-
- // Refresh Browser
- ToolItem refreshItem = new ToolItem(tb, SWT.PUSH);
- refreshItem.setImage(JSFUICommonPlugin.getDefault().getImage(
- REFRESH_ITEM_IMAGE_FILE));
- refreshItem.setToolTipText(JSFUICommonPlugin
- .getResourceString("BrowserWindow.refresh.tooltip")); //$NON-NLS-1$
- SelectionListener refreshServiceSelectionListener = new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- browserCmd(BROWSER_CMD_REFRESH);
- }
- };
- refreshItem.addSelectionListener(refreshServiceSelectionListener);
-
- if ((_startLocation != null) || (_startContent != null)) {
- // Reload Browser.
- ToolItem reloadItem = new ToolItem(tb, SWT.PUSH);
- reloadItem.setImage(JSFUICommonPlugin.getDefault().getImage(
- RELOAD_ITEM_IMAGE_FILE));
- reloadItem.setToolTipText(JSFUICommonPlugin
- .getResourceString("BrowserWindow.reload.tooltip")); //$NON-NLS-1$
- SelectionListener reloadSelectionListener = new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- browserCmd(BROWSER_CMD_RELOAD);
- }
- };
- reloadItem.addSelectionListener(reloadSelectionListener);
- }
- }
-
- /**
- * send the browser widget a command as defined by the cmd constant defines.
- * @param cmd
- *
- * @return true if the command was successful.
- */
- public boolean browserCmd(int cmd) {
- switch (cmd) {
- case BROWSER_CMD_BACK:
- return _browser.back();
- case BROWSER_CMD_FORWARD:
- return _browser.forward();
- case BROWSER_CMD_STOP:
- _browser.stop();
- return true;
- case BROWSER_CMD_REFRESH:
- _browser.refresh();
- return true;
- case BROWSER_CMD_RELOAD:
- if (_startLocation != null) {
- _browser.setUrl(_startLocation);
- } else if (_startContent != null) {
- _browser.setText(_startContent);
- }
- return true;
-
- }
- return false;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java
deleted file mode 100644
index f787c2240..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.ScrolledComposite;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.forms.events.ExpansionAdapter;
-import org.eclipse.ui.forms.events.ExpansionEvent;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Section;
-
-/**
- * Creates a class to be used to build a control for a collapseable area inside
- * a scrollable composite. This will take care of scrollbar resize.
- *
- * Example use:
- *
- * CollapsableSection cs = new CollapsableSection(toolkit, scomp, "General",
- * true) { public void setCollapsableContent(Composite composite) { // place
- * your content on this composite.... } }); cs.createControl(composite,
- * horizontalSpan);
- *
- * @author mengbo
- *
- */
-public abstract class CollapsableSection {
- // internal fields needed for doing the section and computing the scrollbar
- // on a collapse.
- private FormToolkit _toolkit;
-
- private Section _section;
-
- private ScrolledComposite _scomp;
-
- private String _title;
-
- private int _expansionStyle;
-
- /**
- * Creates a class to be used to build the control for a collapseable area.
- *
- * @param toolkit
- *
- * @param scomp
- * the scrollable composite used inside the container. This is
- * used to force resizing of the bars on dinking the control.
- * @param title
- * the string to place next to the collapsable icon.
- * @param bCollapsed
- * should this area start collapsed?
- */
- public CollapsableSection(FormToolkit toolkit, ScrolledComposite scomp,
- String title, boolean bCollapsed) {
- _toolkit = toolkit;
- _scomp = scomp;
- _title = title;
- _expansionStyle = ExpandableComposite.TWISTIE
- | ExpandableComposite.FOCUS_TITLE;
- if (bCollapsed) {
- _expansionStyle |= ExpandableComposite.COMPACT;
- } else {
- _expansionStyle |= ExpandableComposite.EXPANDED;
- }
- }
-
- /**
- * Build the GUI parts of the Collapsable area into the given composite.
- * NOTE: you must set the layout on this composite before adding swt
- * widgets.
- *
- * @param composite
- */
- abstract public void setCollapsableContent(Composite composite);
-
- /**
- * A convient way to build the widget into a control and place it on the
- * page. NOTE: this method will build the Section and call
- * setCollapsableContent with a composite to fill in the inner area.
- *
- * @param parent
- * @param horizontalSpan
- * how many columns should this control span.
- * @return Control that was added to the composite.
- */
- public Control createControl(Composite parent, int horizontalSpan) {
- _section = _toolkit.createSection(parent, _expansionStyle);
- _section.clientVerticalSpacing = 5; // space between the dink and the
- // controls in when opened.
- // _section.marginHeight = 5; // indents the entire section.
- // _section.marginWidth = 5; // indents the entire section.
- _section.setText(_title);
- _toolkit.createCompositeSeparator(_section);
- _section.addExpansionListener(new ExpansionAdapter() {
- public void expansionStateChanged(ExpansionEvent event) {
- SWTUtils.computeScrollArea(_scomp, (Composite) _scomp
- .getContent());
- }
- });
-
- Composite content = new Composite(_section, SWT.NULL);
- setCollapsableContent(content);
-
- _section.setClient(content);
- GridData gd = new GridData(GridData.FILL_HORIZONTAL);
- gd.horizontalSpan = horizontalSpan;
- _section.setLayoutData(gd);
-
- return _section;
- }
-
- /**
- * Programmatically changes expanded state.
- *
- * @param expanded
- * the new expanded state
- */
- public void setExpanded(boolean expanded) {
- if (_section != null) {
- _section.setExpanded(expanded);
-
- // NOTE: internal calling of expanding doesn't fire
- // the event to resize. We do it here.
- SWTUtils.computeScrollArea(_scomp, (Composite) _scomp.getContent());
- }
- }
-
- /**
- * Return the internal Section control for more advanced things.
- *
- * @return Section
- */
- public Section getSection() {
- return _section;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/FavoriteSection.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/FavoriteSection.java
deleted file mode 100644
index be9882cb7..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/FavoriteSection.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import java.util.Properties;
-
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.utils.FavoriteConfigurations;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * Builds a favorites with the given name in the plugins resources. This build a
- * generic looking favorites section.
- *
- * @author mengbo
- */
-public abstract class FavoriteSection {
- private FavoriteConfigurations _favorites;
-
- private Combo _favoriteCombo;
-
- /**
- * @param plugin
- * @param favoriteName
- */
- public FavoriteSection(AbstractUIPlugin plugin, String favoriteName) {
- _favorites = new FavoriteConfigurations(plugin, favoriteName);
- }
-
- /**
- * @param parent
- * @param horizontalSpan
- * @param comboMinWidth
- * @return the combo
- */
- public Combo createFavoriteGroup(Composite parent, int horizontalSpan,
- int comboMinWidth) {
- Group favGroup = SWTUtils.createGroup(parent, JSFUICommonPlugin
- .getResourceString("favorites.group.label"), 4, horizontalSpan, //$NON-NLS-1$
- GridData.BEGINNING | GridData.CENTER);
-
- // Add favorite text field
- SWTUtils.createLabel(favGroup, JSFUICommonPlugin
- .getResourceString("favorites.label"), 1); //$NON-NLS-1$
- _favoriteCombo = SWTUtils.createCombo(favGroup, _favorites
- .getFavoritesList(), 1, comboMinWidth, true);
- _favoriteCombo.setToolTipText(JSFUICommonPlugin
- .getResourceString("favorites.tooltip")); //$NON-NLS-1$
- _favoriteCombo.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- String favName = _favoriteCombo.getText().trim();
- if (favName.length() > 0) {
- Properties favProp = _favorites.getFavorite(_favoriteCombo
- .getText().trim());
- if (favProp != null) {
- setFavorites(favProp);
- }
- }
- }
- });
-
- // Add Save button
- Button saveButton = SWTUtils.createPushButton(favGroup, JSFUICommonPlugin
- .getResourceString("button.save")); //$NON-NLS-1$
- saveButton.setToolTipText(JSFUICommonPlugin
- .getResourceString("favorites.save.tooltip")); //$NON-NLS-1$
- saveButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- String favName = _favoriteCombo.getText().trim();
- if (favName.length() == 0) {
- favName = JSFUICommonPlugin
- .getResourceString("favorites.default"); //$NON-NLS-1$
- }
- Properties favProp = new Properties();
- saveFavorites(favProp);
-
- _favorites.addFavorite(favName, favProp);
- _favorites.saveFavorites();
-
- _favoriteCombo.removeAll();
- String[] names = _favorites.getFavoritesList();
-
- _favoriteCombo.setItems(names);
- _favoriteCombo.setText(favName);
- }
- });
-
- // Add Remove button
- Button removeButton = SWTUtils.createPushButton(favGroup, JSFUICommonPlugin
- .getResourceString("button.remove")); //$NON-NLS-1$
- removeButton.setToolTipText(JSFUICommonPlugin
- .getResourceString("favorites.remove.tooltip")); //$NON-NLS-1$
- removeButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- String favName = _favoriteCombo.getText().trim();
- if (favName.length() > 0) {
- _favorites.removeFavorite(favName);
- _favorites.saveFavorites();
-
- removeFavorites();
-
- _favoriteCombo.removeAll();
- String[] names = _favorites.getFavoritesList();
- _favoriteCombo.setItems(names);
- }
- }
- });
-
- return _favoriteCombo;
- }
-
- /**
- * This method will be called when a new favorite is set. This allows the
- * caller to set their values from the properties supplied.
- *
- * @param prop
- */
- public abstract void setFavorites(Properties prop);
-
- /**
- * This method will be called when a new favorite is saved. This allows the
- * caller to save their values into the properties supplied.
- *
- * @param prop
- */
- public abstract void saveFavorites(Properties prop);
-
- /**
- * This method will be called when the active favorite is removed. It allows
- * for clearing fields.
- */
- public void removeFavorites() {
- // do nothing.
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/ImageContainer.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/ImageContainer.java
deleted file mode 100644
index 8f697d164..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/ImageContainer.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ControlAdapter;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.PaintEvent;
-import org.eclipse.swt.events.PaintListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * A general purpose class for displying an image in a composite. There is no
- * eclipse tool for doing this other than CLabl which is bulkly.
- *
- * This was original written by Karl Reti.
- *
- * @author mengbo
- */
-public class ImageContainer extends Composite {
- private Image _image = null;
-
- private boolean _bCleanupImage;
-
- /**
- * @param parent
- */
- public ImageContainer(Composite parent) {
- super(parent, SWT.NONE);// SWT.NO_BACKGROUND );//|
- // SWT.NO_REDRAW_RESIZE);
- setBackground(ColorConstants.white);
- // paint the image
- addPaintListener(new PaintListener() {
- public void paintControl(PaintEvent e) {
- if (_image != null) {
- e.gc.drawImage(_image, 0, 0);
- }
- }
-
- });
-
- addControlListener(new ControlAdapter() {
- public void controlResized(ControlEvent e) {
- setSize(_image.getBounds().width, _image.getBounds().height);
- }
- });
-
- // tidy up
- addDisposeListener(new DisposeListener() {
- public void widgetDisposed(DisposeEvent e) {
- if (_bCleanupImage && _image != null && !_image.isDisposed()) {
- _image.dispose();
- }
- }
- });
- }
-
- /**
- * @return Returns the image.
- */
- public Image getImage() {
- return _image;
- }
-
- /**
- * @return should the image be disposed of on cleanup. Set false if the
- * image is cached.
- */
- public boolean isCleanupImage() {
- return _bCleanupImage;
- }
-
- /**
- * @param image
- * The image to set.
- */
- public void setImage(Image image) {
- setImage(image, false);
- }
-
- /**
- * @param image
- * The image to set.
- * @param bCleanupImage
- */
- public void setImage(Image image, boolean bCleanupImage) {
- _image = image;
- _bCleanupImage = bCleanupImage;
- setSize(image.getBounds().width, image.getBounds().height);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/IntroductionSection.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/IntroductionSection.java
deleted file mode 100644
index a022c1b63..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/IntroductionSection.java
+++ /dev/null
@@ -1,351 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.help.HelpSystem;
-import org.eclipse.help.IContext;
-import org.eclipse.help.IHelpResource;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.RowLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.forms.IManagedForm;
-import org.eclipse.ui.forms.SectionPart;
-import org.eclipse.ui.forms.events.HyperlinkAdapter;
-import org.eclipse.ui.forms.events.HyperlinkEvent;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormText;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Hyperlink;
-import org.eclipse.ui.forms.widgets.ImageHyperlink;
-import org.eclipse.ui.forms.widgets.Section;
-import org.eclipse.ui.forms.widgets.TableWrapData;
-import org.eclipse.ui.forms.widgets.TableWrapLayout;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * Provides a standard looking introduction section for a intro page for the
- * editors. This was taken and is suppose to look like the standard Sybase
- * workspace service editors intro page.
- *
- * this was original written by Collinsc
- *
- * TODO: Should this be moved into the facesconfig ui plugin since it is only
- * really used there?
- *
- * @author collinsc,jchoi
- */
-public class IntroductionSection extends SectionPart {
-
- private static final String HELP_IMAGE_FILE = "help.gif"; //$NON-NLS-1$
-
- private static Logger _log = JSFUICommonPlugin
- .getLogger(IntroductionSection.class);
-
- private String _editorId;
-
- private FormToolkit _toolkit;
-
- // private ImageHyperlink _helpImage;
- private Composite _textClient;
-
- private String _helpContextId;
-
- private String _helpTooltip;
-
- /**
- * Basic constructor - no help with this one.
- *
- * @param editorId
- * id of the editor this page is for.
- * @param managedForm
- * @param toolkit
- */
- public IntroductionSection(String editorId, IManagedForm managedForm,
- FormToolkit toolkit) {
- this(editorId, managedForm, toolkit, null, null);
- }
-
- /**
- * Constructor with help option.
- *
- * @param editorId
- * id of the editor this page is for.
- * @param managedForm
- * @param toolkit
- * @param contextId
- * @param helpTooltip
- */
- public IntroductionSection(String editorId, IManagedForm managedForm,
- FormToolkit toolkit, final String contextId, String helpTooltip) {
- super(managedForm.getForm().getBody(), toolkit,
- ExpandableComposite.TITLE_BAR | Section.DESCRIPTION);
- super.initialize(managedForm);
- this._editorId = editorId;
- this._toolkit = toolkit;
- this._helpContextId = contextId;
- this._helpTooltip = helpTooltip;
-
- this._textClient = this._toolkit.createComposite(getSection(), SWT.NONE);
- this._textClient.setSize(32, 16);
-
- RowLayout rowLayout = new RowLayout();
- rowLayout.wrap = false;
- rowLayout.pack = false;
- rowLayout.justify = true;
- rowLayout.type = SWT.HORIZONTAL;
- rowLayout.marginLeft = 0;
- rowLayout.marginTop = 0;
- rowLayout.marginRight = 0;
- rowLayout.marginBottom = 0;
- rowLayout.spacing = 0;
- this._textClient.setLayout(rowLayout);
-
- this._toolkit.adapt(this._textClient, true, true);
- getSection().setTextClient(this._textClient);
-
- if (this._helpContextId != null) {
- // setup the help image.
- ImageHyperlink helpImage = new ImageHyperlink(this._textClient,
- SWT.NONE);
- this._toolkit.adapt(helpImage, true, true);
- helpImage.setImage(JSFUICommonPlugin.getDefault().getImage(HELP_IMAGE_FILE));
- if (this._helpTooltip != null) {
- helpImage.setToolTipText(this._helpTooltip);
- }
- helpImage.setBackground(getSection()
- .getTitleBarGradientBackground());
- helpImage.addHyperlinkListener(new HyperlinkAdapter() {
- public void linkActivated(HyperlinkEvent e) {
- IContext context = HelpSystem.getContext(_helpContextId);
- if (context != null) {
- IHelpResource[] topics = context.getRelatedTopics();
- if (topics != null && topics.length == 1) {
- PlatformUI.getWorkbench().getHelpSystem().displayHelpResource(topics[0]
- .getHref());
- } else {
- PlatformUI.getWorkbench().getHelpSystem().displayHelp(_helpContextId);
- }
- }
- }
- });
- }
-
- Composite client = this._toolkit.createComposite(getSection());
- createClient(client, this._toolkit);
- getSection().setClient(client);
- }
-
- private Composite createClient(Composite container, FormToolkit factory) {
- TableWrapLayout layout = new TableWrapLayout();
- layout.numColumns = 2;
- layout.makeColumnsEqualWidth = false;
- layout.horizontalSpacing = 20;
- layout.verticalSpacing = 20;
- container.setLayout(layout);
-
- IConfigurationElement element = getExtensions();
-
- if (element != null) {
- setPageDetails(element);
-
- IConfigurationElement[] children = element.getChildren();
- for (int ii = 0; ii < children.length; ii++) {
- processItems(container, factory, children[ii]);
- }
- } else {
- setText(Messages.IntroductionSection_noIntroTitle);
-
- setDescription(Messages.IntroductionSection_noIntroDescription);
- }
-
- factory.paintBordersFor(container);
- PlatformUI.getWorkbench().getHelpSystem().setHelp(container, _helpContextId);
- return container;
- }
-
- /**
- * set the page details from the extensionpoint
- *
- * @param element
- */
- private void setPageDetails(IConfigurationElement element) {
- setText(element.getAttribute("name")); //$NON-NLS-1$
- setDescription(element.getAttribute("description")); //$NON-NLS-1$
- }
-
- /**
- * add the extension elements to the page
- *
- * @param parent
- * @param toolkit_
- * @param element
- */
- private void processItems(Composite parent, FormToolkit toolkit_,
- IConfigurationElement element) {
- String hyperlink = element.getAttribute("hyperlink"); //$NON-NLS-1$
- String iconPath = element.getAttribute("icon"); //$NON-NLS-1$
- String text = element.getAttribute("text"); //$NON-NLS-1$
- String heading = element.getAttribute("heading"); //$NON-NLS-1$
- String action = element.getAttribute("hyperlinkaction"); //$NON-NLS-1$
- //String actionparameters = element.getAttribute("actionparameters"); //$NON-NLS-1$
-
- if (iconPath != null && iconPath.length() > 0) {
- // add an icon to the page
- String iconName;
- if (iconPath.indexOf(IPath.SEPARATOR) != -1) {
- iconName = new Path(iconPath).lastSegment();
- } else {
- iconName = iconPath;
- }
-
- ImageDescriptor imageDescriptor = AbstractUIPlugin
- .imageDescriptorFromPlugin(
- element.getDeclaringExtension()
- .getContributor().getName(), iconPath);
-
- if (imageDescriptor != null)
- {
- ImageRegistry imageRegistry =
- JSFUICommonPlugin.getDefault().getImageRegistry();
-
-
- Image image = imageRegistry.get(iconName);
-
- if (image == null)
- {
- image = imageDescriptor.createImage();
-
- if (image != null)
- {
- imageRegistry.put(iconName, image);
- }
- else
- {
- image = ImageDescriptor.getMissingImageDescriptor().createImage();
- }
- }
-
- if (image != null)
- {
- ImageContainer img = new ImageContainer(parent);
- img.setImage(image);
- TableWrapData td = new TableWrapData();
- td.rowspan = 2;
- img.setLayoutData(td);
- }
- else
- {
- JSFUICommonPlugin.getLogger(this.getClass()).error(new Throwable("Image not created for "+element)); //$NON-NLS-1$
- }
- }
- else
- {
- JSFUICommonPlugin.getLogger(this.getClass()).error(new Throwable("Image Descriptor not found for "+element)); //$NON-NLS-1$
- }
- }
-
- if (heading != null && heading.length() > 0) {
- // add a header
- Label lbl = toolkit_.createLabel(parent, heading);
- lbl.setFont(JFaceResources.getHeaderFont());
- }
-
- if (hyperlink != null && hyperlink.length() > 0) {
- Hyperlink hypr = toolkit_.createHyperlink(parent, hyperlink,
- SWT.NONE);
- if (action != null && action.length() > 0) {
- try {
- final IAction thisAction = (IAction) element
- .createExecutableExtension("hyperlinkaction"); //$NON-NLS-1$
- hypr.addHyperlinkListener(new HyperlinkAdapter() {
- public void linkActivated(HyperlinkEvent e) {
- thisAction.run();
- }
- });
- } catch (Exception ee) {
- // log.IntroductionSection.action.error=Failed to launch the
- // link {0}.
- _log.error("log.IntroductionSection.action.error", //$NON-NLS-1$
- hyperlink, ee);
- JSFUICommonPlugin.getAlerts().detailError(hyperlink,
- "log.IntroductionSection.action.error", hyperlink, //$NON-NLS-1$
- ee);
- }
- }
- }
-
- if (text != null && text.length() > 0) {
- FormText form = toolkit_.createFormText(parent, false);
- form.setText(text, false, false);
- }
- }
-
- /**
- * Get the extension elements for the Introduction pages
- */
- private IConfigurationElement getExtensions() {
- // find all service editor page extensions
- IConfigurationElement element = null;
-
- // find all service editor parameter dialog extensions
- IConfigurationElement[] elements = Platform
- .getExtensionRegistry()
- .getConfigurationElementsFor(
- "org.eclipse.jst.jsf.common.ui.introductionPage"); //$NON-NLS-1$
- if (elements.length > 0) {
- for (int ii = 0; ii < elements.length; ii++) {
- // get extensions for this dialog
- // String extPluginId =
- // elements[ii].getDeclaringExtension().getNamespace();
- String editorId1 = elements[ii].getDeclaringExtension()
- .getSimpleIdentifier();
-
- // see if we have any contributuins of dialogs
- if (this._editorId.equals(editorId1)) {
- element = elements[ii];
- break;
- }
- }
- }
- return element;
- }
-
- private void setText(String text) {
- getSection().setText(text);
- }
-
- private void setDescription(String text) {
- getSection().setDescription(text);
- }
-
- /**
- * Set this section's layout data
- * @param layoutData
- */
- public void setLayoutData(Object layoutData) {
- getSection().setLayoutData(layoutData);
- }
-} \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Messages.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Messages.java
deleted file mode 100644
index b8772361b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/Messages.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * String resource handler.
- *
- * @author Debajit Adhikary - Oracle
- */
-
-public class Messages extends NLS {
-
- private static final String BUNDLE_NAME = "org.eclipse.jst.jsf.common.ui.internal.guiutils.messages"; //$NON-NLS-1$
-
- /**
- * See messages.properties.
- */
- public static String IntroductionSection_noIntroDescription;
-
- /**
- * See messages.properties.
- */
- public static String IntroductionSection_noIntroTitle;
-
- /**
- * See messages.properties.
- */
- public static String BrowserWindow_loading;
-
-
- static {
- // initialize resource bundle
- NLS.initializeMessages(BUNDLE_NAME, Messages.class);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/OverviewSection.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/OverviewSection.java
deleted file mode 100644
index 4654c40f3..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/OverviewSection.java
+++ /dev/null
@@ -1,287 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.help.HelpSystem;
-import org.eclipse.help.IContext;
-import org.eclipse.help.IHelpResource;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.RowLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.forms.IManagedForm;
-import org.eclipse.ui.forms.SectionPart;
-import org.eclipse.ui.forms.editor.FormEditor;
-import org.eclipse.ui.forms.events.HyperlinkAdapter;
-import org.eclipse.ui.forms.events.HyperlinkEvent;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormText;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Hyperlink;
-import org.eclipse.ui.forms.widgets.ImageHyperlink;
-import org.eclipse.ui.forms.widgets.Section;
-
-
-/**
- * @author jchoi
- * @version
- */
-public class OverviewSection extends SectionPart {
-
- private static final String HELP_IMAGE_FILE = "help.gif"; //$NON-NLS-1$
-
- private static Logger log = JSFUICommonPlugin.getLogger(OverviewSection.class);
-
- private String editorId;
-
- private FormToolkit toolkit;
-
- private ImageHyperlink helpImage;
-
- private Composite textClient;
-
- private String helpContextId;
-
- private String helpTooltip;
-
- /**
- * @param editorId
- * @param managedForm
- * @param toolkit
- */
- public OverviewSection(String editorId, IManagedForm managedForm,
- FormToolkit toolkit) {
- this(editorId, managedForm, toolkit, null, null);
-
- }
-
- /**
- * Constructor with help option.
- *
- * @param editorId
- * id of the editor this page is for.
- * @param managedForm
- * @param toolkit
- * @param helpContextId
- * @param helpTooltip
- */
- public OverviewSection(String editorId, IManagedForm managedForm,
- FormToolkit toolkit, String helpContextId, String helpTooltip) {
- super(managedForm.getForm().getBody(), toolkit,
- ExpandableComposite.TITLE_BAR | Section.DESCRIPTION);
- super.initialize(managedForm);
- this.editorId = editorId;
- this.toolkit = toolkit;
- this.helpContextId = helpContextId;
- this.helpTooltip = helpTooltip;
-
- this.textClient = this.toolkit.createComposite(getSection(), SWT.NONE);
- this.textClient.setSize(32, 16);
-
- init();
-
- Composite client = this.toolkit.createComposite(getSection());
- //createClient(client, this.toolkit);
- getSection().setClient(client);
- }
-
- /**
- * @param editor
- * @param managedForm
- * @param toolkit
- * @param style
- */
- public OverviewSection(FormEditor editor, IManagedForm managedForm,
- FormToolkit toolkit, int style) {
- super(managedForm.getForm().getBody(), toolkit,
- ExpandableComposite.TITLE_BAR | style);
- super.initialize(managedForm);
- this.toolkit = toolkit;
-
- this.textClient = this.toolkit.createComposite(getSection(), SWT.NONE);
- this.textClient.setSize(32, 16);
-
- init();
- }
-
- /**
- * @param editor
- * @param managedForm
- * @param toolkit
- * @param style
- * @param helpContextId
- * @param helpTooltip
- */
- public OverviewSection(FormEditor editor, IManagedForm managedForm,
- FormToolkit toolkit, int style, String helpContextId,
- String helpTooltip) {
- super(managedForm.getForm().getBody(), toolkit,
- ExpandableComposite.TITLE_BAR | style);
- super.initialize(managedForm);
- this.toolkit = toolkit;
-
- this.textClient = toolkit.createComposite(getSection(), SWT.NONE);
- this.textClient.setSize(32, 16);
- this.helpContextId = helpContextId;
- this.helpTooltip = helpTooltip;
- init();
- }
-
- /**
- *
- */
- public void initialize() {
- Composite client = toolkit.createComposite(getSection());
- //createClient(client, toolkit);
- getSection().setClient(client);
- }
-
- private void init() {
- RowLayout rowLayout = new RowLayout();
- rowLayout.wrap = false;
- rowLayout.pack = false;
- rowLayout.justify = true;
- rowLayout.type = SWT.HORIZONTAL;
- rowLayout.marginLeft = 0;
- rowLayout.marginTop = 0;
- rowLayout.marginRight = 0;
- rowLayout.marginBottom = 0;
- rowLayout.spacing = 0;
- textClient.setLayout(rowLayout);
-
- helpImage = new ImageHyperlink(textClient, SWT.NONE);
- toolkit.adapt(helpImage, true, true);
- toolkit.adapt(textClient, true, true);
- helpImage.setImage(JSFUICommonPlugin.getDefault().getImage(HELP_IMAGE_FILE));
- getSection().setTextClient(textClient);
- if (helpTooltip != null) {
- helpImage.setToolTipText(helpTooltip);
- }
- helpImage.setBackground(getSection().getTitleBarGradientBackground());
- helpImage.addHyperlinkListener(new HyperlinkAdapter() {
- public void linkActivated(HyperlinkEvent e) {
- IContext context = HelpSystem.getContext(helpContextId);
- if (context != null) {
- IHelpResource[] topics = context.getRelatedTopics();
- if (topics != null && topics.length == 1) {
- PlatformUI.getWorkbench().getHelpSystem().displayHelpResource(topics[0].getHref());
- } else {
- PlatformUI.getWorkbench().getHelpSystem().displayHelp(helpContextId);
- }
- }
- }
- });
-
- /*
- * Composite client = _toolkit.createComposite(getSection());
- * createClient(client, _toolkit); getSection().setClient(client);
- */
- }
-
- /**
- * set the page details from the extensionpoint
- *
- * @param element
- */
- protected void setPageDetails(IConfigurationElement element) {
- setText(element.getAttribute("name")); //$NON-NLS-1$
- setDescription(element.getAttribute("description")); //$NON-NLS-1$
- }
-
- /**
- * add the extension elements to the page
- *
- * @param parent
- * @param toolkit_
- * @param element
- */
- public void processItems(Composite parent, FormToolkit toolkit_,
- IConfigurationElement element) {
- String hyperlink = element.getAttribute("hyperlink"); //$NON-NLS-1$
- String text = element.getAttribute("text"); //$NON-NLS-1$
- String action = element.getAttribute("hyperlinkaction"); //$NON-NLS-1$
- //String actionparameters = element.getAttribute("actionparameters"); //$NON-NLS-1$
-
- if (hyperlink != null && hyperlink.length() > 0) {
- Hyperlink hypr = toolkit_.createHyperlink(parent, hyperlink,
- SWT.NONE);
- if (action != null && action.length() > 0) {
- try {
- final IAction thisAction = (IAction) element
- .createExecutableExtension("hyperlinkaction"); //$NON-NLS-1$
- hypr.addHyperlinkListener(new HyperlinkAdapter() {
- public void linkActivated(HyperlinkEvent e) {
- thisAction.run();
- }
- });
- } catch (Exception ee) {
- // log.IntroductionSection.action.error=Failed to launch the
- // link {0}.
- log
- .error("log.OverviewSection.action.error", //$NON-NLS-1$
- hyperlink, ee);
- JSFUICommonPlugin.getAlerts().detailError(hyperlink,
- "log.OverviewSection.action.error", hyperlink, ee); //$NON-NLS-1$
- }
- }
- }
-
- if (text != null && text.length() > 0) {
- FormText form = toolkit_.createFormText(parent, false);
- form.setText(text, false, false);
- }
- }
-
- /**
- * Get the extension elements for the Introduction pages
- * @param extensionPoint
- * @return the configuration element
- */
- public IConfigurationElement getExtensions(String extensionPoint) {
- // find all service editor page extensions
- IConfigurationElement element = null;
-
- // find all service editor parameter dialog extensions
- IConfigurationElement[] elements = Platform.getExtensionRegistry()
- .getConfigurationElementsFor(extensionPoint);
- if (elements.length > 0) {
- for (int ii = 0; ii < elements.length; ii++) {
- // get extensions for this dialog
- // String extPluginId =
- // elements[ii].getDeclaringExtension().getNamespace();
- String anEditorId = elements[ii].getDeclaringExtension()
- .getSimpleIdentifier();
-
- // see if we have any contributuins of dialogs
- if (this.editorId.equals(anEditorId)) {
- element = elements[ii];
- break;
- }
- }
- }
- return element;
- }
-
- private void setText(String text) {
- getSection().setText(text);
- }
-
- private void setDescription(String text) {
- getSection().setDescription(text);
-
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/SWTUtils.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/SWTUtils.java
deleted file mode 100644
index 862b26bc2..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/SWTUtils.java
+++ /dev/null
@@ -1,1032 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.ScrolledComposite;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.ControlListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.List;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * This utility class provides convenience methods in creating controls on
- * preference pages.
- *
- * @author mengbo
- */
-public class SWTUtils {
- // Defaults of controls
- private static final int DEFAULT_BUTTON_WIDTH = 70;
-
- private static final int DEFAULT_COMBO_WIDTH = 100;
-
- private static final int DEFAULT_TEXTBOX_WIDTH = 100;
-
- private static final int DEFAULT_RADIO_FILL = GridData.HORIZONTAL_ALIGN_BEGINNING
- | GridData.VERTICAL_ALIGN_CENTER;
-
- /**
- * Creates a new checkbox and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the checkbox
- * @return the new checkbox
- */
- public static Button createCheckBox(Composite parent) {
- return createCheckBox(parent, null, 1, 0);
- }
-
- /**
- * Creates a new checkbox and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the checkbox
- * @param label
- * the string to set into the checkbox
- * @param numColumns
- * the number of columns the new checkbox is to occupy
- * @return the new checkbox
- */
- public static Button createCheckBox(Composite parent, String label,
- int numColumns) {
- return createCheckBox(parent, label, numColumns, 0);
- }
-
- /**
- * Creates a new checkbox and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the checkbox
- * @param label
- * the string to set into the checkbox
- * @param numColumns
- * the number of columns the new checkbox is to occupy
- * @param indent
- * the number of pixels to indent from the left
- * @return the new checkbox
- */
- public static Button createCheckBox(Composite parent, String label,
- int numColumns, int indent) {
- Button button = new Button(parent, SWT.CHECK | SWT.LEFT);
- if (label == null) {
- button.setAlignment(SWT.CENTER);
- }
- GridData data = new GridData(GridData.FILL);
- data.horizontalSpan = numColumns;
- data.horizontalIndent = indent;
- button.setLayoutData(data);
- if (label != null) {
- button.setText(label);
- }
- return button;
- }
-
- /**
- * Creates a combo box and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the combo
- * @param items
- * the items in the combo
- * @param numColumns
- * the number of columns the new combo is to occupy
- * @return the new combo box
- */
- public static Combo createCombo(Composite parent, String[] items,
- int numColumns) {
- return createCombo(parent, items, numColumns, DEFAULT_COMBO_WIDTH);
- }
-
- /**
- * Creates a combo box and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the combo
- * @param tokenString
- * a tokenized string that will be split into the fields.
- * @param numColumns
- * the number of columns the new combo is to occupy
- * @return the new combo box
- */
- public static Combo createCombo(Composite parent, String tokenString,
- int numColumns) {
- return createCombo(parent, getTokenNames(tokenString), numColumns,
- DEFAULT_COMBO_WIDTH);
- }
-
- /**
- * Creates a combo box and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the combo
- * @param tokenString
- * a tokenized string that will be split into the fields.
- * @param numColumns
- * the number of columns the new combo is to occupy
- * @param minWidth
- * minimum width of combo box in pixels
- * @return the new combo box
- */
- public static Combo createCombo(Composite parent, String tokenString,
- int numColumns, int minWidth) {
- return createCombo(parent, getTokenNames(tokenString), numColumns,
- minWidth);
- }
-
- /**
- * Creates a combo box and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the combo
- * @param items
- * the items in the combo
- * @param numColumns
- * the number of columns the new combo is to occupy
- * @param minWidth
- * minimum width of combo box in pixels
- * @return the new combo box
- */
- public static Combo createCombo(Composite parent, String[] items,
- int numColumns, int minWidth) {
- return createCombo(parent, items, numColumns, minWidth, false);
- }
-
- /**
- * Creates a combo box and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the combo
- * @param tokenString
- * @param numColumns
- * the number of columns the new combo is to occupy
- * @param minWidth
- * minimum width of combo box in pixels
- * @param editable
- * whether the items in the combo is editable
- * @return the new combo box
- */
- public static Combo createCombo(Composite parent, String tokenString,
- int numColumns, int minWidth, boolean editable) {
- return createCombo(parent, getTokenNames(tokenString), numColumns,
- minWidth, editable);
- }
-
- /**
- * Creates a combo box and sets the default layout data.
- *
- * @param parent
- * the composite in which to create the combo
- * @param items
- * the items in the combo
- * @param numColumns
- * the number of columns the new combo is to occupy
- * @param minWidth
- * minimum width of combo box in pixels
- * @param editable
- * whether the items in the combo is editable
- * @return the new combo box
- */
- public static Combo createCombo(Composite parent, String[] items,
- int numColumns, int minWidth, boolean editable) {
- Combo combo;
- GridData data;
- if (editable) {
- combo = new Combo(parent, SWT.DROP_DOWN);
- data = new GridData(GridData.FILL_HORIZONTAL);
- } else {
- combo = new Combo(parent, SWT.DROP_DOWN | SWT.READ_ONLY);
- data = new GridData(GridData.FILL);
- }
- data.horizontalSpan = numColumns;
- data.widthHint = minWidth;
- combo.setLayoutData(data);
- combo.setItems(items);
- return combo;
- }
-
- /**
- * Creates composite control and sets the default layout data.
- *
- * @param parent
- * the parent of the new composite
- * @param numColumns
- * the number of columns for the new composite
- * @return the newly-created coposite
- */
- public static Composite createComposite(Composite parent, int numColumns) {
- return createComposite(parent, numColumns, -1, -1,
- GridData.FILL_HORIZONTAL, -1, -1, -1);
- }
-
- /**
- * Creates composite control and sets the default layout data.
- *
- * @param parent
- * the parent of the new composite
- * @param numColumns
- * the number of columns for the new composite
- * @param verticalSpacing
- * the spacing between rows.
- * @param horizontalSpan
- * the span for this new composite over the original composite.
- * @return the newly-created coposite
- */
- public static Composite createComposite(Composite parent, int numColumns,
- int verticalSpacing, int horizontalSpan) {
- return createComposite(parent, numColumns, verticalSpacing,
- horizontalSpan, GridData.FILL_HORIZONTAL, -1, -1, -1);
- }
-
- /**
- * Creates composite control and sets the default layout data.
- *
- * @param parent
- * the parent of the new composite
- * @param numColumns
- * the number of columns for the new composite
- * @param verticalSpacing
- * the spacing between rows.
- * @param horizontalSpan
- * the span for this new composite over the original composite.
- * @param gridDataFill
- * the fill to use for this composite.
- * @return the newly-created coposite
- */
- public static Composite createComposite(Composite parent, int numColumns,
- int verticalSpacing, int horizontalSpan, int gridDataFill) {
- return createComposite(parent, numColumns, verticalSpacing,
- horizontalSpan, gridDataFill, -1, -1, -1);
- }
-
- /**
- * Creates composite control and sets the default layout data.
- *
- * @param parent
- * the parent of the new composite
- * @param numColumns
- * the number of columns for the new composite
- * @param verticalSpacing
- * the spacing between rows.
- * @param horizontalSpan
- * the span for this new composite over the original composite.
- * @param gridDataFill
- * the fill to use for this composite.
- * @param horizontalSpacing
- * the spacing between objects.
- * @param marginWidth
- * the spacing at start and end of composite.
- * @param marginHeight
- * the spacing above and below composite.
- * @return the newly-created coposite
- */
- public static Composite createComposite(Composite parent, int numColumns,
- int verticalSpacing, int horizontalSpan, int gridDataFill,
- int horizontalSpacing, int marginWidth, int marginHeight) {
- Composite composite = new Composite(parent, SWT.NULL);
- GridLayout layout = new GridLayout();
- layout.numColumns = numColumns;
- if (verticalSpacing >= 0) {
- layout.verticalSpacing = verticalSpacing;
- }
- if (horizontalSpacing >= 0) {
- layout.horizontalSpacing = horizontalSpacing;
- }
- if (marginWidth >= 0) {
- layout.marginWidth = marginWidth;
- }
- if (marginHeight >= 0) {
- layout.marginHeight = marginHeight;
- }
- composite.setLayout(layout);
- GridData gd = new GridData(gridDataFill);
- if (horizontalSpan > 0) {
- gd.horizontalSpan = horizontalSpan;
- }
- composite.setLayoutData(gd);
-
- return composite;
- }
-
- /**
- * Utility method that creates a group and sets the default layout data.
- *
- * @param parent
- * the parent for the new group
- * @param title
- * the label for the new group
- * @param numColumns
- * the number of columns for the new group
- * @return the newly created group
- */
- public static Group createGroup(Composite parent, String title,
- int numColumns) {
- return createGroup(parent, title, numColumns, -1,
- GridData.FILL_HORIZONTAL);
- }
-
- /**
- * Utility method that creates a group and sets the default layout data.
- *
- * @param parent
- * the parent for the new group
- * @param title
- * the label for the new group
- * @param numColumns
- * the number of columns for the new group
- * @param horizontalSpan
- * the number of columns this group should span on the parent
- * composite.
- * @param gridDataFill
- * the fill style of the new group -- set to for filling just
- * around the object: GridData.BEGINNING | GridData.CENTER
- * @return the newly created group
- */
- public static Group createGroup(Composite parent, String title,
- int numColumns, int horizontalSpan, int gridDataFill) {
- Group group = new Group(parent, SWT.SHADOW_ETCHED_IN);
- GridLayout layout = new GridLayout();
- layout.numColumns = numColumns;
- group.setLayout(layout);
- GridData data = new GridData(gridDataFill);
-
- if (horizontalSpan > 0) {
- data.horizontalSpan = horizontalSpan;
- }
- group.setLayoutData(data);
- group.setText(title);
- return group;
- }
-
- /**
- * Utility method that creates a label instance and sets the default layout
- * data.
- *
- * @param parent
- * the parent for the new label
- * @param text
- * the text for the new label
- * @param numColumns
- * the number of columns for the new composite
- * @return the new label
- */
- public static Label createLabel(Composite parent, String text,
- int numColumns) {
- return createLabel(parent, text, numColumns, 0);
- }
-
- /**
- * Utility method that creates a label instance and sets the default layout
- * data.
- *
- * @param parent
- * the parent for the new label
- * @param text
- * the text for the new label
- * @param numColumns
- * the number of columns for the new composite
- * @param indent
- * number of pixels to indent from the left
- * @return the new label
- */
- public static Label createLabel(Composite parent, String text,
- int numColumns, int indent) {
- Label label = new Label(parent, SWT.LEFT);
- GridData data = new GridData();
- data.horizontalSpan = numColumns;
- data.horizontalAlignment = GridData.FILL;
- data.horizontalIndent = indent;
- label.setLayoutData(data);
- label.setText(text);
- return label;
- }
-
- /**
- * Create a image label for sticking in a composite. The backgroud color is
- * optional. Because images can have "transparent" natures, you might want
- * to say the background is something other than the defaults composites
- * background.
- *
- * NOTE: the caller is responsible for cleanup of the image and color
- * objects.
- *
- * @param parent
- * the parent for the new label
- * @param theImage
- * the image for the new label
- * @param numColumns
- * the number of columns for the new composite
- * @param background
- * pass null to use the composites background.
- * @return the new label
- */
- public static Label createLabelImage(Composite parent, Image theImage,
- int numColumns, Color background) {
- Label label = new Label(parent, SWT.LEFT);
- GridData data = new GridData();
- data.horizontalSpan = numColumns;
- data.horizontalAlignment = GridData.FILL;
- label.setLayoutData(data);
- if (background != null) {
- label.setBackground(background);
- }
- label.setImage(theImage);
- return label;
- }
-
- /**
- * Utility method that creates a push button instance and sets the default
- * layout data.
- *
- * @param parent
- * the parent for the new button
- * @param label
- * the label for the new button
- * @return the newly-created button
- */
- public static Button createPushButton(Composite parent, String label) {
- return createPushButton(parent, label, DEFAULT_BUTTON_WIDTH);
- }
-
- /**
- * Utility method that creates a push button instance and sets the default
- * layout data.
- *
- * @param parent
- * the parent for the new button
- * @param label
- * the label for the new button
- * @param widthHint
- * use this width for the button.
- * @return the newly-created button
- */
- public static Button createPushButton(Composite parent, String label,
- int widthHint) {
- Button button = new Button(parent, SWT.PUSH);
- GridData data = new GridData();
- data.horizontalAlignment = GridData.FILL_HORIZONTAL;
- data.widthHint = widthHint;
- button.setLayoutData(data);
- button.setText(label);
- return button;
- }
-
- /**
- * Utility method that creates a push button instance and sets the default
- * layout data.
- *
- * @param parent
- * the parent for the new button
- * @param theImage
- * the label for the new button
- * @param widthHint
- * use this width for the button.
- * @return the newly-created button
- */
- public static Button createPushButton(Composite parent, Image theImage,
- int widthHint) {
- Button button = new Button(parent, SWT.PUSH);
- GridData data = new GridData();
- data.horizontalAlignment = GridData.FILL_HORIZONTAL;
- data.widthHint = widthHint;
- button.setLayoutData(data);
- button.setImage(theImage);
- button.setAlignment(SWT.CENTER);
- return button;
- }
-
- /**
- * Utility method that creates a radio button instance and sets the default
- * layout data.
- *
- * @param parent
- * the parent for the new button
- * @param label
- * the label for the new button
- * @return the newly-created button
- */
- public static Button createRadioButton(Composite parent, String label) {
- return createRadioButton(parent, label, DEFAULT_RADIO_FILL);
- }
-
- /**
- * Utility method that creates a radio button instance and sets the default
- * layout data.
- *
- * @param parent
- * the parent for the new button
- * @param label
- * the label for the new button
- * @param gridDataFill
- * @return the newly-created button
- */
- public static Button createRadioButton(Composite parent, String label,
- int gridDataFill) {
- return createRadioButton(parent, label, gridDataFill, 1);
- }
-
- /**
- * Utility method that creates a radio button instance and sets the default
- * layout data.
- *
- * @param parent
- * the parent for the new button
- * @param label
- * the label for the new button
- * @param gridDataFill
- * @param horizontalSpan
- * number of columns occupied by button
- * @return the newly-created button
- */
- public static Button createRadioButton(Composite parent, String label,
- int gridDataFill, int horizontalSpan) {
- Button button = new Button(parent, SWT.RADIO | SWT.LEFT);
- GridData data = new GridData(gridDataFill);
- data.horizontalSpan = horizontalSpan;
- button.setLayoutData(data);
- button.setText(label);
- return button;
- }
-
- /**
- * Utility method that creates an empty line
- *
- * @param parent
- * the parent for the new label
- * @param numColumns
- * the number of columns for the new composite
- */
- public static void createSpacer(Composite parent, int numColumns) {
- createSpacer(parent, numColumns, 0);
- }
-
- /**
- * Utility method that creates an empty line
- *
- * @param parent
- * the parent for the new label
- * @param numColumns
- * the number of columns for the new composite
- * @param minWidth
- * minimum width of spacer
- */
- public static void createSpacer(Composite parent, int numColumns,
- int minWidth) {
- Label label = new Label(parent, SWT.NONE);
- GridData data = new GridData();
- data.horizontalSpan = numColumns;
- data.widthHint = minWidth;
- label.setLayoutData(data);
- }
-
- /**
- * Create a separator that goes across the entire page
- *
- * @param parent
- * the parent for the new label
- * @param numColumns
- * the number of columns for the new composite
- */
- public static void createSeparator(Composite parent, int numColumns) {
- Label separator = new Label(parent, SWT.SEPARATOR | SWT.HORIZONTAL);
- GridData data = new GridData();
- data.horizontalSpan = numColumns;
- data.horizontalAlignment = GridData.FILL;
- data.grabExcessHorizontalSpace = true;
- separator.setLayoutData(data);
- }
-
- /**
- * Create a table from a Composite object
- *
- * @param composite
- * the Composite this table is to be created from
- * @param tokenString
- * A string containing names of the columns in the order that
- * they should be displayed in the table with each column
- * separated by a comma(',') or null if no columns need to be
- * created.
- * @param tablewidth
- * the minimum width for the table
- * @param tableHeight
- * @return the new table
- */
- public static Table createTable(Composite composite, String tokenString,
- int tablewidth, int tableHeight) {
- // SINGLE, MULTI, CHECK, FULL_SELECTION, HIDE_SELECTION
- int style = SWT.V_SCROLL | SWT.H_SCROLL | SWT.SINGLE | SWT.BORDER
- | SWT.FULL_SELECTION;
- Table table = new Table(composite, style);
- GridData gridData = new GridData(GridData.FILL_BOTH);
- if (tablewidth > 0) {
- gridData.widthHint = tablewidth;
- }
- if (tableHeight > 0) {
- gridData.heightHint = tableHeight;
- }
- table.setLayoutData(gridData);
- table.setHeaderVisible(true);
- table.setLinesVisible(true);
-
- if (tokenString != null) {
- String[] columns = getTokenNames(tokenString);
-
- int columnSize = 50;
- if (tablewidth > 0) {
- columnSize = tablewidth / columns.length;
- }
- for (int ii = 0; ii < columns.length; ii++) {
- /*(void)*/ createTableColumn(table, columns[ii], ii,
- columnSize);
- }
- }
-
- return table;
- }
-
- /**
- * Create a table from a Composite object
- *
- * @param composite
- * the Composite this table is to be created from
- * @param columns
- * A string array containing names of the columns in the order
- * that they should be displayed in the table, or null if no
- * columns need to be created.
- * @param tablewidth
- * the minimum width for the table
- * @return the new table
- */
- public static Table createTable(Composite composite, String[] columns,
- int tablewidth) {
- int style = SWT.BORDER | SWT.FULL_SELECTION;
- Table table = new Table(composite, style);
- GridData gridData = new GridData(GridData.FILL_BOTH);
- gridData.widthHint = tablewidth;
- table.setLayoutData(gridData);
- table.setHeaderVisible(true);
- table.setLinesVisible(true);
-
- if (columns != null) {
- for (int i = 0; i < columns.length; i++) {
- /*(void)*/ createTableColumn(table, columns[i], i);
- }
- }
-
- return table;
- }
-
- /**
- * Create a table column
- *
- * @param parent
- * the table that contains this column
- * @param name
- * name of this column
- * @param index
- * the column within the parent composite
- * @return the new table column
- */
- public static TableColumn createTableColumn(Table parent, String name,
- int index) {
- TableColumn column = new TableColumn(parent, SWT.LEFT, index);
- column.setText(name);
- return column;
- }
-
- /**
- * Create a table column with the image and the width of the column is set
- * to the image width.
- *
- * @param parent
- * the table that contains this column
- * @param image
- * iamge for this column
- * @param index
- * @return the new table column
- */
- public static TableColumn createTableColumn(Table parent, Image image,
- int index) {
- TableColumn column = new TableColumn(parent, SWT.LEFT, index);
- column.setImage(image);
- column.setWidth(image.getBounds().width);
- column.setResizable(false);
- return column;
- }
-
- /**
- * Create a table column
- *
- * @param parent
- * the table that contains this column
- * @param name
- * name of this column
- * @param index
- * the column within the parent composite
- * @param tablewidth
- * the width for the column
- * @return the new table column
- */
- public static TableColumn createTableColumn(Table parent, String name,
- int index, int tablewidth) {
- TableColumn column = new TableColumn(parent, SWT.LEFT, index);
- column.setText(name);
- column.setWidth(tablewidth);
- return column;
- }
-
- /**
- * Create a text field
- *
- * @param parent
- * the parent of the new text field
- * @return the new text field
- */
- public static Text createTextBox(Composite parent) {
- return createTextBox(parent, 1, DEFAULT_TEXTBOX_WIDTH);
- }
-
- /**
- * Create a text field
- *
- * @param parent
- * the parent of the new text field
- * @param text
- * @return the new text field
- */
- public static Text createTextBox(Composite parent, String text) {
- Text textbox = createTextBox(parent, 1);
- textbox.setText(text);
- return textbox;
- }
-
- /**
- * Create a text field
- *
- * @param parent
- * the parent of the new text field
- * @param numColumns
- * number of columns the text box is to occupy
- * @return the new text field
- */
- public static Text createTextBox(Composite parent, int numColumns) {
- return createTextBox(parent, numColumns, DEFAULT_TEXTBOX_WIDTH);
- }
-
- /**
- * Create a text field
- *
- * @param parent
- * the parent of the new text field
- * @param numColumns
- * number of columns the text box is to occupy
- * @param minWidth
- * minimum width of text field
- * @return the new text field
- */
- public static Text createTextBox(Composite parent, int numColumns,
- int minWidth) {
- return createTextBox(parent, numColumns, minWidth, SWT.DEFAULT);
- }
-
- /**
- * Create a text field
- *
- * @param parent
- * the parent of the new text field
- * @param numColumns
- * number of columns the text box is to occupy
- * @param minWidth
- * minimum width of text field
- * @param minHeight
- * @return the new text field
- */
- public static Text createTextBox(Composite parent, int numColumns,
- int minWidth, int minHeight) {
- Text text = new Text(parent, SWT.SINGLE | SWT.BORDER);
- GridData data = new GridData(GridData.FILL);
- data.horizontalSpan = numColumns;
- data.widthHint = minWidth;
- data.heightHint = minHeight;
- text.setLayoutData(data);
- return text;
- }
-
- /**
- * Create a text field that is scrollable.
- *
- * @param parent
- * the parent of the new text field
- * @param numColumns
- * number of columns the text box is to occupy
- * @param minWidth
- * minimum width of text field
- * @param minHeight
- * minimum height of text field
- * @return the new text field
- */
- public static Text createTextBoxScrollable(Composite parent,
- int numColumns, int minWidth, int minHeight) {
- Text text = new Text(parent, SWT.BORDER | SWT.V_SCROLL | SWT.WRAP);
- GridData data = new GridData((minWidth > 0) ? GridData.FILL
- : GridData.FILL_HORIZONTAL);
- data.horizontalSpan = numColumns;
- if (minWidth > 0) {
- data.widthHint = minWidth;
- }
- data.heightHint = minHeight;
-
- text.setLayoutData(data);
- return text;
- }
-
- /**
- * Create a list with the items listed in it.
- *
- * @param parent
- * the parent of the new text field
- * @param numColumns
- * number of columns the text box is to occupy
- * @param minWidth
- * minimum width of text field
- * @param minHeight
- * minimum height of text field
- * @param items
- * the items in the list
- * @return the new list
- */
- public static List createList(Composite parent, int numColumns,
- int minWidth, int minHeight, String[] items) {
- return createList(parent, numColumns, minWidth, minHeight, items, true);
- }
-
- /**
- * Create a list with the items listed in it.
- *
- * @param parent
- * the parent of the new list box
- * @param numColumns
- * number of columns the list box is to occupy
- * @param minWidth
- * minimum width of list box
- * @param minHeight
- * minimum height of list box
- * @param items
- * the items in the list
- * @param bmulti
- * whether multiple item selection is allowed
- * @return the new list
- */
- public static List createList(Composite parent, int numColumns,
- int minWidth, int minHeight, String[] items, boolean bmulti) {
- return createList(parent, numColumns, minWidth, minHeight, items,
- bmulti, 1);
- }
-
- /**
- * Create a list with the items listed in it.
- *
- * @param parent
- * the parent of the new list box
- * @param numColumns
- * number of columns the list box is to occupy
- * @param minWidth
- * minimum width of list box
- * @param minHeight
- * minimum height of list box
- * @param items
- * the items in the list
- * @param bmulti
- * whether multiple item selection is allowed
- * @param verticalSpan
- * the number of rows the list box is to occupy
- * @return the new list
- */
- public static List createList(Composite parent, int numColumns,
- int minWidth, int minHeight, String[] items, boolean bmulti,
- int verticalSpan) {
- List theList;
- if (bmulti)
- theList = new List(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.MULTI
- | SWT.BORDER);
- else
- theList = new List(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.SINGLE
- | SWT.BORDER);
- GridData data = new GridData(GridData.FILL_HORIZONTAL
- | GridData.VERTICAL_ALIGN_BEGINNING | GridData.FILL_VERTICAL);
- data.horizontalSpan = numColumns;
- data.widthHint = minWidth;
- data.heightHint = minHeight;
- data.verticalSpan = verticalSpan;
- theList.setLayoutData(data);
- if (items != null) {
- theList.setItems(items);
- }
-
- return theList;
- }
-
- /**
- * Computes the size of the composite inside the scroll area so that scroll
- * bars show up correctly.
- *
- * @param parentComposite
- * @param childComposite
- */
- public static void computeScrollArea(ScrolledComposite parentComposite,
- Composite childComposite) {
- // Point pt = childComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT);
- // childComposite.setSize(pt);
-
- Point pt = childComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT);
- parentComposite.setExpandHorizontal(true);
- parentComposite.setExpandVertical(true);
- parentComposite.setMinWidth(pt.x);
- parentComposite.setMinHeight(pt.y);
- }
-
- /**
- * Builds an array of strings from a token list string. The token separator
- * is a comma (',').
- *
- * @param tokenString
- * @return String[]
- */
- public static String[] getTokenNames(String tokenString) {
- if (tokenString == null) {
- return new String[0];
- }
-
- return tokenString.split(","); //$NON-NLS-1$
- }
-
- /**
- * Enable/Disable the widget and all its children.
- *
- * @param widget
- * The widget to be enabled/disabled.
- * @param state
- * Enable widget if true. Disable otherwise.
- */
- public static void setWidgetState(Control widget, boolean state) {
- if (widget instanceof Composite) {
- Control widgets[] = ((Composite) widget).getChildren();
- for (int i = 0; i < widgets.length; i++) {
- setWidgetState(widgets[i], state);
- }
- }
- widget.setEnabled(state);
- }
-
- // ---------------------------------------------------------------------------
- // following is for workaround eclipse problem
- // https://bugs.eclipse.org/bugs/show_bug.cgi?id=40281
- static ControlListener _listener = new ControlListener() {
- public void controlResized(ControlEvent e) {
- final Composite c = (Composite) e.widget;
- c.getDisplay().asyncExec(new Runnable() {
- public void run() {
- if (!c.isDisposed()) {
- // XXX: in 3.0, should use c.layout(true)
- // in 3.1, should use c.layout(true, true)
- c.layout(true);
- c.redraw();
- }
- }
- });
- }
-
- public void controlMoved(ControlEvent e) {
- // nothing for move
- }
- };
-
- /**
- * @param composite
- */
- public static void workaroundResize(Composite composite) {
- composite.addControlListener(_listener);
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/TextWindow.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/TextWindow.java
deleted file mode 100644
index b829cd289..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/TextWindow.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.TextViewer;
-import org.eclipse.jface.window.ApplicationWindow;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Brings up a simple text window.
- *
- * @author mengbo
- */
-public class TextWindow extends ApplicationWindow {
- private String _content;
-
- private Point _size = new Point(600, 600);
-
- /**
- * empty for passing from events.
- * @param parentShell
- * @param content
- */
- public TextWindow(Shell parentShell, String content) {
- super(parentShell);
- // addStatusLine();
- _content = content;
- // addCoolBar(SWT.BORDER);
- // addMenuBar();
- // addToolBar(SWT.BORDER);
- }
-
- protected Control createContents(Composite parent) {
- // _text = new Text(parent, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
- // _text.setText(_content);
- // return _text;
-
- TextViewer tview = new TextViewer(parent, SWT.BORDER | SWT.V_SCROLL
- | SWT.H_SCROLL);
- tview.setDocument(new Document(_content));
-
- return tview.getControl();
- }
-
-
- protected Point getInitialSize() {
- return _size;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/messages.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/messages.properties
deleted file mode 100644
index 6291ec040..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/messages.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-IntroductionSection_noIntroDescription=No Introduction page configuration found in the plugin.xml
-IntroductionSection_noIntroTitle=No Introduction
-BrowserWindow_loading=<b>Loading...</b>
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/logging/Logger.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/logging/Logger.java
deleted file mode 100644
index 3b71b83bc..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/logging/Logger.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.logging;
-
-import java.text.MessageFormat;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.ILog;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * A resource bundle driven logger
- *
- */
-public class Logger {
- private ResourceBundle resourceBundle;
-
- private ILog log;
-
- private String bundleId;
-
- /**
- * @param bundle
- * @param resourceBundle
- */
- public Logger(Bundle bundle, ResourceBundle resourceBundle) {
- log = Platform.getLog(bundle);
- this.resourceBundle = resourceBundle;
- bundleId = bundle.getSymbolicName();
- if (resourceBundle == null) {
- IStatus status = new Status(IStatus.ERROR, bundleId, IStatus.OK,
- "The resource Bundle for logger could not be null!", null); //$NON-NLS-1$
- log.log(status);
- }
- }
- /**
- * @param key
- * @param arg0
- */
- public void info(String key, String arg0) {
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- String message = formatter.format(args);
- IStatus status = new Status(IStatus.INFO, bundleId, IStatus.OK,
- message, null);
- log.log(status);
- }
-
- /**
- * @param message
- */
- public void info(String message) {
- IStatus status = new Status(IStatus.INFO, bundleId, IStatus.OK,
- message, null);
- log.log(status);
- }
-
- /**
- * @param key
- * @param e
- */
- public void info(String key, Throwable e) {
- String message = getString(key);
- IStatus status = new Status(IStatus.INFO, bundleId, IStatus.OK,
- message, e);
- log.log(status);
- }
-
- /**
- * @param key
- * @param arg0
- * @param e
- */
- public void info(String key, String arg0, Throwable e) {
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- String message = formatter.format(args);
- IStatus status = new Status(IStatus.INFO, bundleId, IStatus.OK,
- message, null);
- log.log(status);
- }
-
- /**
- * @param key
- * @param arg0
- * @param arg1
- * @param e
- */
- public void info(String key, String arg0, String arg1, Throwable e) {
- Object[] args = new Object[1];
- args[0] = arg0;
- args[1] = arg1;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- String message = formatter.format(args);
- IStatus status = new Status(IStatus.INFO, bundleId, IStatus.OK,
- message, e);
- log.log(status);
- }
-
- /**
- * @param key
- */
- public void error(String key) {
-
- String message = getString(key);
- IStatus status = new Status(IStatus.ERROR, bundleId, IStatus.OK,
- message, null);
- log.log(status);
- }
-
- /**
- * @param e
- */
- public void error(Throwable e) {
- IStatus status = new Status(IStatus.ERROR, bundleId, IStatus.OK, "", e); //$NON-NLS-1$
- log.log(status);
- }
-
- /**
- * @param key
- * @param e
- */
- public void error(String key, Throwable e) {
- String message = getString(key);
- IStatus status = new Status(IStatus.ERROR, bundleId, IStatus.OK,
- message, e);
- log.log(status);
- }
-
- /**
- * @param key
- * @param arg0
- */
- public void error(String key, String arg0) {
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- String message = formatter.format(args);
- IStatus status = new Status(IStatus.ERROR, bundleId, IStatus.OK,
- message, null);
- log.log(status);
- }
-
- /**
- * @param key
- * @param arg
- * @param e
- */
- public void error(String key, String arg, Throwable e) {
- Object[] args = new Object[1];
- args[0] = arg;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- String message = formatter.format(args);
- IStatus status = new Status(IStatus.ERROR, bundleId, IStatus.OK,
- message, e);
- log.log(status);
- }
-
- /**
- * @param key
- * @param arg0
- * @param arg1
- * @param e
- */
- public void error(String key, String arg0, String arg1, Throwable e) {
- Object[] args = new Object[1];
- args[0] = arg0;
- args[1] = arg1;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- String message = formatter.format(args);
- IStatus status = new Status(IStatus.ERROR, bundleId, IStatus.OK,
- message, e);
- log.log(status);
- }
-
- /**
- * @param key
- * @return the resource for the key, or an error message if
- * resourceBundle.getString(key) throws an Exception
- */
- private String getString(String key)
- {
- try
- {
- return resourceBundle.getString(key);
- }
- // suppress non-error exceptions so that the logging operation
- // itself (usually called in response to an exception) does not
- // throw a new exception
- catch(Exception e)
- {
- return "!!missing resource: " + key + "!!"; //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.java
deleted file mode 100644
index 820224538..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.preferences;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * @author cbateman
- *
- */
-public class OrderingMessages extends NLS
-{
- private static final String BUNDLE_NAME= "org.eclipse.jst.jsf.common.ui.internal.preferences.OrderingMessages";//$NON-NLS-1$
-
- private OrderingMessages() {
- // Do not instantiate
- }
-
- /**
- * see OrderMessages.properties
- */
- public static String Ordering_Up;
- /**
- * see OrderMessages.properties
- */
- public static String Ordering_Down;
-
- static {
- NLS.initializeMessages(BUNDLE_NAME, OrderingMessages.class);
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.properties b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.properties
deleted file mode 100644
index 282ee2320..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/OrderingMessages.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2008 Oracle Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Oracle Corporation - initial API and implementation
-###############################################################################
-Ordering_Up=Up
-Ordering_Down=Down \ No newline at end of file
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/StrategyOrderingPanel.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/StrategyOrderingPanel.java
deleted file mode 100644
index c438b960d..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/preferences/StrategyOrderingPanel.java
+++ /dev/null
@@ -1,322 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.preferences;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTableViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jst.jsf.common.internal.policy.OrderedListProvider;
-import org.eclipse.jst.jsf.common.internal.policy.OrderedListProvider.OrderableObject;
-import org.eclipse.jst.jsf.common.ui.internal.utils.PixelConverter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-
-/**
- * Creates a composite with a checked table viewer and up/down buttons that
- * allow ordering and enablement of a list of items in the table.
- *
- * Largely derived from
- * org.eclipse.jdt.internal.ui.preferences.CodeAssistAdvancedConfigurationBlock
- *
- * @author cbateman
- *
- */
-public class StrategyOrderingPanel
-{
- private CheckboxTableViewer _viewer;
- private Button fUpButton;
- private Button fDownButton;
-
- private final OrderedListProvider _provider;
- private final ITableLabelProvider _labelProvider;
- private final String _title;
-
- /**
- * @param provider
- * @param labelProvider
- * @param title
- */
- public StrategyOrderingPanel(final OrderedListProvider provider,
- final ITableLabelProvider labelProvider, final String title)
- {
- _provider = provider;
- _labelProvider = labelProvider;
- _title = title;
- }
-
- /**
- * @param parent
- * @return the control
- */
- public Control createContents(final Composite parent)
- {
- final Composite panel = new Composite(parent, SWT.NONE);
- final GridLayout layout = new GridLayout(2, false);
- layout.marginWidth = 0;
- layout.marginHeight = 0;
- panel.setLayout(layout);
-
- final Label titleLabel = new Label(panel, SWT.NONE);
- titleLabel.setText(_title);
- final GridData gridData = new GridData(GridData.FILL,
- GridData.BEGINNING, true, false, 2, 1);
- titleLabel.setLayoutData(gridData);
-
- createTableViewer(panel);
- createButtonList(panel);
-
- return panel;
- }
-
- /**
- * Refresh the UI from model. Must not be called before createContents
- */
- public void refresh()
- {
- _provider.resetOrderedObjects();
- _viewer.refresh();
- for (final OrderableObject object : _provider.getOrderedObjects())
- {
- _viewer.setChecked(object, object.isEnabled());
- }
- }
-
- private void createTableViewer(final Composite parent)
- {
- _viewer = CheckboxTableViewer.newCheckList(parent, SWT.SINGLE
- | SWT.BORDER);
- final Table table = _viewer.getTable();
- table.setHeaderVisible(false);
- table.setLinesVisible(false);
- table.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING,
- true, false, 1, 1));
-
- final TableColumn nameColumn = new TableColumn(table, SWT.NONE);
- // nameColumn
- // .setText(PreferencesMessages.CodeAssistAdvancedConfigurationBlock_separate_table_category_column_title);
- nameColumn.setResizable(false);
-
- _viewer.setContentProvider(new ContentProvider());
-
- _viewer.setLabelProvider(_labelProvider);
- _viewer.setInput(_provider);
-
- final int ICON_AND_CHECKBOX_WITH = 50;
- final int HEADER_MARGIN = 20;
- int minNameWidth = computeWidth(table, nameColumn.getText())
- + HEADER_MARGIN;
- for (int i = 0; i < _provider.getOrderedObjects().size(); i++)
- {
- minNameWidth = Math.max(minNameWidth, computeWidth(table,
- _labelProvider.getColumnText(_provider.getOrderedObjects()
- .get(i), 0))
- + ICON_AND_CHECKBOX_WITH);
- }
-
- nameColumn.setWidth(minNameWidth);
-
- _viewer.addCheckStateListener(new ICheckStateListener()
- {
- public void checkStateChanged(final CheckStateChangedEvent event)
- {
- final boolean checked = event.getChecked();
- final OrderableObject element = (OrderableObject) event
- .getElement();
- element.setEnabled(checked);
- }
- });
-
- table.addSelectionListener(new SelectionAdapter()
- {
- @Override
- public void widgetSelected(final SelectionEvent e)
- {
- handleTableSelection();
- }
- });
-
- }
-
- private void createButtonList(final Composite parent)
- {
- final Composite composite = new Composite(parent, SWT.NONE);
- composite.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING,
- false, false));
-
- final GridLayout layout = new GridLayout();
- layout.marginWidth = 0;
- layout.marginHeight = 0;
- composite.setLayout(layout);
-
- fUpButton = new Button(composite, SWT.PUSH | SWT.CENTER);
- fUpButton.setText(OrderingMessages.Ordering_Up);
- fUpButton.addSelectionListener(new SelectionAdapter()
- {
- @Override
- public void widgetSelected(final SelectionEvent e)
- {
- final int index = getSelectionIndex();
- if (index != -1)
- {
- final OrderableObject object = _provider
- .getOrderedObjects().get(index);
- _provider.moveUp(object);
- _viewer.refresh();
- handleTableSelection();
- }
- }
- });
- fUpButton.setLayoutData(new GridData());
- setButtonDimensionHint(fUpButton);
-
- fDownButton = new Button(composite, SWT.PUSH | SWT.CENTER);
- fDownButton.setText(OrderingMessages.Ordering_Down);
- fDownButton.addSelectionListener(new SelectionAdapter()
- {
- @Override
- public void widgetSelected(final SelectionEvent e)
- {
- final int index = getSelectionIndex();
- if (index != -1)
- {
- final OrderableObject object = _provider
- .getOrderedObjects().get(index);
- _provider.moveDown(object);
- _viewer.refresh();
- handleTableSelection();
- }
- }
- });
- fDownButton.setLayoutData(new GridData());
- setButtonDimensionHint(fDownButton);
- }
-
- private int computeWidth(final Control control, final String name)
- {
- if (name == null)
- {
- return 0;
- }
- final GC gc = new GC(control);
- try
- {
- gc.setFont(JFaceResources.getDialogFont());
- return gc.stringExtent(name).x + 10;
- }
- finally
- {
- gc.dispose();
- }
- }
-
- private void handleTableSelection()
- {
- final OrderableObject item = getSelectedItem();
- if (item != null)
- {
- final int index = getSelectionIndex();
- fUpButton.setEnabled(index > 0);
- fDownButton
- .setEnabled(index < _provider.getOrderedObjects().size() - 1);
- }
- else
- {
- fUpButton.setEnabled(false);
- fDownButton.setEnabled(false);
- }
- }
-
- private OrderableObject getSelectedItem()
- {
- return (OrderableObject) ((IStructuredSelection) _viewer.getSelection())
- .getFirstElement();
- }
-
- private int getSelectionIndex()
- {
- return _viewer.getTable().getSelectionIndex();
- }
-
- /**
- * Returns a width hint for a button control.
- */
- private static int getButtonWidthHint(final Button button)
- {
- button.setFont(JFaceResources.getDialogFont());
- PixelConverter converter = new PixelConverter(button);
- final int widthHint = converter
- .convertHorizontalDLUsToPixels(IDialogConstants.BUTTON_WIDTH);
- return Math.max(widthHint, button.computeSize(SWT.DEFAULT, SWT.DEFAULT,
- true).x);
- }
-
- /**
- * Sets width and height hint for the button control. <b>Note:</b> This is
- * a NOP if the button's layout data is not an instance of
- * <code>GridData</code>.
- *
- * @param button
- * the button for which to set the dimension hint
- */
- private static void setButtonDimensionHint(final Button button)
- {
- Assert.isNotNull(button);
- final Object gd = button.getLayoutData();
- if (gd instanceof GridData)
- {
- ((GridData) gd).widthHint = getButtonWidthHint(button);
- ((GridData) gd).horizontalAlignment = GridData.FILL;
- }
- }
-
- private static class ContentProvider implements IStructuredContentProvider
- {
-
- public Object[] getElements(final Object inputElement)
- {
- if (inputElement instanceof OrderedListProvider)
- {
- return ((OrderedListProvider) inputElement).getOrderedObjects()
- .toArray();
- }
- return new Object[0];
- }
-
- public void dispose()
- {
- // do nothing
- }
-
- public void inputChanged(final Viewer viewer, final Object oldInput,
- final Object newInput)
- {
- // do nothing
- }
-
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/FavoriteConfigurations.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/FavoriteConfigurations.java
deleted file mode 100644
index aa7744b1c..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/FavoriteConfigurations.java
+++ /dev/null
@@ -1,257 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Properties;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.XMLMemento;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * This provides a means to store common properties for pages.
- *
- * Holds a <code>List</code> of <code>Properties</code> which can be
- * manipulated by the user.
- *
- * @author mengbo
- */
-public class FavoriteConfigurations {
- private static Logger _log = JSFUICommonPlugin
- .getLogger(FavoriteConfigurations.class);
-
- private final static String FAV_EXTENSIONS = ".xml"; //$NON-NLS-1$
-
- private final static String ELEMENT_ROOT = "favorite"; //$NON-NLS-1$
-
- private final static String ELEMENT_CONFIG = "config"; //$NON-NLS-1$
-
- private final static String ELEMENT_NAME = "name"; //$NON-NLS-1$
-
- private final static String ELEMENT_PROPERTY = "property"; //$NON-NLS-1$
-
- private final static String ELEMENT_VALUE = "value"; //$NON-NLS-1$
-
- private Map _favorites;
-
- private IPath _favoriteFile;
-
- private String _favoriteName;
-
- /**
- * Constructor
- *
- * @param plugin
- * used for location of favorite file.
- * @param favoriteName
- * used for name of file and for mapping the properties of this
- * favorite.
- */
- public FavoriteConfigurations(AbstractUIPlugin plugin, String favoriteName) {
- super();
- _favoriteFile = plugin.getStateLocation().append(
- scanFileName(favoriteName) + FAV_EXTENSIONS);
- readFavorites();
- }
-
- /**
- * Returns the favorite entry that is mapped under the given name.
- *
- * @param name
- * the favorite
- * @return <code>Properties</code> config entry for the favorite.
- */
- public Properties getFavorite(String name) {
- return (Properties) _favorites.get(name);
- }
-
- /**
- * Stores the Favorites into the plugin directory.
- */
- public void saveFavorites() {
- FileWriter fw = null;
- try {
- XMLMemento memento = XMLMemento.createWriteRoot(ELEMENT_ROOT);
- for (Iterator it = _favorites.keySet().iterator(); it.hasNext();) {
- String favName = (String) it.next();
- Map props = new HashMap((Properties) _favorites.get(favName));
-
- IMemento config = memento.createChild(ELEMENT_CONFIG);
- config.putString(ELEMENT_NAME, favName);
-
- for (Iterator it1 = props.keySet().iterator(); it1.hasNext();) {
- IMemento entry = config.createChild(ELEMENT_PROPERTY);
- String name = (String) it1.next();
- entry.putString(ELEMENT_NAME, name);
- entry.putString(ELEMENT_VALUE, (String) props.get(name));
- }
- }
- fw = new FileWriter(_favoriteFile.toFile());
- memento.save(fw);
- } catch (Exception ee) {
- // log.FavoriteConfigurations.save.error=Failed to save {0}
- // favorites. File={1}
- _log.info("log.FavoriteConfigurations.save.error", _favoriteName, //$NON-NLS-1$
- _favoriteFile.toOSString(), ee);
- } finally {
- if (fw != null) {
- try {
- fw.close();
- } catch (IOException ee)// NOPMD
- {
- // nothing to do when IOException throwed in closing files.
- }
- }
- }
- }
-
- /**
- * Add the favorite into the internal structure but don't save until
- * saveFavorites() is called.
- *
- * @param name
- * @param config
- */
- public void addFavorite(String name, Properties config) {
- _favorites.put(name, config);
- }
-
- /**
- * Removes the Favorite that is mapped under the given name.
- *
- * @param name
- * the name of the configuration
- */
- public void removeFavorite(String name) {
- _favorites.remove(name);
- }
-
- /**
- * Read the favorites from the disk into the memory structure.
- */
- protected void readFavorites() {
- _favorites = new HashMap();
- FileReader fr = null;
- try {
- try {
- fr = new FileReader(_favoriteFile.toFile());
- } catch (FileNotFoundException ee)// NOPMD
- {
- // no error here since they don't have to have a favorites...
- }
- if (fr != null) {
- XMLMemento memento = XMLMemento.createReadRoot(fr);
- IMemento[] children = memento.getChildren(ELEMENT_CONFIG);
- for (int ii = 0; ii < children.length; ii++) {
- Properties props = new Properties();
- IMemento config = children[ii];
- String name = config.getString(ELEMENT_NAME);
-
- IMemento[] configProperties = config
- .getChildren(ELEMENT_PROPERTY);
- for (int jj = 0; jj < configProperties.length; jj++) {
- IMemento entry = configProperties[jj];
- setProperty(props, entry.getString(ELEMENT_NAME), entry
- .getString(ELEMENT_VALUE));
- }
- _favorites.put(name, props);
- }
- }
- } catch (Exception ee) {
- // log.FavoriteConfigurations.read.error=Failed to save {0}
- // favorites. File={1}
- _log.error("log.FavoriteConfigurations.read.error", _favoriteName, //$NON-NLS-1$
- _favoriteFile.toOSString(), ee);
- } finally {
- if (fr != null) {
- try {
- fr.close();
- } catch (IOException ee)// NOPMD
- {
- // nothing to do when IOException throwed in closing files.
- }
- }
- }
- }
-
- /**
- * Set the value in the properties object.
- *
- * @param props
- * @param name
- * @param value
- */
- private void setProperty(Properties props, String name, String value) {
- if (name != null && value != null) {
- props.setProperty(name, value);
- }
- }
-
- /**
- * Get a list of all the favorites stored in this file.
- *
- * @return list of favorites
- */
- public String[] getFavoritesList() {
- Object[] objs = _favorites.keySet().toArray();
- String[] names = new String[objs.length];
-
- for (int ii = 0; ii < objs.length; ii++) {
- names[ii] = (String) objs[ii];
- }
- Arrays.sort(names);
-
- return names;
- }
-
- /**
- * scan the file name for any bad character that would fail when trying to
- * create the file. We replace bad characters with '_'
- */
- private static String scanFileName(String filename) {
- StringBuffer strBuf = new StringBuffer();
- char[] chars = filename.toCharArray();
-
- for (int ii = 0; ii < chars.length; ii++) {
- switch (chars[ii]) {
- case '&':
- case '\\':
- case '/':
- case ' ':
- case '\t':
- case ':':
- case '.':
- case '\"':
- case '\'':
- case '@':
- strBuf.append('_');
- break;
- default:
- strBuf.append(chars[ii]);
- break;
- }
- }
-
- return strBuf.toString();
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JSFSharedImages.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JSFSharedImages.java
deleted file mode 100644
index 2b67a671e..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JSFSharedImages.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 Oracle Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Oracle Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-/**
- * Constants that can be passed to JSFUICommonPlugin.getImageDescriptor and
- * getImage to obtain common images.
- *
- * @author cbateman
- *
- */
-public interface JSFSharedImages
-{
- /**
- * The icon use for default/unknown tags. Consists of blue open/close
- * angled braces on a neutral background.
- *
- * Size: 16x16
- */
- public final static String DEFAULT_PALETTE_TAG_IMG = "PD_Palette_Default.gif"; //$NON-NLS-1$
-
- /**
- * A yellow cube on a white background. Suitable for representing
- * generic objects and components.
- *
- * Size: 16x16
- */
- public final static String GENERIC_OBJECT_IMG = "object.gif"; //$NON-NLS-1$
-
- /**
- * A generic image suitable for representing JSF validators. Consists of
- * a white box with a blue check mark.
- *
- * Size: 16x16
- */
- public final static String GENERIC_VALIDATOR_IMG = "jsf_validator.gif"; //$NON-NLS-1$
-
- /**
- * A generic image suitable for representing JSF converter. Consists of
- * yellow blob being "converted".
- *
- * Size: 16x16
- */
- public final static String GENERIC_CONVERTER_IMG = "jsf_converter.gif"; //$NON-NLS-1$
-
- /**
- * A generic image suitable for representing a view root. Same as the
- * default image generally associated with f:view.
- *
- * Size: 16x16.
- */
- public static final String GENERIC_VIEWROOT_IMG = "jsf_view.gif"; //$NON-NLS-1$
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JavaModelUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JavaModelUtil.java
deleted file mode 100644
index c4086ed7f..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/JavaModelUtil.java
+++ /dev/null
@@ -1,1032 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.ClasspathContainerInitializer;
-import org.eclipse.jdt.core.Flags;
-import org.eclipse.jdt.core.IClasspathContainer;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IField;
-import org.eclipse.jdt.core.IImportDeclaration;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IMember;
-import org.eclipse.jdt.core.IMethod;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.core.IPackageFragmentRoot;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.ITypeHierarchy;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.Signature;
-import org.eclipse.jdt.core.compiler.CharOperation;
-
-/**
- * Original code is from JDT Utility methods for the Java Model.
- */
-public final class JavaModelUtil {
-
- /**
- * Finds a type by its qualified type name (dot separated).
- *
- * @param jproject
- * The java project to search in
- * @param fullyQualifiedName
- * The fully qualified name (type name with enclosing type names
- * and package (all separated by dots))
- * @return The type found, or null if not existing
- * @throws JavaModelException
- */
- public static IType findType(IJavaProject jproject,
- String fullyQualifiedName) throws JavaModelException {
- // workaround for bug 22883
- IType type = jproject.findType(fullyQualifiedName);
- if (type != null) {
- return type;
- }
- IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots();
- for (int i = 0; i < roots.length; i++) {
- IPackageFragmentRoot root = roots[i];
- type = findType(root, fullyQualifiedName);
- if (type != null && type.exists()) {
- return type;
- }
- }
- return null;
- }
-
- /**
- * Returns <code>true</code> if the given package fragment root is
- * referenced. This means it is own by a different project but is referenced
- * by the root's parent. Returns <code>false</code> if the given root
- * doesn't have an underlying resource.
- * @param root
- * @return true if root is referenced
- */
- public static boolean isReferenced(IPackageFragmentRoot root) {
- IResource resource = root.getResource();
- if (resource != null) {
- IProject jarProject = resource.getProject();
- IProject container = root.getJavaProject().getProject();
- return !container.equals(jarProject);
- }
- return false;
- }
-
- private static IType findType(IPackageFragmentRoot root,
- String fullyQualifiedName) throws JavaModelException {
- IJavaElement[] children = root.getChildren();
- for (int i = 0; i < children.length; i++) {
- IJavaElement element = children[i];
- if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) {
- IPackageFragment pack = (IPackageFragment) element;
- if (!fullyQualifiedName.startsWith(pack.getElementName())) {
- continue;
- }
- IType type = findType(pack, fullyQualifiedName);
- if (type != null && type.exists()) {
- return type;
- }
- }
- }
- return null;
- }
-
- private static IType findType(IPackageFragment pack,
- String fullyQualifiedName) throws JavaModelException {
- ICompilationUnit[] cus = pack.getCompilationUnits();
- for (int i = 0; i < cus.length; i++) {
- ICompilationUnit unit = cus[i];
- IType type = findType(unit, fullyQualifiedName);
- if (type != null && type.exists()) {
- return type;
- }
- }
- return null;
- }
-
- private static IType findType(ICompilationUnit cu, String fullyQualifiedName)
- throws JavaModelException {
- IType[] types = cu.getAllTypes();
- for (int i = 0; i < types.length; i++) {
- IType type = types[i];
- if (getFullyQualifiedName(type).equals(fullyQualifiedName)) {
- return type;
- }
- }
- return null;
- }
-
- /**
- * Finds a type by package and type name.
- *
- * @param jproject
- * the java project to search in
- * @param pack
- * The package name
- * @param typeQualifiedName
- * the type qualified name (type name with enclosing type names
- * (separated by dots))
- * @return the type found, or null if not existing
- * @throws JavaModelException
- * @deprecated Use IJavaProject.findType(String, String) instead
- */
- public static IType findType(IJavaProject jproject, String pack,
- String typeQualifiedName) throws JavaModelException {
- return jproject.findType(pack, typeQualifiedName);
- }
-
- /**
- * Finds a type container by container name. The returned element will be of
- * type <code>IType</code> or a <code>IPackageFragment</code>.
- * <code>null</code> is returned if the type container could not be found.
- *
- * @param jproject
- * The Java project defining the context to search
- * @param typeContainerName
- * A dot separarted name of the type container
- * @return the java element
- * @throws JavaModelException
- * @see #getTypeContainerName(IType)
- */
- public static IJavaElement findTypeContainer(IJavaProject jproject,
- String typeContainerName) throws JavaModelException {
- // try to find it as type
- IJavaElement result = jproject.findType(typeContainerName);
- if (result == null) {
- // find it as package
- IPath path = new Path(typeContainerName.replace('.', '/'));
- result = jproject.findElement(path);
- if (!(result instanceof IPackageFragment)) {
- result = null;
- }
-
- }
- return result;
- }
-
- /**
- * Finds a type in a compilation unit. Typical usage is to find the
- * corresponding type in a working copy.
- *
- * @param cu
- * the compilation unit to search in
- * @param typeQualifiedName
- * the type qualified name (type name with enclosing type names
- * (separated by dots))
- * @return the type found, or null if not existing
- * @throws JavaModelException
- */
- public static IType findTypeInCompilationUnit(ICompilationUnit cu,
- String typeQualifiedName) throws JavaModelException {
- IType[] types = cu.getAllTypes();
- for (int i = 0; i < types.length; i++) {
- String currName = getTypeQualifiedName(types[i]);
- if (typeQualifiedName.equals(currName)) {
- return types[i];
- }
- }
- return null;
- }
-
- /**
- * Finds a a member in a compilation unit. Typical usage is to find the
- * corresponding member in a working copy.
- *
- * @param cu
- * the compilation unit (eg. working copy) to search in
- * @param member
- * the member (eg. from the original)
- * @return the member found, or null if not existing
- */
- public static IMember findMemberInCompilationUnit(ICompilationUnit cu,
- IMember member) {
- IJavaElement[] elements = cu.findElements(member);
- if (elements != null && elements.length > 0) {
- return (IMember) elements[0];
- }
- return null;
- }
-
- /**
- * Returns the element of the given compilation unit which is "equal" to the
- * given element. Note that the given element usually has a parent different
- * from the given compilation unit.
- *
- * @param cu
- * the cu to search in
- * @param element
- * the element to look for
- * @return an element of the given cu "equal" to the given element
- */
- public static IJavaElement findInCompilationUnit(ICompilationUnit cu,
- IJavaElement element) {
- IJavaElement[] elements = cu.findElements(element);
- if (elements != null && elements.length > 0) {
- return elements[0];
- }
- return null;
- }
-
- /**
- * Returns the qualified type name of the given type using '.' as
- * separators. This is a replace for IType.getTypeQualifiedName() which uses
- * '$' as separators. As '$' is also a valid character in an id this is
- * ambiguous. JavaCore PR: 1GCFUNT
- * @param type
- * @return the type qualified name
- */
- public static String getTypeQualifiedName(IType type) {
- return type.getTypeQualifiedName('.');
- }
-
- /**
- * Returns the fully qualified name of the given type using '.' as
- * separators. This is a replace for IType.getFullyQualifiedTypeName which
- * uses '$' as separators. As '$' is also a valid character in an id this is
- * ambiguous. JavaCore PR: 1GCFUNT
- * @param type
- * @return the fully qualified name using . as the separator
- */
- public static String getFullyQualifiedName(IType type) {
- return type.getFullyQualifiedName('.');
- }
-
- /**
- * Returns the fully qualified name of a type's container. (package name or
- * enclosing type name)
- * @param type
- * @return the container name
- */
- public static String getTypeContainerName(IType type) {
- IType outerType = type.getDeclaringType();
- if (outerType != null) {
- return outerType.getFullyQualifiedName('.');
- }
- return type.getPackageFragment().getElementName();
- }
-
- /**
- * Concatenates two names. Uses a dot for separation. Both strings can be
- * empty or <code>null</code>.
- * @param name1
- * @param name2
- * @return name1 + name2
- */
- public static String concatenateName(String name1, String name2) {
- StringBuffer buf = new StringBuffer();
- if (name1 != null && name1.length() > 0) {
- buf.append(name1);
- }
- if (name2 != null && name2.length() > 0) {
- if (buf.length() > 0) {
- buf.append('.');
- }
- buf.append(name2);
- }
- return buf.toString();
- }
-
- /**
- * Concatenates two names. Uses a dot for separation. Both strings can be
- * empty or <code>null</code>.
- * @param name1
- * @param name2
- * @return name1 + name2
- */
- public static String concatenateName(char[] name1, char[] name2) {
- StringBuffer buf = new StringBuffer();
- if (name1 != null && name1.length > 0) {
- buf.append(name1);
- }
- if (name2 != null && name2.length > 0) {
- if (buf.length() > 0) {
- buf.append('.');
- }
- buf.append(name2);
- }
- return buf.toString();
- }
-
- /**
- * Evaluates if a member (possible from another package) is visible from
- * elements in a package.
- *
- * @param member
- * The member to test the visibility for
- * @param pack
- * The package in focus
- * @return true if visible
- * @throws JavaModelException
- */
- public static boolean isVisible(IMember member, IPackageFragment pack)
- throws JavaModelException {
-
- int type = member.getElementType();
- if (type == IJavaElement.INITIALIZER
- || (type == IJavaElement.METHOD && member.getElementName()
- .startsWith("<"))) { //$NON-NLS-1$
- //$NON-NLS-1$
- return false;
- }
-
- int otherflags = member.getFlags();
- IType declaringType = member.getDeclaringType();
- if (Flags.isPublic(otherflags)
- || (declaringType != null && declaringType.isInterface())) {
- return true;
- } else if (Flags.isPrivate(otherflags)) {
- return false;
- }
-
- IPackageFragment otherpack = (IPackageFragment) findParentOfKind(
- member, IJavaElement.PACKAGE_FRAGMENT);
- return (pack != null && otherpack != null && isSamePackage(pack,
- otherpack));
- }
-
- /**
- * Evaluates if a member in the focus' element hierarchy is visible from
- * elements in a package.
- *
- * @param member
- * The member to test the visibility for
- * @param pack
- * The package of the focus element focus
- * @return true if is visible in hiearchy
- * @throws JavaModelException
- */
- public static boolean isVisibleInHierarchy(IMember member,
- IPackageFragment pack) throws JavaModelException {
- int type = member.getElementType();
- if (type == IJavaElement.INITIALIZER
- || (type == IJavaElement.METHOD && member.getElementName()
- .startsWith("<"))) { //$NON-NLS-1$
- //$NON-NLS-1$
- return false;
- }
-
- int otherflags = member.getFlags();
-
- IType declaringType = member.getDeclaringType();
- if (Flags.isPublic(otherflags) || Flags.isProtected(otherflags)
- || (declaringType != null && declaringType.isInterface())) {
- return true;
- } else if (Flags.isPrivate(otherflags)) {
- return false;
- }
-
- IPackageFragment otherpack = (IPackageFragment) findParentOfKind(
- member, IJavaElement.PACKAGE_FRAGMENT);
- return (pack != null && pack.equals(otherpack));
- }
-
- /**
- * Returns the package fragment root of <code>IJavaElement</code>. If the
- * given element is already a package fragment root, the element itself is
- * returned.
- * @param element
- * @return the package fragment root
- */
- public static IPackageFragmentRoot getPackageFragmentRoot(
- IJavaElement element) {
- return (IPackageFragmentRoot) element
- .getAncestor(IJavaElement.PACKAGE_FRAGMENT_ROOT);
- }
-
- /**
- * Returns the parent of the supplied java element that conforms to the
- * given parent type or <code>null</code>, if such a parent doesn't exit.
- *
- * @deprecated Use element.getParent().getAncestor(kind);
- */
- private static IJavaElement findParentOfKind(IJavaElement element, int kind) {
- if (element != null && element.getParent() != null) {
- return element.getParent().getAncestor(kind);
- }
- return null;
- }
-
- /**
- * Finds a method in a type. This searches for a method with the same name
- * and signature. Parameter types are only compared by the simple name, no
- * resolving for the fully qualified type name is done. Constructors are
- * only compared by parameters, not the name.
- *
- * @param name
- * The name of the method to find
- * @param paramTypes
- * The type signatures of the parameters e.g.
- * <code>{"QString;","I"}</code>
- * @param isConstructor
- * If the method is a constructor
- * @param type
- * @return The first found method or <code>null</code>, if nothing found
- * @throws JavaModelException
- */
- public static IMethod findMethod(String name, String[] paramTypes,
- boolean isConstructor, IType type) throws JavaModelException {
- return findMethod(name, paramTypes, isConstructor, type.getMethods());
- }
-
- /**
- * Finds a method by name. This searches for a method with a name and
- * signature. Parameter types are only compared by the simple name, no
- * resolving for the fully qualified type name is done. Constructors are
- * only compared by parameters, not the name.
- *
- * @param name
- * The name of the method to find
- * @param paramTypes
- * The type signatures of the parameters e.g.
- * <code>{"QString;","I"}</code>
- * @param isConstructor
- * If the method is a constructor
- * @param methods
- * The methods to search in
- * @return The found method or <code>null</code>, if nothing found
- * @throws JavaModelException
- */
- public static IMethod findMethod(String name, String[] paramTypes,
- boolean isConstructor, IMethod[] methods) throws JavaModelException {
- for (int i = methods.length - 1; i >= 0; i--) {
- if (isSameMethodSignature(name, paramTypes, isConstructor,
- methods[i])) {
- return methods[i];
- }
- }
- return null;
- }
-
- /**
- * Finds a method declararion in a type's hierarchy. The search is top down,
- * so this returns the first declaration of the method in the hierarchy.
- * This searches for a method with a name and signature. Parameter types are
- * only compared by the simple name, no resolving for the fully qualified
- * type name is done. Constructors are only compared by parameters, not the
- * name.
- * @param hierarchy
- *
- * @param type
- * Searches in this type's supertypes.
- * @param name
- * The name of the method to find
- * @param paramTypes
- * The type signatures of the parameters e.g.
- * <code>{"QString;","I"}</code>
- * @param isConstructor
- * If the method is a constructor
- * @return The first method found or null, if nothing found
- * @throws JavaModelException
- */
- public static IMethod findMethodDeclarationInHierarchy(
- ITypeHierarchy hierarchy, IType type, String name,
- String[] paramTypes, boolean isConstructor)
- throws JavaModelException {
- IType[] superTypes = hierarchy.getAllSupertypes(type);
- for (int i = superTypes.length - 1; i >= 0; i--) {
- IMethod first = findMethod(name, paramTypes, isConstructor,
- superTypes[i]);
- if (first != null && !Flags.isPrivate(first.getFlags())) {
- // the order getAllSupertypes does make assumptions of the order
- // of inner elements -> search recursivly
- IMethod res = findMethodDeclarationInHierarchy(hierarchy, first
- .getDeclaringType(), name, paramTypes, isConstructor);
- if (res != null) {
- return res;
- }
- return first;
- }
- }
- return null;
- }
-
- /**
- * Finds a method implementation in a type's classhierarchy. The search is
- * bottom-up, so this returns the nearest overridden method. Does not find
- * methods in interfaces or abstract methods. This searches for a method
- * with a name and signature. Parameter types are only compared by the
- * simple name, no resolving for the fully qualified type name is done.
- * Constructors are only compared by parameters, not the name.
- * @param hierarchy
- *
- * @param type
- * Type to search the superclasses
- * @param name
- * The name of the method to find
- * @param paramTypes
- * The type signatures of the parameters e.g.
- * <code>{"QString;","I"}</code>
- * @param isConstructor
- * If the method is a constructor
- * @return The first method found or null, if nothing found
- * @throws JavaModelException
- */
- public static IMethod findMethodImplementationInHierarchy(
- ITypeHierarchy hierarchy, IType type, String name,
- String[] paramTypes, boolean isConstructor)
- throws JavaModelException {
- IType[] superTypes = hierarchy.getAllSuperclasses(type);
- for (int i = 0; i < superTypes.length; i++) {
- IMethod found = findMethod(name, paramTypes, isConstructor,
- superTypes[i]);
- if (found != null) {
- if (Flags.isAbstract(found.getFlags())) {
- return null;
- }
- return found;
- }
- }
- return null;
- }
-
- private static IMethod findMethodInHierarchy(ITypeHierarchy hierarchy,
- IType type, String name, String[] paramTypes, boolean isConstructor)
- throws JavaModelException {
- IMethod method = findMethod(name, paramTypes, isConstructor, type);
- if (method != null) {
- return method;
- }
- IType superClass = hierarchy.getSuperclass(type);
- if (superClass != null) {
- IMethod res = findMethodInHierarchy(hierarchy, superClass, name,
- paramTypes, isConstructor);
- if (res != null) {
- return res;
- }
- }
- if (!isConstructor) {
- IType[] superInterfaces = hierarchy.getSuperInterfaces(type);
- for (int i = 0; i < superInterfaces.length; i++) {
- IMethod res = findMethodInHierarchy(hierarchy,
- superInterfaces[i], name, paramTypes, false);
- if (res != null) {
- return res;
- }
- }
- }
- return method;
- }
-
- /**
- * Finds the method that is defines/declares the given method. The search is
- * bottom-up, so this returns the nearest defining/declaring method.
- * @param typeHierarchy
- * @param type
- * @param methodName
- * @param paramTypes
- * @param isConstructor
- *
- * @param testVisibility
- * If true the result is tested on visibility. Null is returned
- * if the method is not visible.
- * @return the method or null
- * @throws JavaModelException
- */
- public static IMethod findMethodDefininition(ITypeHierarchy typeHierarchy,
- IType type, String methodName, String[] paramTypes,
- boolean isConstructor, boolean testVisibility)
- throws JavaModelException {
- IType superClass = typeHierarchy.getSuperclass(type);
- if (superClass != null) {
- IMethod res = findMethodInHierarchy(typeHierarchy, superClass,
- methodName, paramTypes, isConstructor);
- if (res != null && !Flags.isPrivate(res.getFlags())) {
- if (!testVisibility
- || isVisibleInHierarchy(res, type.getPackageFragment())) {
- return res;
- }
- }
- }
- if (!isConstructor) {
- IType[] interfaces = typeHierarchy.getSuperInterfaces(type);
- for (int i = 0; i < interfaces.length; i++) {
- IMethod res = findMethodInHierarchy(typeHierarchy,
- interfaces[i], methodName, paramTypes, false);
- if (res != null) {
- return res; // methods from interfaces are always public and
- // therefore visible
- }
- }
- }
- return null;
- }
-
- /**
- * Tests if a method equals to the given signature. Parameter types are only
- * compared by the simple name, no resolving for the fully qualified type
- * name is done. Constructors are only compared by parameters, not the name.
- *
- * @param name
- * Name of the method
- * @param paramTypes
- * The type signatures of the parameters e.g.
- * <code>{"QString;","I"}</code>
- * @param isConstructor
- * Specifies if the method is a constructor
- * @param curr
- * @return Returns <code>true</code> if the method has the given name and
- * parameter types and constructor state.
- * @throws JavaModelException
- */
- public static boolean isSameMethodSignature(String name,
- String[] paramTypes, boolean isConstructor, IMethod curr)
- throws JavaModelException {
- if (isConstructor || name.equals(curr.getElementName())) {
- if (isConstructor == curr.isConstructor()) {
- String[] currParamTypes = curr.getParameterTypes();
- if (paramTypes.length == currParamTypes.length) {
- for (int i = 0; i < paramTypes.length; i++) {
- String t1 = Signature.getSimpleName(Signature
- .toString(paramTypes[i]));
- String t2 = Signature.getSimpleName(Signature
- .toString(currParamTypes[i]));
- if (!t1.equals(t2)) {
- return false;
- }
- }
- return true;
- }
- }
- }
- return false;
- }
-
- /**
- * Tests if two <code>IPackageFragment</code>s represent the same logical
- * java package.
- * @param pack1
- * @param pack2
- *
- * @return <code>true</code> if the package fragments' names are equal.
- */
- public static boolean isSamePackage(IPackageFragment pack1,
- IPackageFragment pack2) {
- return pack1.getElementName().equals(pack2.getElementName());
- }
-
- /**
- * Checks whether the given type has a valid main method or not.
- * @param type
- * @return true if type has a main method
- * @throws JavaModelException
- */
- public static boolean hasMainMethod(IType type) throws JavaModelException {
- IMethod[] methods = type.getMethods();
- for (int i = 0; i < methods.length; i++) {
- if (methods[i].isMainMethod()) {
- return true;
- }
- }
- return false;
- }
-
- /**
- * Checks if the field is boolean.
- * @param field
- * @return true if the file is of primitive boolean type
- * @throws JavaModelException
- */
- public static boolean isBoolean(IField field) throws JavaModelException {
- return field.getTypeSignature().equals(Signature.SIG_BOOLEAN);
- }
-
- /**
- * Tests if the given element is on the class path of its containing
- * project. Handles the case that the containing project isn't a Java
- * project.
- * @param element
- * @return true if element in on the class path?
- */
- public static boolean isOnClasspath(IJavaElement element) {
- IJavaProject project = element.getJavaProject();
- if (!project.exists())
- return false;
- return project.isOnClasspath(element);
- }
-
- /**
- * Resolves a type name in the context of the declaring type.
- *
- * @param refTypeSig
- * the type name in signature notation (for example 'QVector')
- * this can also be an array type, but dimensions will be
- * ignored.
- * @param declaringType
- * the context for resolving (type where the reference was made
- * in)
- * @return returns the fully qualified type name or build-in-type name. if a
- * unresoved type couldn't be resolved null is returned
- * @throws JavaModelException
- */
- public static String getResolvedTypeName(String refTypeSig,
- IType declaringType) throws JavaModelException {
- int arrayCount = Signature.getArrayCount(refTypeSig);
- char type = refTypeSig.charAt(arrayCount);
- if (type == Signature.C_UNRESOLVED) {
- int semi = refTypeSig
- .indexOf(Signature.C_SEMICOLON, arrayCount + 1);
- if (semi == -1) {
- throw new IllegalArgumentException();
- }
- String name = refTypeSig.substring(arrayCount + 1, semi);
-
- String[][] resolvedNames = declaringType.resolveType(name);
- if (resolvedNames != null && resolvedNames.length > 0) {
- return JavaModelUtil.concatenateName(resolvedNames[0][0],
- resolvedNames[0][1]);
- }
- return null;
- }
- return Signature.toString(refTypeSig.substring(arrayCount));
- }
-
- /**
- * Returns if a CU can be edited.
- * @param cu
- * @return true if cu is editable
- */
- public static boolean isEditable(ICompilationUnit cu) {
- IResource resource = toOriginal(cu).getResource();
- return (resource.exists() && !resource.getResourceAttributes()
- .isReadOnly());
- }
-
- /**
- * Finds a qualified import for a type name.
- * @param cu
- * @param simpleName
- * @return the import declaration or null
- * @throws JavaModelException
- */
- public static IImportDeclaration findImport(ICompilationUnit cu,
- String simpleName) throws JavaModelException {
- IImportDeclaration[] existing = cu.getImports();
- for (int i = 0; i < existing.length; i++) {
- String curr = existing[i].getElementName();
- if (curr.endsWith(simpleName)) {
- int dotPos = curr.length() - simpleName.length() - 1;
- if ((dotPos == -1)
- || (dotPos > 0 && curr.charAt(dotPos) == '.')) {
- return existing[i];
- }
- }
- }
- return null;
- }
-
- /**
- * Returns the original if the given member. If the member is already an
- * original the input is returned. The returned member might not exist
- * @param member
- * @return the original IMember
- */
- public static IMember toOriginal(IMember member) {
- if (member instanceof IMethod) {
- return toOriginalMethod((IMethod) member);
- }
-
- return (IMember) member.getPrimaryElement();
- /*
- * ICompilationUnit cu= member.getCompilationUnit(); if (cu != null &&
- * cu.isWorkingCopy()) return (IMember)cu.getOriginal(member); return
- * member;
- */
- }
-
- /*
- * XXX workaround for bug 18568
- * http://bugs.eclipse.org/bugs/show_bug.cgi?id=18568 to be removed once the
- * bug is fixed
- */
- private static IMethod toOriginalMethod(IMethod method) {
- ICompilationUnit cu = method.getCompilationUnit();
- if (cu == null || isPrimary(cu)) {
- return method;
- }
- try {
- // use the workaround only if needed
- if (!method.getElementName().equals(
- method.getDeclaringType().getElementName()))
- return (IMethod) method.getPrimaryElement();
-
- IType originalType = (IType) toOriginal(method.getDeclaringType());
- IMethod[] methods = originalType.findMethods(method);
- boolean isConstructor = method.isConstructor();
- for (int i = 0; i < methods.length; i++) {
- if (methods[i].isConstructor() == isConstructor)
- return methods[i];
- }
- return null;
- } catch (JavaModelException e) {
- return null;
- }
- }
-
- // private static boolean PRIMARY_ONLY = false;
-
- /**
- * Returns the original cu if the given cu is a working copy. If the cu is
- * already an original the input cu is returned. The returned cu might not
- * exist
- * @param cu
- * @return the original compiliation unit
- */
- public static ICompilationUnit toOriginal(ICompilationUnit cu) {
- // To stay compatible with old version returned null
- // if cu is null
- if (cu == null)
- return cu;
- return cu.getPrimary();
- }
-
- /**
- * Returns the original element if the given element is a working copy. If
- * the cu is already an original the input element is returned. The returned
- * element might not exist
- * @param element
- * @return element's primary element
- */
- public static IJavaElement toOriginal(IJavaElement element) {
- return element.getPrimaryElement();
- }
-
- /**
- * Returns true if a cu is a primary cu (original or shared working copy)
- * @param cu
- * @return true if cu is primary
- */
- public static boolean isPrimary(ICompilationUnit cu) {
- return cu.getOwner() == null;
- }
-
- /**
- * http://bugs.eclipse.org/bugs/show_bug.cgi?id=19253
- *
- * Reconciling happens in a separate thread. This can cause a situation
- * where the Java element gets disposed after an exists test has been done.
- * So we should not log not present exceptions when they happen in working
- * copies.
- * @param exception
- * @return true if filter not present
- */
- public static boolean filterNotPresentException(CoreException exception) {
- if (!(exception instanceof JavaModelException)) {
- return true;
- }
- JavaModelException je = (JavaModelException) exception;
- if (!je.isDoesNotExist()) {
- return true;
- }
- IJavaElement[] elements = je.getJavaModelStatus().getElements();
- for (int i = 0; i < elements.length; i++) {
- IJavaElement element = elements[i];
- ICompilationUnit unit = (ICompilationUnit) element
- .getAncestor(IJavaElement.COMPILATION_UNIT);
- if (unit == null) {
- return true;
- }
- if (!unit.isWorkingCopy()) {
- return true;
- }
- }
- return false;
- }
-
- /**
- * @param type
- * @param pm
- * @return all supertypes of type
- * @throws JavaModelException
- */
- public static IType[] getAllSuperTypes(IType type, IProgressMonitor pm)
- throws JavaModelException {
- // workaround for 23656
- Set types = new HashSet(Arrays.asList(type.newSupertypeHierarchy(pm)
- .getAllSupertypes(type)));
- IType objekt = type.getJavaProject().findType("java.lang.Object");//$NON-NLS-1$
- if (objekt != null) {
- types.add(objekt);
- }
- return (IType[]) types.toArray(new IType[types.size()]);
- }
-
- /**
- * @param resourcePath
- * @param exclusionPatterns
- * @return true if resourcePath is excluded by exclusion patterns
- */
- public static boolean isExcludedPath(IPath resourcePath,
- IPath[] exclusionPatterns) {
- char[] path = resourcePath.toString().toCharArray();
- for (int i = 0, length = exclusionPatterns.length; i < length; i++) {
- char[] pattern = exclusionPatterns[i].toString().toCharArray();
- if (CharOperation.pathMatch(pattern, path, true, '/')) {
- return true;
- }
- }
- return false;
- }
-
- /*
-
- * @see IClasspathEntry#getExclusionPatterns
- */
- /**
- * Returns whether the given resource path matches one of the exclusion
- * patterns.
- *
- * @param resourcePath
- * @param exclusionPatterns
- * @return true if resourcePath is excluded
- */
- public static boolean isExcluded(IPath resourcePath,
- char[][] exclusionPatterns) {
- if (exclusionPatterns == null) {
- return false;
- }
- char[] path = resourcePath.toString().toCharArray();
- for (int i = 0, length = exclusionPatterns.length; i < length; i++) {
- if (CharOperation.pathMatch(exclusionPatterns[i], path, true, '/')) {
- return true;
- }
- }
- return false;
- }
-
- private static Boolean fgIsJDTCore_1_5 = null;
-
- /**
- * @return true if JRE 1.5 in enabled.
- */
- public static boolean isJDTCore_1_5() {
- if (fgIsJDTCore_1_5 == null) {
- fgIsJDTCore_1_5 = JavaCore
- .getDefaultOptions()
- .containsKey(
- "org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation") ? Boolean.TRUE //$NON-NLS-1$
- : Boolean.FALSE;
- }
- return fgIsJDTCore_1_5.booleanValue();
- }
-
- /**
- * Helper method that tests if an classpath entry can be found in a
- * container. <code>null</code> is returned if the entry can not be found
- * or if the container does not allows the configuration of source
- * attachments
- *
- * @param jproject
- * The container's parent project
- * @param containerPath
- * The path of the container
- * @param libPath
- * The path of the library to be found
- * @return IClasspathEntry A classpath entry from the container of
- * <code>null</code> if the container can not be modified.
- * @throws JavaModelException
- */
- public static IClasspathEntry getClasspathEntryToEdit(
- IJavaProject jproject, IPath containerPath, IPath libPath)
- throws JavaModelException {
- IClasspathContainer container = JavaCore.getClasspathContainer(
- containerPath, jproject);
- ClasspathContainerInitializer initializer = JavaCore
- .getClasspathContainerInitializer(containerPath.segment(0));
- if (container != null
- && initializer != null
- && initializer.canUpdateClasspathContainer(containerPath,
- jproject)) {
- IClasspathEntry[] entries = container.getClasspathEntries();
- for (int i = 0; i < entries.length; i++) {
- IClasspathEntry curr = entries[i];
- IClasspathEntry resolved = JavaCore
- .getResolvedClasspathEntry(curr);
- if (resolved != null && libPath.equals(resolved.getPath())) {
- return curr; // return the real entry
- }
- }
- }
- return null; // attachment not possible
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java
deleted file mode 100644
index 8eebe903d..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PathUtil.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.io.File;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJarEntryResource;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jst.jsf.common.ui.IFileFolderConstants;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Collection of helper methods to manage and convert links Originally part of
- * the LinksManager (com.ibm.iwt.parser.util)
- */
-public final class PathUtil {
- private static final String FORWARD_SLASH = "/"; //$NON-NLS-1$
-
- private static final String RELATIVE_PATH_SIGNAL = IFileFolderConstants.DOT
- + IFileFolderConstants.DOT + IFileFolderConstants.PATH_SEPARATOR;
-
- /**
- * adjust relative path isside the absolute path
- * @param path
- * @return the adjusted path
- */
- public static String adjustPath(String path) {
- int i = 0;
- while ((i = path.indexOf(RELATIVE_PATH_SIGNAL)) > 0) {
- // split the string into two
- String part1 = path.substring(0, i - 1);
- String part2 = path
- .substring(i + RELATIVE_PATH_SIGNAL.length() - 1);
- // strip one path seg from part1
- int j = part1.lastIndexOf(FORWARD_SLASH);
- if (j == -1) {
- return "";//$NON-NLS-1$
- }
- part1 = part1.substring(0, j);
- path = part1 + part2;
- }
- return path;
- }
-
- /**
- * Append trailing url slash if needed
- * @param input
- * @return the string
- */
- public static String appendTrailingURLSlash(String input) {
- // check to see already a slash
- if (!input.endsWith(FORWARD_SLASH)) {
- input += FORWARD_SLASH;
- }
- return input;
- }
-
- /**
- * Convert to relative url based on base
- * @param input
- * @param base
- * @return the string
- */
- public static String convertToRelativePath(String input, String base) {
- // tokenize the strings
- StringTokenizer inputTokenizer = new StringTokenizer(input,
- FORWARD_SLASH);
- StringTokenizer baseTokenizer = new StringTokenizer(base, FORWARD_SLASH);
- String token1 = "", token2 = "";//$NON-NLS-2$//$NON-NLS-1$
- //
- // Go through until equls
- while (true) {
- if (!inputTokenizer.hasMoreTokens()
- || !baseTokenizer.hasMoreTokens()) {
- break;
- }
- token1 = baseTokenizer.nextToken();
- token2 = inputTokenizer.nextToken();
- if (!token1.equals(token2)) {
- break;
- }
- }
- // now generate the backs
- String output = "";//$NON-NLS-1$
- while (baseTokenizer.hasMoreTokens()) {
- baseTokenizer.nextToken();
- output += RELATIVE_PATH_SIGNAL;
- }
- output += token2;
- // generate the rest
- while (inputTokenizer.hasMoreTokens()) {
- output = output + FORWARD_SLASH + inputTokenizer.nextToken();
- }
- return output;
- }
-
- /**
- * @param projectName
- * @param path
- * @return the path in the project converted to a path relative to the
- * web folder
- */
- public static String convertToWebPath(String projectName, String path) {
- String name = ""; //$NON-NLS-1$
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(
- projectName);
- String webrootName = WebrootUtil.getWebContentFolder(project).getName();
-
- if (path.indexOf(webrootName) != -1) {
- name = projectName + IFileFolderConstants.PATH_SEPARATOR
- + webrootName;
- } else {
- name = projectName;
- }
- int index = path.indexOf(projectName);
-
- return path.substring(index + name.length());
- }
-
- /**
- * convert path relative to current active file to absolute path in
- * filesystem
- *
- * @param uri
- * the relative path
- * @param curFile
- * @return absolute path in file system
- */
- public static String convertToAbsolutePath(String uri, IFile curFile) {
- if (uri == null || uri.trim().equals("")) { //$NON-NLS-1$
- return uri;
- }
- String webroot = ""; //$NON-NLS-1$
- IFile jsp = curFile;
- try {
- if (jsp == null) {
- jsp = ((IFileEditorInput) getActivePage()
- .getActiveEditor().getEditorInput()).getFile();
- }
- if (jsp != null) {
- String webrootName = WebrootUtil.getWebContentFolder(
- jsp.getProject()).getName();
- webroot = jsp.getProject().getFolder(webrootName).getLocation()
- .toString();
- }
- } catch (NullPointerException e) {
- return uri;
- }
- if (uri.startsWith(IFileFolderConstants.PATH_SEPARATOR))
- {
- return webroot + uri;
- }
- if (jsp != null) {
- IContainer con = jsp.getParent();
- if (con != null) {
- IPath path = con.getLocation();
- if (path != null) {
- String aPath = path.toString() + File.separator + uri;
- aPath = aPath.replace('/', File.separatorChar);
- aPath = aPath.replace('\\', File.separatorChar);
- if (aPath.endsWith(File.separator)) {
- aPath += IFileFolderConstants.PATH_SEPARATOR;
- }
- File file = new File(aPath);
- if (file.exists() && file.isFile()) {
- return file.getAbsolutePath();
- }
- return uri;
- }
- }
- }
- return uri;
- }
-
- /**
- * Returns the active workbench window.
- *
- * @return the active workbench window. this can be null but I've never seen
- * it.
- */
- private static IWorkbenchWindow getActiveWorkbenchWindow() {
- if (PlatformUI.getWorkbench() == null) {
- return null;
- }
- return PlatformUI.getWorkbench().getActiveWorkbenchWindow();
- }
-
- /**
- * Returns the active workbench page. Note that the active page may not be
- * the one that the user perceives as active in some situations so this
- * method of obtaining the activate page should only be used if no other
- * method is available.
- *
- * @return the active workbench page
- */
- private static IWorkbenchPage getActivePage() {
- IWorkbenchWindow window = getActiveWorkbenchWindow();
- if (window == null) {
- return null;
- }
- return window.getActivePage();
- }
- /**
- * @param javaProject
- * @param parent
- * @return the IPath for a a classpath object (?)
- */
- public static IPath getPathOnClasspath(IJavaProject javaProject,
- Object parent) {
- IPath result = null;
- if (javaProject == null || parent == null) {
- return new Path(""); //$NON-NLS-1$
- }
- IClasspathEntry[] entries = javaProject.readRawClasspath();
- IPath classPath = null;
- if (parent instanceof IResource) {
- if (((javaProject != null) && !javaProject
- .isOnClasspath((IResource) parent))) {
- return new Path(""); //$NON-NLS-1$
- }
- if (parent instanceof IFile) {
- IPath elementPath = ((IFile) parent).getFullPath();
- if (((IFile) parent).getFileExtension().equalsIgnoreCase(
- IFileFolderConstants.EXT_PROPERTIES)) {
- int machings = 0;
- try {
- for (int i = 0; i < entries.length; i++) {
- // Determine whether on this classentry's path
- int n = entries[i].getPath().matchingFirstSegments(
- elementPath);
- if (n > machings) {
- // Get package name
- machings = n;
- classPath = elementPath.removeFirstSegments(
- machings).removeLastSegments(1);
- }
- }
-
- // Not on the classpath?
- if (classPath == null) {
- return null;
- } else if (classPath.segmentCount() > 0) {
- IJavaElement element = javaProject
- .findElement(classPath);
- if (element != null) {
- IPath path = element.getPath();
- if (path != null) {
- IPath path1 = path
- .removeFirstSegments(machings);
-
- String fileName = ((IFile) parent)
- .getName();
- if (fileName != null) {
- result = path1.append(fileName);
- }
- }
- }
-
- } else {
- result = ((IFile) parent).getFullPath()
- .removeFirstSegments(machings);
- }
- } catch (Exception e) {
- return null;
- }
- }
- }
- } else if (parent instanceof IJarEntryResource) {
- IPath elementPath = ((IJarEntryResource) parent).getFullPath();
- if (elementPath.getFileExtension().equalsIgnoreCase(
- IFileFolderConstants.EXT_PROPERTIES)) {
- result = elementPath;
- }
- }
- if (result != null) {
- return result;
- }
- return new Path(""); //$NON-NLS-1$
- }
-
- private PathUtil()
- {
- // utility class, no instantiation
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PixelConverter.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PixelConverter.java
deleted file mode 100644
index 48d5b3749..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PixelConverter.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- * Oracle -- copied into common ui codebase for JSF use
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.widgets.Control;
-
-import org.eclipse.jface.dialogs.Dialog;
-
-/**
- * @author cbateman
- *
- */
-public class PixelConverter {
-
- private final FontMetrics fFontMetrics;
-
- /**
- * @param control
- */
- public PixelConverter(Control control) {
- this(control.getFont());
- }
-
- /**
- * @param font
- */
- public PixelConverter(Font font) {
- GC gc = new GC(font.getDevice());
- gc.setFont(font);
- fFontMetrics= gc.getFontMetrics();
- gc.dispose();
- }
-
-
- /**
- * @param chars
- * @return the convert height in pixels
- */
- public int convertHeightInCharsToPixels(int chars) {
- return Dialog.convertHeightInCharsToPixels(fFontMetrics, chars);
- }
-
- /**
- * @param dlus
- * @return the pixel
- */
- public int convertHorizontalDLUsToPixels(int dlus) {
- return Dialog.convertHorizontalDLUsToPixels(fFontMetrics, dlus);
- }
-
- /**
- * @param dlus
- * @return the vertical pixels
- */
- public int convertVerticalDLUsToPixels(int dlus) {
- return Dialog.convertVerticalDLUsToPixels(fFontMetrics, dlus);
- }
-
-
- /**
- * @param chars
- * @return the pixel value
- */
- public int convertWidthInCharsToPixels(int chars) {
- return Dialog.convertWidthInCharsToPixels(fFontMetrics, chars);
- }
-
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PluginImageHelper.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PluginImageHelper.java
deleted file mode 100644
index 8ebcd0354..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PluginImageHelper.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * @author mengbo
- */
-public class PluginImageHelper {
- private static PluginImageHelper _instance = null;
-
- /**
- * Gets the instance.
- *
- * @return Returns a TaglibPluginImageHelper
- */
- public synchronized static PluginImageHelper getInstance() {
- if (_instance == null) {
- _instance = new PluginImageHelper();
- }
- return _instance;
- }
-
- // save a descriptor for each image
- private HashMap _imageDescRegistry = null;
-
- private final String PLUGIN_SEPARATOR = "^"; //$NON-NLS-1$
-
- /**
- * Creates an image from the given resource and adds the image to the image
- * registry.
- *
- * @param resource
- * @param pluginId
- * @return Image
- */
- private Image createImage(String resource, String pluginId) {
- ImageDescriptor desc = getImageDescriptor(resource, pluginId);
- Image image = null;
-
- if (desc != null) {
- image = desc.createImage();
-
- // dont add the missing image descriptor image to the image
- // registry
- if (!desc.equals(ImageDescriptor.getMissingImageDescriptor())) {
- String thePluginId = pluginId;
- if (thePluginId == null) {
- return null;
- }
- String key = thePluginId + PLUGIN_SEPARATOR + resource;
- getImageRegistry().put(key, image);
- }
- }
- return image;
- }
-
- /**
- * Creates an image descriptor from the given imageFilePath in the given
- * pluginId and adds the image descriptor to the image descriptor registry.
- * If an image descriptor could not be created, the default "missing" image
- * descriptor is returned but not added to the image descriptor registry.
- *
- * @param imageFilePath
- * @param pluginId
- * if null, look in this plugin
- * @return ImageDescriptor image descriptor for imageFilePath or default
- * "missing" image descriptor if resource could not be found
- */
- private ImageDescriptor createImageDescriptor(String imageFilePath,
- String pluginId) {
- String thePluginId = pluginId;
- if (thePluginId == null) {
- return null;
- }
-
- ImageDescriptor imageDescriptor = AbstractUIPlugin
- .imageDescriptorFromPlugin(thePluginId, imageFilePath);
- if (imageDescriptor != null) {
- String key = thePluginId + PLUGIN_SEPARATOR + imageFilePath;
- getImageDescriptorRegistry().put(key, imageDescriptor);
- } else {
- imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
- }
-
- return imageDescriptor;
- }
-
- /**
- * Retrieves the image associated with resource from the image registry. If
- * the image cannot be retrieved, attempt to find and load the image at the
- * location specified in resource.
- *
- * @param resource
- * the image to retrieve
- * @return Image the image associated with resource or null if one could not
- * be found
- */
- public Image getImage(String resource) {
- return getImage(resource, null);
- }
-
- /**
- * Retrieves the image associated with resource from the image registry. If
- * the image cannot be retrieved, attempt to find and load the image at the
- * location specified in resource.
- *
- * @param resource
- * the image to retrieve
- * @param pluginId
- * @return Image the image associated with resource or null if one could not
- * be found
- */
- public Image getImage(String resource, String pluginId) {
- String thePluginId = pluginId;
- if (thePluginId == null) {
- return null;
- }
-
- String key = thePluginId + PLUGIN_SEPARATOR + resource;
-
- Image image = getImageRegistry().get(key);
- if (image == null) {
- // create an image
- image = createImage(resource, pluginId);
- }
- return image;
- }
-
- /**
- * Retrieves the image descriptor associated with resource from the image
- * descriptor registry. If the image descriptor cannot be retrieved, attempt
- * to find and load the image descriptor at the location specified in
- * resource.
- *
- * @param resource
- * the image descriptor to retrieve
- * @return ImageDescriptor the image descriptor assocated with resource or
- * the default "missing" image descriptor if one could not be found
- */
- public ImageDescriptor getImageDescriptor(String resource) {
- return getImageDescriptor(resource, null);
- }
-
- /**
- * Retrieves the image descriptor associated with resource in pluginId from
- * the image descriptor registry. If the image descriptor cannot be
- * retrieved, attempt to find and load the image descriptor at the location
- * specified in resource in pluginId.
- *
- * @param resource
- * the image descriptor to retrieve
- * @param pluginId
- * the plugin the resource is located. if null, use look in this
- * plugin
- * @return ImageDescriptor the image descriptor assocated with resource or
- * the default "missing" image descriptor if one could not be found
- */
- public ImageDescriptor getImageDescriptor(String resource, String pluginId) {
- ImageDescriptor imageDescriptor = null;
- String thePluginId = pluginId;
- if (thePluginId == null) {
- return null;
- }
-
- String key = thePluginId + PLUGIN_SEPARATOR + resource;
- Object o = getImageDescriptorRegistry().get(key);
- if (o == null) {
- // create a descriptor
- imageDescriptor = createImageDescriptor(resource, pluginId);
- } else {
- imageDescriptor = (ImageDescriptor) o;
- }
- return imageDescriptor;
- }
-
- /**
- * Returns the image descriptor registry for this plugin.
- *
- * @return HashMap - image descriptor registry for this plugin
- */
- private HashMap getImageDescriptorRegistry() {
- if (_imageDescRegistry == null) {
- _imageDescRegistry = new HashMap();
- }
- return _imageDescRegistry;
- }
-
- /**
- * Returns the image registry for this plugin.
- *
- * @return ImageRegistry - image registry for this plugin
- */
- private ImageRegistry getImageRegistry() {
- return JFaceResources.getImageRegistry();
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PropertyUtils.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PropertyUtils.java
deleted file mode 100644
index 47bded01a..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/PropertyUtils.java
+++ /dev/null
@@ -1,789 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.awt.Component;
-import java.awt.Dimension;
-import java.awt.Point;
-import java.awt.Rectangle;
-import java.awt.Toolkit;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.MissingResourceException;
-import java.util.Properties;
-import java.util.ResourceBundle;
-import java.util.StringTokenizer;
-
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-
-/**
- * The main purpose of this class is to give better access methods for property
- * and resource bundle access.
- *
- * @author mengbo
- */
-public final class PropertyUtils {
-
- private static final String ENCODED_CHAR_PERCENT = "%25"; //$NON-NLS-1$
- private static final String ENCODED_CHAR_CARRIAGE_RETURN = "%0d"; //$NON-NLS-1$
- private static final String ENCODED_CHAR_TAB = "%09"; //$NON-NLS-1$
- private static final String ENCODED_CHAR_NEWLINE = "%0a"; //$NON-NLS-1$
- private static final String ENCODED_CHAR_SPACE = "%20"; //$NON-NLS-1$
- private static final String ENCODED_CHAR_COLON = "%3a"; //$NON-NLS-1$
- private static final String ENCODED_CHAR_EQUALS = "%3d"; //$NON-NLS-1$
-
-
- // WARNING: There can be NO static logging line here since the logger uses
- // this class to figure out the preferences
- // for the logging system. "Logging" an error here would be useless since
- // you might be setting up the logging system
- // via a call to PropertyUtils.getServerProperty() instead it uses
- // "System.err.println".
-
- // This is the name for the properties file.
- // The prop-name will be prepended to this string....
- private static final String NAME_PROPERTIES = ".props"; //$NON-NLS-1$
-
- private static final String STR_BOUNDS_END = ".bounds"; // assumes the //$NON-NLS-1$
-
- // window name or
- // name list is
- // prepended
-
- // //////////////////////////////////////////////////////////////////////////
- // Property get methods.
- // //////////////////////////////////////////////////////////////////////////
- /**
- * @param props
- * @param key
- * @param theDefault
- * @return the property
- */
- public static String getProperty(Properties props, String key,
- String theDefault) {
- try {
- String value = props.getProperty(key, theDefault);
- if ((value != null) && (value.length() == 0)) {
- value = null;
- }
- // check again for null, since some versions of the jdk ignore the
- // default
- // if an empty property exists.
- if (value == null) {
- value = theDefault;
- }
- return value;
- } catch (Exception ee) {
- return theDefault;
- }
- }
-
- /**
- * @param props
- * @param key
- * @return the value for key in props, may return null
- */
- public static String getProperty(Properties props, String key) {
- try {
- String value = props.getProperty(key);
- if ((value != null) && (value.length() == 0)) {
- value = null;
- }
- return value;
- } catch (Exception ee) {
- return null;
- }
- }
-
- /**
- * @param props
- * @param key
- * @param defaultValue
- * @param minimumValue
- * @return the integer property value for key, or defaultValue
- * if none. Enforces minimumValue in all cases
- */
- public static int getPropertyValue(Properties props, String key,
- int defaultValue, int minimumValue) {
- int theValue = getPropertyValue(props, key, defaultValue);
-
- if (theValue < minimumValue) {
- theValue = minimumValue;
- }
- return theValue;
- }
-
- /**
- * @param props
- * @param key
- * @param defaultValue
- * @return the integer value for key in props or defaultValue if none
- */
- public static int getPropertyValue(Properties props, String key,
- int defaultValue) {
- String stringValue = getProperty(props, key);
- if (stringValue != null) {
- try {
- return Integer.parseInt(stringValue);
- } catch (NumberFormatException ee)// NOPMD
- {
- // the property value maybe an invalid value, the editor should
- // show these to user.
- }
- }
- return defaultValue;
- }
-
- /**
- * @param props
- * @param key
- * @param defaultValue
- * @return the long value for key props or defaultValue if none
- */
- public static long getPropertyLongValue(Properties props, String key,
- long defaultValue) {
- String stringValue = getProperty(props, key);
- if (stringValue != null) {
- try {
- return Long.parseLong(stringValue);
- } catch (NumberFormatException ee)// NOPMD
- {
- // the property value maybe an invalid value, the editor should
- // show these to user.
- }
- }
- return defaultValue;
- }
-
- /**
- * @param props
- * @param key
- * @param bDefault
- * @return true if props has a value for key
- */
- public static boolean isProperty(Properties props, String key,
- boolean bDefault) {
- return getProperty(props, key, "" + bDefault).equals("" + true); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- /**
- * @param props
- * @param key
- * @return the string values in props for key tokenized from
- * a comma-separated string
- */
- public static String[] getPropertyStrings(Properties props, String key) {
- String tokenString = getProperty(props, key);
-
- if (tokenString == null) {
- return new String[0];
- }
- StringTokenizer tokenizer = new StringTokenizer(tokenString, ","); //$NON-NLS-1$
- String[] pNames = new String[tokenizer.countTokens()];
-
- for (int ii = 0; ii < pNames.length; ii++) {
- pNames[ii] = ((String) tokenizer.nextElement()).trim();
- }
- return pNames;
- }
-
- // //////////////////////////////////////////////////////////////////////////
- // Resource bundle get methods.
- // //////////////////////////////////////////////////////////////////////////
- /**
- * @param bundle
- * @param key
- * @param theDefault
- * @return the string value from bundle for key or default if none
- */
- public static String getResourceProperty(ResourceBundle bundle, String key,
- String theDefault) {
- try {
- String value = bundle.getString(key);
- if ((value == null) || (value.length() == 0)) {
- value = theDefault;
- }
- return value;
- }
- catch(NullPointerException npe)
- {
- return theDefault;
- }
- catch (MissingResourceException mre)
- {
- return theDefault;
- }
- catch (ClassCastException cce)
- {
- return theDefault;
- }
- }
-
- /**
- * @param bundle
- * @param key
- * @return the value for key in bundle or null if none
- */
- public static String getResourceProperty(ResourceBundle bundle, String key) {
- try
- {
- String value = bundle.getString(key);
- if ((value != null) && (value.length() == 0))
- {
- value = null;
- }
- return value;
- }
- catch(NullPointerException npe)
- {
- return null;
- }
- catch (MissingResourceException mre)
- {
- return null;
- }
- catch (ClassCastException cce)
- {
- return null;
- }
- }
-
- /**
- * @param bundle
- * @param key
- * @param defaultValue
- * @param minimumValue
- * @return the integer value for key in bundle or defaultValue if none
- * Enforces minimum value in all cases
- */
- public static int getResourcePropertyValue(ResourceBundle bundle,
- String key, int defaultValue, int minimumValue) {
- int theValue = getResourcePropertyValue(bundle, key, defaultValue);
-
- if (theValue < minimumValue) {
- theValue = minimumValue;
- }
- return theValue;
- }
-
- /**
- * @param bundle
- * @param key
- * @param defaultValue
- * @return the integer value for key in bundle or defaultValue if none
- */
- public static int getResourcePropertyValue(ResourceBundle bundle,
- String key, int defaultValue) {
- String stringValue = getResourceProperty(bundle, key);
- if (stringValue != null) {
- try {
- return Integer.parseInt(stringValue);
- } catch (NumberFormatException ee)// NOPMD
- {
- // the property value maybe an invalid value, the editor should
- // show these to user.
- }
- }
- return defaultValue;
- }
-
- /**
- * @param bundle
- * @param key
- * @param defaultValue
- * @return the long value for key in bundle or default value if none
- */
- public static long getResourcePropertyLongValue(ResourceBundle bundle,
- String key, long defaultValue) {
- String stringValue = getResourceProperty(bundle, key);
- if (stringValue != null) {
- try {
- return Long.parseLong(stringValue);
- } catch (NumberFormatException ee)// NOPMD
- {
- // the property value maybe an invalid value, the editor should
- // show these to user.
- }
- }
- return defaultValue;
- }
-
- /**
- * @param bundle
- * @param key
- * @param bDefault
- * @return true if bundle has a value for key
- */
- public static boolean isResourceProperty(ResourceBundle bundle, String key,
- boolean bDefault) {
- return getResourceProperty(bundle, key, "" + bDefault) //$NON-NLS-1$
- .equals("" + true); //$NON-NLS-1$
- }
-
- // ///////////////////////////////////////////////////////////////////////
- // Property misc routines
- // ///////////////////////////////////////////////////////////////////////
- /**
- * @param theName
- * @return the encoded name
- */
- public static String encodeName(String theName) {
- int theSize = theName.length();
- StringBuffer encoded = new StringBuffer(theSize);
- char ch;
-
- for (int ii = 0; ii < theSize; ii++) {
- ch = theName.charAt(ii);
- switch (ch) {
- // these are the set of illegal characters in a Property name
- case '=': // %3d
- encoded.append(ENCODED_CHAR_EQUALS);
- break;
- case ':': // %3a
- encoded.append(ENCODED_CHAR_COLON);
- break;
- case ' ': // %20
- encoded.append(ENCODED_CHAR_SPACE);
- break;
- case '\n': // %0a
- encoded.append(ENCODED_CHAR_NEWLINE);
- break;
- case '\t': // %09
- encoded.append(ENCODED_CHAR_TAB);
- break;
- case '\r': // %0d
- encoded.append(ENCODED_CHAR_CARRIAGE_RETURN);
- break;
- case '%': // %25
- // added because its our encoding flag
- encoded.append(ENCODED_CHAR_PERCENT);
- break;
- default:
- encoded.append(ch);
- break;
- }
- }
-
- return encoded.toString();
- }
-
- /**
- * @param theName
- * @return the decoded name
- */
- public static String decodeName(String theName) {
- int theSize = theName.length();
- int kk;
- StringBuffer decoded = new StringBuffer(theSize);
- char ch;
-
- for (int ii = 0; ii < theSize; ii++) {
- ch = theName.charAt(ii);
- if (ch == '%') {
- ch = theName.charAt(++ii);
- kk = Character.digit(ch, 16);
- kk *= 16;
- ch = theName.charAt(++ii);
- kk += Character.digit(ch, 16);
- decoded.append((char) kk);
- } else {
- decoded.append(ch);
- }
- }
-
- return decoded.toString();
- }
-
- /**
- * @param propName
- * @return the properties
- * @throws IOException
- * @throws FileNotFoundException
- */
- public static Properties openProperties(String propName)
- throws IOException, FileNotFoundException {
- return openProperties(propName, null, true);
- }
-
- /**
- * @param propName
- * @param propDefaults
- * @return the properties
- * @throws IOException
- * @throws FileNotFoundException
- */
- public static Properties openProperties(String propName,
- Properties propDefaults) throws IOException, FileNotFoundException {
- return openProperties(propName, propDefaults, true);
- }
-
- /**
- * @param propName
- * @param propDefaults
- * @param bCreatePropertiesPathname
- * @return the properties
- * @throws IOException
- * @throws FileNotFoundException
- */
- public static Properties openProperties(String propName,
- Properties propDefaults, boolean bCreatePropertiesPathname)
- throws IOException, FileNotFoundException {
- Properties theProperties = new Properties(propDefaults);
-
- try {
- String propertiesFilename = bCreatePropertiesPathname ? getPropertiesPathname(propName)
- : propName;
- InputStream theStream = new FileInputStream(propertiesFilename);
- theProperties.load(theStream);
- theStream.close();
- } catch (FileNotFoundException ee) {
- if (propDefaults == null) {
- throw ee;
- }
- } catch (IOException ee) {
- if (propDefaults == null) {
- throw ee;
- }
- }
-
- return theProperties;
- }
-
- /**
- * Combines two properties objects, with the second one as the default
- * properties
- *
- * @param localProperties
- * @param defaultProperties
- * @return the combined properties
- * @throws IOException
- */
- public static Properties combineProperties(Properties localProperties,
- Properties defaultProperties) throws IOException {
- Properties theNewProperties = new Properties();
-
- ByteArrayOutputStream os = new ByteArrayOutputStream();
- defaultProperties.store(os, ""); //$NON-NLS-1$
- localProperties.store(os, ""); //$NON-NLS-1$
- byte[] theData = os.toByteArray();
- ByteArrayInputStream is = new ByteArrayInputStream(theData);
- theNewProperties.load(is);
-
- return theNewProperties;
- }
-
- /**
- * @param theFilename
- * @return the encoded file name
- */
- public static String encodeFilename(String theFilename) {
- // make theFilename legal on the local system....
- String theSeparator = System.getProperty("file.separator"); //$NON-NLS-1$
- // replace all occurrances of the file separator with a ' '
- for (int ii = 0; ii < theSeparator.length(); ii++) {
- char theChar = theSeparator.charAt(ii);
- theFilename = theFilename.replace(theChar, ' ');
- }
-
- return theFilename;
- }
-
- /**
- * @param baseName
- * @return the properties path
- */
- public static String getPropertiesPathname(String baseName) {
- if (baseName.endsWith(NAME_PROPERTIES)) {
- return System.getProperty("user.dir") //$NON-NLS-1$
- + System.getProperty("file.separator") //$NON-NLS-1$
- + encodeFilename(baseName);
- }
- return System.getProperty("user.dir") //$NON-NLS-1$
- + System.getProperty("file.separator") //$NON-NLS-1$
- + encodeFilename(baseName) + NAME_PROPERTIES;
- }
-
- // /////////////////////////////////////////////////////////////////////////
- // These are generic routines that are used to get/set/save window bounds
-
- private static final int INSET = 40;
-
- /**
- * Set the initial bounds (size & location) of a component. This will get
- * the location from the preferences file based on the values of the "names"
- * parameter. These values will be encoded to make a legal properties name,
- * joined togther with ".", and the value STR_BOUNDS_END will be appended.
- * The resulting name will be used to obtain the intial bounds value from
- * the properties file, which will be decoded and the specified component
- * will then be set to that value.
- * @param props
- * @param theComponent
- * @param names
- * @param defaultValue
- */
- public static void setComponentBounds(Properties props,
- Component theComponent, String names[], String defaultValue) {
- setComponentBounds(props, theComponent, names, defaultValue, false);
- }
-
- /**
- * @param props
- * @param theComponent
- * @param names
- * @param defaultValue
- * @param bEnsureDesktopVisibility
- */
- public static void setComponentBounds(Properties props,
- Component theComponent, String names[], String defaultValue,
- boolean bEnsureDesktopVisibility) {
- String tmpString = getComponentPropertyName(names, STR_BOUNDS_END);
- setComponentBounds(props, theComponent, tmpString, defaultValue,
- bEnsureDesktopVisibility);
- }
-
- /**
- * @param props
- * @param theComponent
- * @param thePropertyName
- * @param defaultValue
- */
- public static void setComponentBounds(Properties props,
- Component theComponent, String thePropertyName, String defaultValue) {
- setComponentBounds(props, theComponent, thePropertyName, defaultValue,
- false);
- }
-
- /**
- * @param props
- * @param theComponent
- * @param thePropertyName
- * @param defaultValue
- * @param bEnsureDesktopVisibility
- */
- public static void setComponentBounds(Properties props,
- Component theComponent, String thePropertyName,
- String defaultValue, boolean bEnsureDesktopVisibility) {
- String tmpString = props.getProperty(thePropertyName, defaultValue);
- Rectangle theValue = decodeBounds(tmpString);
- theComponent.setBounds(theValue);
- if (bEnsureDesktopVisibility) {
- // make sure that this component is visible on the desktop...
- // verify that this window is visible...
- Point theLoc = theComponent.getLocation();
- // get width/height of desktop....
- Dimension portSize = new Dimension(Toolkit.getDefaultToolkit()
- .getScreenSize());
- if (theLoc.x > portSize.width) // move it to top
- theLoc.x = INSET;
- if (theLoc.y > portSize.height) // move it to left
- theLoc.y = INSET;
- theComponent.setLocation(theLoc);
- }
- }
-
- /**
- * @param props
- * @param theComponent
- * @param names
- */
- public static void saveComponentBounds(Properties props,
- Component theComponent, String names[]) {
- String tmpString = getComponentPropertyName(names, STR_BOUNDS_END);
- saveComponentBounds(props, theComponent, tmpString);
- }
-
- /**
- * @param props
- * @param theComponent
- * @param thePropertyName
- */
- public static void saveComponentBounds(Properties props,
- Component theComponent, String thePropertyName) {
- Rectangle theBounds = theComponent.getBounds();
- String theValue = encodeBounds(theBounds);
- props.put(thePropertyName, theValue);
- }
-
- /**
- * @param names
- * @param subsystemName
- * @return the component property name or ""
- */
- public static String getComponentPropertyName(String names[],
- String subsystemName) {
- String tmpString = ""; //$NON-NLS-1$
-
- for (int ii = 0; ii < names.length; ii++) {
- tmpString = tmpString + (ii > 0 ? "." : "") //$NON-NLS-1$ //$NON-NLS-2$
- + PropertyUtils.encodeName(names[ii]);
- }
- if (subsystemName.startsWith(".") == false) //$NON-NLS-1$
- tmpString += "."; //$NON-NLS-1$
- tmpString = tmpString + subsystemName;
- return tmpString;
- }
-
- /**
- * Decode the comma separated values stored in sBounds. This method is
- * normally called to decode the location/size of a component which has been
- * saved into a Properties object. See encodeBounds(); Order of items in the
- * string is (x, y, w, h)
- * @param sBounds
- * @return the rectangle
- */
- public static Rectangle decodeBounds(String sBounds) {
- int index;
- int ii;
- int theValue[] = new int[4];
- String tmpString;
- String restString = sBounds;
-
- for (ii = 0; ii < 4; ii++) {
- theValue[ii] = 0;
- }
- try {
- for (ii = 0; ii < 4; ii++) {
- index = restString.indexOf(","); //$NON-NLS-1$
- if (index > 0) {
- tmpString = restString.substring(0, index);
- restString = restString.substring(index + 1);
- } else {
- tmpString = restString; // should only happen on the last
- // one....
- restString = null; // will cause an exception if not last
- // one...
- }
- theValue[ii] = Integer.valueOf(tmpString).intValue();
- }
- } catch (Exception ee)// NOPMD
- {
- // the property value maybe an invalid value, the editor should show
- // these to user.
- }
-
- return new Rectangle(theValue[0], theValue[1], theValue[2], theValue[3]);
- }
-
- /**
- * * Encode the bounds of a component into a comma separated list * that is
- * appropriate for storing in a Properties object. * See decodeBounds();
- * @param rBounds
- * @return the encoded bounds
- */
- public static String encodeBounds(Rectangle rBounds) {
- return "" + rBounds.x + "," + rBounds.y + "," + rBounds.width + "," //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- + rBounds.height;
- }
-
- /**
- * Methods for creating Properties objects from strings.
- *
- * Then "Encoded" versions are used on values that are stored into a
- * properties file (think of them as sub-properties). They do the encoding
- * necessary to turn a properties object into a string that has legal
- * "value" syntax (they actually do more than they need to, but its all
- * non-destructive).
- * @param thePropertyString
- * @return the properties from the string
- * @throws IOException
- */
- public static Properties getPropertiesFromString(String thePropertyString)
- throws IOException {
- if (thePropertyString == null)
- return null;
- ByteArrayInputStream in = new ByteArrayInputStream(thePropertyString
- .getBytes());
-
- Properties props = new Properties();
- props.load(in); // throws IOException
- in = null;
- return props;
- }
-
- /**
- * @param theEncodedPropertyString
- * @return the properties
- * @throws IOException
- */
- public static Properties getPropertiesFromEncodedString(
- String theEncodedPropertyString) throws IOException {
- if (theEncodedPropertyString == null)
- return null;
- return (getPropertiesFromString(decodeName(theEncodedPropertyString)));
- }
-
- /**
- * @param theEncodedPropertyString
- * @return the properties
- */
- public static Properties encodedStringToProperties(
- String theEncodedPropertyString) {
- try {
- return getPropertiesFromEncodedString(theEncodedPropertyString);
- } catch (IOException ee) {
- return null;
- }
- }
-
- /**
- * @param props
- * @param comment
- * @return the string
- * @throws IOException
- */
- public static String savePropertiesToString(Properties props, String comment)
- throws IOException {
- if (props == null)
- return null;
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- props.store(out, comment);
- String tmpString = out.toString();
- out = null;
- return tmpString;
- }
-
- /**
- * @param props
- * @param comment
- * @return the encoded string
- * @throws IOException
- */
- public static String savePropertiesToEncodedString(Properties props,
- String comment) throws IOException {
- if (props == null)
- return null;
- return encodeName(savePropertiesToString(props, comment));
- }
-
- /**
- * @param props
- * @return the encoded string
- */
- public static String propertiesToEncodedString(Properties props) {
- try {
- return savePropertiesToEncodedString(props, ""); //$NON-NLS-1$
- } catch (IOException ee)// NOPMD
- {
- JSFUICommonPlugin.getLogger(PropertyUtils.class).error("saving properties", ee); //$NON-NLS-1$
- }
- return null;
- }
-
- private PropertyUtils()
- {
- // no instantiation
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/ResourceUtils.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/ResourceUtils.java
deleted file mode 100644
index e35ee83ab..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/ResourceUtils.java
+++ /dev/null
@@ -1,286 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-
-/**
- * Give easy access to a resource bundle.
- *
- * @author mengbo
- */
-public abstract class ResourceUtils {
- private static final String LOG_RESOURCE_UTILS_MSG_KEY = "log.ResourceUtils"; //$NON-NLS-1$
- private static Logger _log = JSFUICommonPlugin.getLogger(ResourceUtils.class);
- /**
- * the resource bundle accessible by all children
- */
- protected ResourceBundle _resources;
-
- /**
- * Empty Constructor.
- */
- protected ResourceUtils() {
- // restrict instantiation
- }
-
- /**
- * Easy way to set the bundle and get a fatal log messages and an alert if
- * the resource bundle is not found.
- *
- * @param resource
- * @param bundleLocation
- */
- protected void setBundle(ResourceBundle resource, String bundleLocation) {
- _resources = resource;
- if (_resources == null) {
- // log.ResourceUtils=Missing Resource Bundle "{0}".
- _log.error(LOG_RESOURCE_UTILS_MSG_KEY, bundleLocation);
- // pluginName=Web Application Development Common
- JSFUICommonPlugin.getAlerts().error("pluginName", LOG_RESOURCE_UTILS_MSG_KEY, //$NON-NLS-1$
- bundleLocation);
- }
- }
-
- /**
- * Get the property defined in the resource bundle for the given key. This
- * property should be an integer. If none is defined
- * (MissingResourceException), return the default.
- *
- * @param key
- * the key in the resource bundle.
- * @param defaultValue
- * default int to return if no value is found for the key.
- * @return the integer value for key or defaultValue if none
- */
- public int getValue(String key, int defaultValue) {
- String stringValue = getString(key);
- if (stringValue != null) {
- try {
- return Integer.parseInt(stringValue);
- } catch (NumberFormatException ee)// NOPMD
- {
- // the property value maybe an invalid value, the editor should
- // show these to user.
- }
- }
- return defaultValue;
- }
-
- /**
- * Get the property defined in the resource bundle for the given key. This
- * property should be an long. If none is defined
- * (MissingResourceException), return the default.
- *
- * @param key
- * the key in the resource bundle.
- * @param defaultValue
- * default long to return if no value is found for the key.
- * @return the long value for key or defaultValue if none
- */
- public long getValue(String key, long defaultValue) {
- String stringValue = getString(key);
- if (stringValue != null) {
- try {
- return Long.parseLong(stringValue);
- } catch (NumberFormatException ee)// NOPMD
- {
- // the property value maybe an invalid value, the editor should
- // show these to user.
- }
- }
- return defaultValue;
- }
-
- /**
- * Get the property defined in the resource bundle for the given key. This
- * property should be boolean ("true" of "false"). If none is defined
- * (MissingResourceException), return the default.
- *
- * @param key
- * the key in the resource bundle.
- * @return true if there is a resource corresponding to key
- */
- public boolean isResource(String key) {
- return getString(key).equals("" + true); //$NON-NLS-1$
- }
-
- /**
- * Get the property defined in the resource bundle for the given key. If
- * none is defined (MissingResourceException), return null.
- *
- * @param key
- * the key in the resource bundle.
- * @return the string value for key or key if not found
- */
- public String getString(String key) {
- try {
- return _resources.getString(key);
- } catch (MissingResourceException ee) {
- return key;
- }
- }
-
- /**
- * Build a formated string from the resource bundle.
- *
- * @param key
- * the key into the resource bundle that has the formated string.
- * @param arg0
- * the first argument.
- * @return the formated string with the argument inline.
- */
- public String getString(String key, Object arg0) {
- Object[] args = new Object[1];
- args[0] = arg0;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- return formatter.format(args);
- }
-
- /**
- * Build a formated string from the resource bundle.
- *
- * @param key
- * the key into the resource bundle that has the formated string.
- * @param arg0
- * the first argument.
- * @param arg1
- * the second argument.
- * @return the formated string with the argument inline.
- */
- public String getString(String key, Object arg0, Object arg1) {
- Object[] args = new Object[2];
- args[0] = arg0;
- args[1] = arg1;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- return formatter.format(args);
- }
-
- /**
- * Build a formated string from the resource bundle.
- *
- * @param key
- * the key into the resource bundle that has the formated string.
- * @param arg0
- * the first argument.
- * @param arg1
- * the second argument.
- * @param arg2
- * the third argument.
- * @return the formated string with the argument inline.
- */
- public String getString(String key, Object arg0, Object arg1, Object arg2) {
- Object[] args = new Object[3];
- args[0] = arg0;
- args[1] = arg1;
- args[2] = arg2;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- return formatter.format(args);
- }
-
- /**
- * Build a formated string from the resource bundle.
- *
- * @param key
- * the key into the resource bundle that has the formated string.
- * @param arg0
- * the first argument.
- * @param arg1
- * the second argument.
- * @param arg2
- * the third argument.
- * @param arg3
- * the forth argument.
- * @return the formated string with the argument inline.
- */
- public String getString(String key, Object arg0, Object arg1, Object arg2,
- Object arg3) {
- Object[] args = new Object[4];
- args[0] = arg0;
- args[1] = arg1;
- args[2] = arg2;
- args[3] = arg3;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- return formatter.format(args);
- }
-
- /**
- * Build a formated string from the resource bundle.
- *
- * @param key
- * the key into the resource bundle that has the formated string.
- * @param arg0
- * the first argument.
- * @param arg1
- * the second argument.
- * @param arg2
- * the third argument.
- * @param arg3
- * the forth argument.
- * @param arg4
- * the forth argument.
- * @return the formated string with the argument inline.
- */
- public String getString(String key, Object arg0, Object arg1, Object arg2,
- Object arg3, Object arg4) {
- Object[] args = new Object[5];
- args[0] = arg0;
- args[1] = arg1;
- args[2] = arg2;
- args[3] = arg3;
- args[4] = arg4;
-
- MessageFormat formatter = new MessageFormat(getString(key));
- return formatter.format(args);
- }
-
- /**
- * Build a formated string from the resource bundle.
- *
- * @param key
- * the key into the resource bundle that has the formated string.
- * @param args
- * an array of arguments
- * @return the formated string with the argument inline.
- */
- public String getString(String key, Object[] args) {
- MessageFormat formatter = new MessageFormat(getString(key));
- return formatter.format(args);
- }
-
- /**
- * Use in the try-finally idiom for inputStream to ensure close
- * and suppress exceptions on close
- * @param inputStream
- */
- public static void ensureClosed(InputStream inputStream) {
- if (inputStream != null) {
- try {
- inputStream.close();
- } catch (IOException e) {
- // Ignore
- }
- }
-
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StringUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StringUtil.java
deleted file mode 100644
index e914b600c..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StringUtil.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.util.regex.Pattern;
-
-/**
- * This is tool class for String processing.
- *
- * @author mengbo
- */
-public class StringUtil {
-
- // pattern to find all end-of-paragraph and end-of-line html tags
- // so they can be converted to newlines
- final private static Pattern htmlToNewline = Pattern.compile("</p>|<br>"); //$NON-NLS-1$
-
- // pattern to strip all <x> and </x> HTML tags
- final private static Pattern removeHTMLTags = Pattern.compile("<[/?\\w\\s=\"\\.\\#]+>"); //$NON-NLS-1$
-
- // pattern to find all runs of spaces longer than one
- final private static Pattern trimInteriorWhitespace = Pattern.compile("[ ]+"); //$NON-NLS-1$
-
- /**
- * Split a java variable name into words For example, "_aJavaVariable" will
- * split to "A Java Variable", "_aWTPPackageImplementation" will be "A WTP
- * Package Implementation"
- *
- * @param variable
- * @return String
- */
- public static String splitVariable(String variable) {
- StringBuffer output = new StringBuffer(""); //$NON-NLS-1$
- boolean isCapitalLeading = false;
- boolean isLastSpace = false;
-
- for (int i = 0, n = variable.length(); i < n; i++) {
- char letter = variable.charAt(i);
-
- if (letter == '_' || letter == '$') {
- output.append(" "); //$NON-NLS-1$
- isCapitalLeading = false;
- isLastSpace = true;
- continue;
- }
-
- if (Character.isLowerCase(letter)) {
- int nextIndex = i + 1;
- if (nextIndex < n) {
- char nextLetter = variable.charAt(nextIndex);
- if (Character.isUpperCase(nextLetter)) {
- if (isCapitalLeading) {
- output.append(letter);
- isLastSpace = false;
- } else {
- output.append(Character.toUpperCase(letter));
- isLastSpace = false;
- }
- if (!isLastSpace) {
- output.append(' ');
- isLastSpace = true;
- }
- isCapitalLeading = false;
- continue;
- }
- }
- }
- if (Character.isUpperCase(letter)) {
- int nextIndex = i + 1;
- if (nextIndex < n) {
- char nextLetter = variable.charAt(nextIndex);
- if (Character.isLowerCase(nextLetter)) {
- if (!isLastSpace) {
- output.append(' ');
- isLastSpace = true;
- }
- output.append(letter);
- isCapitalLeading = true;
- isLastSpace = false;
- continue;
- }
- }
- }
- if (isCapitalLeading) {
- output.append(letter);
- isLastSpace = false;
- } else {
- output.append(Character.toUpperCase(letter));
- isCapitalLeading = true;
- isLastSpace = false;
- }
- }
-
- return output.toString().trim();
- }
-
- /**
- * @param str1
- * @param str2
- * @return boolean
- *
- * Check if two strings match or not if str1=null and str2=null, it will
- * return true
- */
- public static boolean isSameString(String str1, String str2) {
- if (str1 == null) {
- return str2 == null;
- }
- return str1.equals(str2);
- }
-
- /**
- *
- * @param text
- * @return String Filter and convert a string, or normalize a string For
- * example,
- * <p>
- * test
- * </p>
- * test1<a/> will be converted to: test\ntest1
- *
- */
- public static String filterConvertString(String text) {
- if (text == null) {
- return ""; //$NON-NLS-1$
- }
-
- String result = htmlToNewline.matcher(text).replaceAll("\n"); //$NON-NLS-1$
- result = removeHTMLTags.matcher(result).replaceAll(""); //$NON-NLS-1$
- result = trimInteriorWhitespace.matcher(result).replaceAll(" "); //$NON-NLS-1$
-
- return result;
- }
-
- /**
- * Determine whether a string is empty or not Example: null string -> return
- * true; Example: "" string -> return true; Otherwise, will return false;
- * @param str
- *
- * @return true if str is null or empty
- */
- public static boolean isEmptyString(String str) {
- if (str == null || str.length() == 0) {
- return true;
- }
- return false;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StyleCombo.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StyleCombo.java
deleted file mode 100644
index 4eccfa6d8..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/StyleCombo.java
+++ /dev/null
@@ -1,1877 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.util.Arrays;
-
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.accessibility.ACC;
-import org.eclipse.swt.accessibility.AccessibleAdapter;
-import org.eclipse.swt.accessibility.AccessibleControlAdapter;
-import org.eclipse.swt.accessibility.AccessibleControlEvent;
-import org.eclipse.swt.accessibility.AccessibleEvent;
-import org.eclipse.swt.accessibility.AccessibleTextAdapter;
-import org.eclipse.swt.accessibility.AccessibleTextEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Layout;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.TypedListener;
-
-/**
- * The CCombo class represents a selectable user interface object that combines
- * a text field and a list and issues notification when an item is selected from
- * the list.
- * <p>
- * Note that although this class is a subclass of <code>Composite</code>, it
- * does not make sense to add children to it, or set a layout on it.
- * </p>
- * <dl>
- * <dt><b>Styles:</b>
- * <dd>BORDER, READ_ONLY, FLAT</dd>
- * <dt><b>Events:</b>
- * <dd>Selection</dd>
- * </dl>
- */
-public final class StyleCombo extends Composite {
-
- Text text;
-
- Table table;
-
- int visibleItemCount = 4;
-
- Shell popup;
-
- Button arrow;
-
- boolean hasFocus;
-
- Listener listener, filter;
-
- Color foreground, background;
-
- Font font;
-
- String defaultValue;
-
- /**
- * Constructs a new instance of this class given its parent and a style
- * value describing its behavior and appearance.
- * <p>
- * The style value is either one of the style constants defined in class
- * <code>SWT</code> which is applicable to instances of this class, or
- * must be built by <em>bitwise OR</em>'ing together (that is, using the
- * <code>int</code> "|" operator) two or more of those <code>SWT</code>
- * style constants. The class description lists the style constants that are
- * applicable to the class. Style bits are also inherited from superclasses.
- * </p>
- *
- * @param parent
- * a widget which will be the parent of the new instance (cannot
- * be null)
- * @param style
- * the style of widget to construct
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the parent is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the parent</li>
- * </ul>
- *
- * @see SWT#BORDER
- * @see SWT#READ_ONLY
- * @see SWT#FLAT
- */
- public StyleCombo(Composite parent, int style) {
- super(parent, style = checkStyle(style));
-
- listener = new Listener() {
- public void handleEvent(Event event) {
- if (popup == event.widget) {
- popupEvent(event);
- return;
- }
- if (text == event.widget) {
- textEvent(event);
- return;
- }
- if (table == event.widget) {
- tableEvent(event);
- return;
- }
- if (arrow == event.widget) {
- arrowEvent(event);
- return;
- }
- if (StyleCombo.this == event.widget) {
- comboEvent(event);
- return;
- }
- if (getShell() == event.widget) {
- handleFocus(SWT.FocusOut);
- }
- }
- };
-
- filter = new Listener() {
- public void handleEvent(Event event) {
- Shell shell = ((Control) event.widget).getShell();
- if (shell == StyleCombo.this.getShell()) {
- handleFocus(SWT.FocusOut);
- }
- }
- };
-
- int[] comboEvents = { SWT.Dispose, SWT.Move, SWT.Resize };
- for (int i = 0; i < comboEvents.length; i++)
- this.addListener(comboEvents[i], listener);
-
- createText(style);
- createArrow(style);
-
- createPopup(null, -1);
- initAccessible();
- }
-
- /**
- * @param style
- */
- private void createArrow(int style) {
- int arrowStyle = SWT.ARROW | SWT.DOWN;
- if ((style & SWT.FLAT) != 0) {
- arrowStyle |= SWT.FLAT;
- }
- arrow = new Button(this, arrowStyle);
- int[] arrowEvents = { SWT.Selection, SWT.FocusIn };
- for (int i = 0; i < arrowEvents.length; i++) {
- arrow.addListener(arrowEvents[i], listener);
- }
- }
-
- /**
- * @param style
- */
- private void createText(int style) {
- int textStyle = SWT.SINGLE;
- if ((style & SWT.READ_ONLY) != 0) {
- textStyle |= SWT.READ_ONLY;
- }
- if ((style & SWT.FLAT) != 0) {
- textStyle |= SWT.FLAT;
- }
- text = new Text(this, textStyle);
- int[] textEvents = { SWT.KeyDown, SWT.KeyUp, SWT.Modify, SWT.MouseDown,
- SWT.MouseUp, SWT.Traverse, SWT.FocusIn };
- for (int i = 0; i < textEvents.length; i++) {
- text.addListener(textEvents[i], listener);
- }
- }
-
- static int checkStyle(int style) {
- int mask = SWT.BORDER | SWT.READ_ONLY | SWT.FLAT | SWT.LEFT_TO_RIGHT
- | SWT.RIGHT_TO_LEFT;
- return style & mask;
- }
-
- /**
- * Adds the argument to the end of the receiver's list.
- *
- * @param string
- * the new item
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the string is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see #add(String,int)
- */
- public void add(String string) {
- checkWidget();
- if (string == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- TableItem item = new TableItem(table, SWT.NONE);
- item.setText(0, string);
- }
-
- /**
- * Adds the argument to the receiver's list at the given zero-relative
- * index.
- * <p>
- * Note: To add an item at the end of the list, use the result of calling
- * <code>getItemCount()</code> as the index or use
- * <code>add(String)</code>.
- * </p>
- *
- * @param string
- * the new item
- * @param index
- * the index for the item
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the string is null</li>
- * <li>ERROR_INVALID_RANGE - if the index is not between 0
- * and the number of elements in the list (inclusive)</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see #add(String)
- */
- public void add(String string, int index) {
- checkWidget();
- if (string == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- TableItem item = new TableItem(table, SWT.NONE, index);
- item.setText(0, string);
- }
-
- /**
- * Adds the listener to the collection of listeners who will be notified
- * when the receiver's text is modified, by sending it one of the messages
- * defined in the <code>ModifyListener</code> interface.
- *
- * @param listener1
- * the listener which should be notified
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the listener is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see ModifyListener
- * @see #removeModifyListener
- */
- public void addModifyListener(ModifyListener listener1) {
- checkWidget();
- if (listener1 == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- TypedListener typedListener = new TypedListener(listener1);
- addListener(SWT.Modify, typedListener);
- }
-
- /**
- * Adds the listener to the collection of listeners who will be notified
- * when the receiver's selection changes, by sending it one of the messages
- * defined in the <code>SelectionListener</code> interface.
- * <p>
- * <code>widgetSelected</code> is called when the combo's list selection
- * changes. <code>widgetDefaultSelected</code> is typically called when
- * ENTER is pressed the combo's text area.
- * </p>
- *
- * @param listener1
- * the listener which should be notified
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the listener is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see SelectionListener
- * @see #removeSelectionListener
- */
- public void addSelectionListener(SelectionListener listener1) {
- checkWidget();
- if (listener1 == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- TypedListener typedListener = new TypedListener(listener1);
- addListener(SWT.Selection, typedListener);
- addListener(SWT.DefaultSelection, typedListener);
- }
-
- void arrowEvent(Event event) {
- switch (event.type) {
- case SWT.FocusIn: {
- handleFocus(SWT.FocusIn);
- break;
- }
- case SWT.Selection: {
- dropDown(!isDropped());
- break;
- }
- }
- }
-
- /**
- * Sets the selection in the receiver's text field to an empty selection
- * starting just before the first character. If the text field is editable,
- * this has the effect of placing the i-beam at the start of the text.
- * <p>
- * Note: To clear the selected items in the receiver's list, use
- * <code>deselectAll()</code>.
- * </p>
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see #deselectAll
- */
- public void clearSelection() {
- checkWidget();
- text.clearSelection();
- table.deselectAll();
- }
-
- void comboEvent(Event event) {
- switch (event.type) {
- case SWT.Dispose:
- if (popup != null && !popup.isDisposed()) {
- table.removeListener(SWT.Dispose, listener);
- popup.dispose();
- }
- Shell shell = getShell();
- shell.removeListener(SWT.Deactivate, listener);
- Display display = getDisplay();
- display.removeFilter(SWT.FocusIn, filter);
- popup = null;
- text = null;
- table = null;
- arrow = null;
- break;
- case SWT.Move:
- dropDown(false);
- break;
- case SWT.Resize:
- internalLayout(false);
- break;
- }
- }
-
- private String[] getTableItems() {
- TableItem[] items = table.getItems();
- String[] values = new String[items.length];
- for (int i = 0; i < items.length; i++) {
- values[i] = items[i].getText(0);
- }
- return values;
- }
-
- public Point computeSize(int wHint, int hHint, boolean changed) {
- checkWidget();
- int width = 0, height = 0;
- String[] items = getTableItems();
- int textWidth = 0;
- GC gc = new GC(text);
- int spacer = gc.stringExtent(" ").x; //$NON-NLS-1$
- for (int i = 0; i < items.length; i++) {
- textWidth = Math.max(gc.stringExtent(items[i]).x, textWidth);
- }
- gc.dispose();
- Point textSize = text.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed);
- Point arrowSize = arrow.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed);
- Point listSize = table.computeSize(wHint, SWT.DEFAULT, changed);
- int borderWidth = getBorderWidth();
-
- height = Math.max(hHint, Math.max(textSize.y, arrowSize.y) + 2
- * borderWidth);
- width = Math.max(wHint, Math.max(textWidth + 2 * spacer + arrowSize.x
- + 2 * borderWidth, listSize.x));
- return new Point(width, height);
- }
-
- void createPopup(String[] items, int selectionIndex) {
- // create shell and list
- popup = new Shell(getShell(), SWT.NO_TRIM | SWT.ON_TOP);
- table = new Table(popup, SWT.SINGLE | SWT.V_SCROLL | SWT.FULL_SELECTION);
- new TableColumn(table, SWT.LEFT);
- if (font != null) {
- table.setFont(font);
- }
- if (foreground != null) {
- table.setForeground(foreground);
- }
- if (background != null) {
- table.setBackground(background);
- }
-
- int[] popupEvents = { SWT.Close, SWT.Paint, SWT.Deactivate };
- for (int i = 0; i < popupEvents.length; i++) {
- popup.addListener(popupEvents[i], listener);
- }
- int[] listEvents = { SWT.MouseUp, SWT.Selection, SWT.Traverse,
- SWT.KeyDown, SWT.KeyUp, SWT.FocusIn, SWT.FocusOut, SWT.Dispose };
- for (int i = 0; i < listEvents.length; i++) {
- table.addListener(listEvents[i], listener);
- }
- if (items != null) {
- setItems(items);
- }
- if (selectionIndex != -1) {
- select(selectionIndex);
- }
- }
-
- /**
- * Deselects the item at the given zero-relative index in the receiver's
- * list. If the item at the index was already deselected, it remains
- * deselected. Indices that are out of range are ignored.
- *
- * @param index
- * the index of the item to deselect
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void deselect(int index) {
- checkWidget();
- table.deselect(index);
- }
-
- /**
- * Deselects all selected items in the receiver's list.
- * <p>
- * Note: To clear the selection in the receiver's text field, use
- * <code>clearSelection()</code>.
- * </p>
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see #clearSelection
- */
- public void deselectAll() {
- checkWidget();
- table.deselectAll();
- }
-
- void dropDown(boolean drop) {
- if (drop == isDropped()) {
- return;
- }
- if (!drop) {
- popup.setVisible(false);
- table.getColumns()[0].setWidth(0);
- if (!isDisposed() && arrow.isFocusControl()) {
- text.setFocus();
- }
- return;
- }
-
- if (getShell() != popup.getParent()) {
- String[] items = getTableItems();
- int selectionIndex = table.getSelectionIndex();
- table.removeListener(SWT.Dispose, listener);
- popup.dispose();
- popup = null;
- table = null;
- createPopup(items, selectionIndex);
- }
-
- Point size = getSize();
- int itemCount = table.getItemCount();
- itemCount = (itemCount == 0) ? visibleItemCount : Math.min(
- visibleItemCount, itemCount);
- int itemHeight = table.getItemHeight() * itemCount;
- Point tableSize = table.computeSize(SWT.DEFAULT, itemHeight, false);
- // int tableWidth = this.getClientArea()
- table.setBounds(1, 1, Math.max(size.x - 2, tableSize.x), tableSize.y
- - table.getHorizontalBar().getSize().y + 2);
-
- int index = table.getSelectionIndex();
- if (index != -1) {
- table.setTopIndex(index);
- }
- Display display = getDisplay();
- Rectangle tableRect = table.getBounds();
- Rectangle parentRect = display.map(getParent(), null, getBounds());
- Point comboSize = getSize();
- Rectangle displayRect = getMonitor().getClientArea();
- int width = Math.max(comboSize.x, tableRect.width + 2);
- int height = tableRect.height + 2;
- int x = parentRect.x;
- int y = parentRect.y + comboSize.y;
- if (y + height > displayRect.y + displayRect.height) {
- y = parentRect.y - height;
- }
- popup.setBounds(x, y, width, height);
- popup.setVisible(true);
-
- if (table.getItemCount() > visibleItemCount) {
- table.getColumns()[0].setWidth(text.getSize().x - 2);
- } else {
- table.getColumns()[0].setWidth(table.getClientArea().width);
- }
- table.setFocus();
- }
-
- /*
- * Return the Label immediately preceding the receiver in the z-order, or
- * null if none.
- */
- Label getAssociatedLabel() {
- Control[] siblings = getParent().getChildren();
- for (int i = 0; i < siblings.length; i++) {
- if (siblings[i] == StyleCombo.this) {
- if (i > 0 && siblings[i - 1] instanceof Label) {
- return (Label) siblings[i - 1];
- }
- }
- }
- return null;
- }
-
- public Control[] getChildren() {
- checkWidget();
- return new Control[0];
- }
-
- /**
- * Gets the editable state.
- *
- * @return whether or not the reciever is editable
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @since 3.0
- */
- public boolean getEditable() {
- checkWidget();
- return text.getEditable();
- }
-
- /**
- * Returns the item at the given, zero-relative index in the receiver's
- * list. Throws an exception if the index is out of range.
- *
- * @param index
- * the index of the item to return
- * @return the item at the given index
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_INVALID_RANGE - if the index is not between 0
- * and the number of elements in the list minus 1 (inclusive)</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public String getItem(int index) {
- checkWidget();
- return table.getItem(index).getText(0);
- }
-
- /**
- * Returns the number of items contained in the receiver's list.
- *
- * @return the number of items
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public int getItemCount() {
- checkWidget();
- return table.getItemCount();
- }
-
- /**
- * Returns the height of the area which would be used to display
- * <em>one</em> of the items in the receiver's list.
- *
- * @return the height of one item
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public int getItemHeight() {
- checkWidget();
- return table.getItemHeight();
- }
-
- /**
- * Returns an array of <code>String</code>s which are the items in the
- * receiver's list.
- * <p>
- * Note: This is not the actual structure used by the receiver to maintain
- * its list of items, so modifying the array will not affect the receiver.
- * </p>
- *
- * @return the items in the receiver's list
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public String[] getItems() {
- checkWidget();
- return getTableItems();
- }
-
- char getMnemonic(String string) {
- int index = 0;
- int length = string.length();
- do {
- while ((index < length) && (string.charAt(index) != '&')) {
- index++;
- }
- if (++index >= length) {
- return '\0';
- }
- if (string.charAt(index) != '&') {
- return string.charAt(index);
- }
- index++;
- } while (index < length);
- return '\0';
- }
-
- /**
- * Returns a <code>Point</code> whose x coordinate is the start of the
- * selection in the receiver's text field, and whose y coordinate is the end
- * of the selection. The returned values are zero-relative. An "empty"
- * selection as indicated by the the x and y coordinates having the same
- * value.
- *
- * @return a point representing the selection start and end
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public Point getSelection() {
- checkWidget();
- return text.getSelection();
- }
-
- /**
- * Returns the zero-relative index of the item which is currently selected
- * in the receiver's list, or -1 if no item is selected.
- *
- * @return the index of the selected item
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public int getSelectionIndex() {
- checkWidget();
- return table.getSelectionIndex();
- }
-
- public int getStyle() {
- int style = super.getStyle();
- style &= ~SWT.READ_ONLY;
- if (!text.getEditable()) {
- style |= SWT.READ_ONLY;
- }
- return style;
- }
-
- /**
- * Returns a string containing a copy of the contents of the receiver's text
- * field.
- *
- * @return the receiver's text
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public String getText() {
- checkWidget();
- return text.getText();
- }
-
- /**
- * Returns the height of the receivers's text field.
- *
- * @return the text height
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public int getTextHeight() {
- checkWidget();
- return text.getLineHeight();
- }
-
- /**
- * Returns the maximum number of characters that the receiver's text field
- * is capable of holding. If this has not been changed by
- * <code>setTextLimit()</code>, it will be the constant
- * <code>Combo.LIMIT</code>.
- *
- * @return the text limit
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public int getTextLimit() {
- checkWidget();
- return text.getTextLimit();
- }
-
- /**
- * Gets the number of items that are visible in the drop down portion of the
- * receiver's list.
- *
- * @return the number of items that are visible
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @since 3.0
- */
- public int getVisibleItemCount() {
- checkWidget();
- return visibleItemCount;
- }
-
- void handleFocus(int type) {
- if (isDisposed()) {
- return;
- }
- switch (type) {
- case SWT.FocusIn: {
- if (hasFocus) {
- return;
- }
- if (getEditable()) {
- text.selectAll();
- }
- hasFocus = true;
- Shell shell = getShell();
- shell.removeListener(SWT.Deactivate, listener);
- shell.addListener(SWT.Deactivate, listener);
- Display display = getDisplay();
- display.removeFilter(SWT.FocusIn, filter);
- display.addFilter(SWT.FocusIn, filter);
- Event e = new Event();
- notifyListeners(SWT.FocusIn, e);
- break;
- }
- case SWT.FocusOut: {
- if (!hasFocus) {
- return;
- }
- Control focusControl = getDisplay().getFocusControl();
- if (focusControl == arrow || focusControl == table
- || focusControl == text) {
- return;
- }
- hasFocus = false;
- Shell shell = getShell();
- shell.removeListener(SWT.Deactivate, listener);
- Display display = getDisplay();
- display.removeFilter(SWT.FocusIn, filter);
- Event e = new Event();
- notifyListeners(SWT.FocusOut, e);
- break;
- }
- }
- }
-
- /**
- * Searches the receiver's list starting at the first item (index 0) until
- * an item is found that is equal to the argument, and returns the index of
- * that item. If no item is found, returns -1.
- *
- * @param string
- * the search item
- * @return the index of the item
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the string is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public int indexOf(String string) {
- checkWidget();
- if (string == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- return Arrays.asList(getTableItems()).indexOf(string);
- }
-
- /**
- * Searches the receiver's list starting at the given, zero-relative index
- * until an item is found that is equal to the argument, and returns the
- * index of that item. If no item is found or the starting index is out of
- * range, returns -1.
- *
- * @param string
- * the search item
- * @param start
- * the zero-relative index at which to begin the search
- * @return the index of the item
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the string is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public int indexOf(String string, int start) {
- checkWidget();
- if (string == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- String[] items = getTableItems();
- for (int i = start; i < items.length; i++) {
- if (items[i].equals(string)) {
- return i;
- }
- }
- return -1;
- }
-
- void initAccessible() {
- AccessibleAdapter accessibleAdapter = new AccessibleAdapter() {
- public void getName(AccessibleEvent e) {
- String name = null;
- Label label = getAssociatedLabel();
- if (label != null) {
- name = stripMnemonic(label.getText());
- }
- e.result = name;
- }
-
- public void getKeyboardShortcut(AccessibleEvent e) {
- String shortcut = null;
- Label label = getAssociatedLabel();
- if (label != null) {
- String text1 = label.getText();
- if (text1 != null) {
- char mnemonic = getMnemonic(text1);
- if (mnemonic != '\0') {
- shortcut = "Alt+" + mnemonic; //$NON-NLS-1$
- }
- }
- }
- e.result = shortcut;
- }
-
- public void getHelp(AccessibleEvent e) {
- e.result = getToolTipText();
- }
- };
- getAccessible().addAccessibleListener(accessibleAdapter);
- text.getAccessible().addAccessibleListener(accessibleAdapter);
- table.getAccessible().addAccessibleListener(accessibleAdapter);
-
- arrow.getAccessible().addAccessibleListener(new AccessibleAdapter() {
- public void getName(AccessibleEvent e) {
- e.result = isDropped() ? SWT.getMessage("SWT_Close") : SWT.getMessage("SWT_Open"); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- public void getKeyboardShortcut(AccessibleEvent e) {
- e.result = "Alt+Down Arrow"; //$NON-NLS-1$
- }
-
- public void getHelp(AccessibleEvent e) {
- e.result = getToolTipText();
- }
- });
-
- getAccessible().addAccessibleTextListener(new AccessibleTextAdapter() {
- public void getCaretOffset(AccessibleTextEvent e) {
- e.offset = text.getCaretPosition();
- }
- });
-
- getAccessible().addAccessibleControlListener(
- new AccessibleControlAdapter() {
- public void getChildAtPoint(AccessibleControlEvent e) {
- Point testPoint = toControl(e.x, e.y);
- if (getBounds().contains(testPoint)) {
- e.childID = ACC.CHILDID_SELF;
- }
- }
-
- public void getLocation(AccessibleControlEvent e) {
- Rectangle location = getBounds();
- Point pt = toDisplay(location.x, location.y);
- e.x = pt.x;
- e.y = pt.y;
- e.width = location.width;
- e.height = location.height;
- }
-
- public void getChildCount(AccessibleControlEvent e) {
- e.detail = 0;
- }
-
- public void getRole(AccessibleControlEvent e) {
- e.detail = ACC.ROLE_COMBOBOX;
- }
-
- public void getState(AccessibleControlEvent e) {
- e.detail = ACC.STATE_NORMAL;
- }
-
- public void getValue(AccessibleControlEvent e) {
- e.result = getText();
- }
- });
-
- text.getAccessible().addAccessibleControlListener(
- new AccessibleControlAdapter() {
- public void getRole(AccessibleControlEvent e) {
- e.detail = text.getEditable() ? ACC.ROLE_TEXT
- : ACC.ROLE_LABEL;
- }
- });
-
- arrow.getAccessible().addAccessibleControlListener(
- new AccessibleControlAdapter() {
- public void getDefaultAction(AccessibleControlEvent e) {
- e.result = isDropped() ? SWT.getMessage("SWT_Close") : SWT.getMessage("SWT_Open"); //$NON-NLS-1$ //$NON-NLS-2$
- }
- });
- }
-
- boolean isDropped() {
- return popup.getVisible();
- }
-
- public boolean isFocusControl() {
- checkWidget();
- if (text.isFocusControl() || arrow.isFocusControl()
- || table.isFocusControl() || popup.isFocusControl()) {
- return true;
- }
- return super.isFocusControl();
- }
-
- void internalLayout(boolean changed) {
- if (isDropped()) {
- dropDown(false);
- }
- Rectangle rect = getClientArea();
- int width = rect.width;
- int height = rect.height;
- Point arrowSize = arrow.computeSize(SWT.DEFAULT, height, changed);
- text.setBounds(0, 0, width - arrowSize.x, height);
- arrow.setBounds(width - arrowSize.x, 0, arrowSize.x, arrowSize.y);
- }
-
- void tableEvent(Event event) {
- switch (event.type) {
- case SWT.Dispose:
- if (getShell() != popup.getParent()) {
- String[] items = getTableItems();
- int selectionIndex = table.getSelectionIndex();
- popup = null;
- table = null;
- createPopup(items, selectionIndex);
- }
- break;
- case SWT.FocusIn: {
- handleFocus(SWT.FocusIn);
- break;
- }
- case SWT.MouseUp: {
- if (event.button != 1) {
- return;
- }
- dropDown(false);
- break;
- }
- case SWT.Selection: {
- int index = table.getSelectionIndex();
- if (index == -1)
- return;
- text.setText(table.getItem(index).getText());
- text.selectAll();
- table.setSelection(index);
- Event e = new Event();
- e.time = event.time;
- e.stateMask = event.stateMask;
- e.doit = event.doit;
- notifyListeners(SWT.Selection, e);
- event.doit = e.doit;
- break;
- }
- case SWT.Traverse: {
- switch (event.detail) {
- case SWT.TRAVERSE_RETURN:
- case SWT.TRAVERSE_ESCAPE:
- case SWT.TRAVERSE_ARROW_PREVIOUS:
- case SWT.TRAVERSE_ARROW_NEXT:
- event.doit = false;
- break;
- }
- Event e = new Event();
- e.time = event.time;
- e.detail = event.detail;
- e.doit = event.doit;
- e.character = event.character;
- e.keyCode = event.keyCode;
- notifyListeners(SWT.Traverse, e);
- event.doit = e.doit;
- event.detail = e.detail;
- break;
- }
- case SWT.KeyUp: {
- Event e = new Event();
- e.time = event.time;
- e.character = event.character;
- e.keyCode = event.keyCode;
- e.stateMask = event.stateMask;
- notifyListeners(SWT.KeyUp, e);
- break;
- }
- case SWT.KeyDown: {
- if (event.character == SWT.ESC) {
- // Escape key cancels popup list
- dropDown(false);
- }
- if ((event.stateMask & SWT.ALT) != 0
- && (event.keyCode == SWT.ARROW_UP || event.keyCode == SWT.ARROW_DOWN)) {
- dropDown(false);
- }
- if (event.character == SWT.CR) {
- // Enter causes default selection
- dropDown(false);
- Event e = new Event();
- e.time = event.time;
- e.stateMask = event.stateMask;
- notifyListeners(SWT.DefaultSelection, e);
- }
- // At this point the widget may have been disposed.
- // If so, do not continue.
- if (isDisposed()) {
- break;
- }
- Event e = new Event();
- e.time = event.time;
- e.character = event.character;
- e.keyCode = event.keyCode;
- e.stateMask = event.stateMask;
- notifyListeners(SWT.KeyDown, e);
- break;
-
- }
- }
- }
-
- void popupEvent(Event event) {
- switch (event.type) {
- case SWT.Paint:
- // draw black rectangle around list
- Rectangle listRect = table.getBounds();
- Color black = getDisplay().getSystemColor(SWT.COLOR_BLACK);
- event.gc.setForeground(black);
- event.gc.drawRectangle(0, 0, listRect.width + 1,
- listRect.height + 1);
- break;
- case SWT.Close:
- event.doit = false;
- dropDown(false);
- break;
- case SWT.Deactivate:
- dropDown(false);
- break;
- }
- }
-
- public void redraw() {
- super.redraw();
- text.redraw();
- arrow.redraw();
- if (popup.isVisible()) {
- table.redraw();
- }
- }
-
- public void redraw(int x, int y, int width, int height, boolean all) {
- super.redraw(x, y, width, height, true);
- }
-
- /**
- * Removes the item from the receiver's list at the given zero-relative
- * index.
- *
- * @param index
- * the index for the item
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_INVALID_RANGE - if the index is not between 0
- * and the number of elements in the list minus 1 (inclusive)</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void remove(int index) {
- checkWidget();
- table.remove(index);
- }
-
- /**
- * Removes the items from the receiver's list which are between the given
- * zero-relative start and end indices (inclusive).
- *
- * @param start
- * the start of the range
- * @param end
- * the end of the range
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_INVALID_RANGE - if either the start or end are
- * not between 0 and the number of elements in the list minus
- * 1 (inclusive)</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void remove(int start, int end) {
- checkWidget();
- table.remove(start, end);
- }
-
- /**
- * Searches the receiver's list starting at the first item until an item is
- * found that is equal to the argument, and removes that item from the list.
- *
- * @param string
- * the item to remove
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the string is null</li>
- * <li>ERROR_INVALID_ARGUMENT - if the string is not found
- * in the list</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void remove(String string) {
- checkWidget();
- if (string == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- int index = Arrays.asList(getTableItems()).indexOf(string);
- table.remove(index);
- }
-
- /**
- * Removes all of the items from the receiver's list and clear the contents
- * of receiver's text field.
- * <p>
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void removeAll() {
- checkWidget();
- text.setText(""); //$NON-NLS-1$
- table.removeAll();
- }
-
- /**
- * Removes the listener from the collection of listeners who will be
- * notified when the receiver's text is modified.
- *
- * @param listener1
- * the listener which should no longer be notified
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the listener is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see ModifyListener
- * @see #addModifyListener
- */
- public void removeModifyListener(ModifyListener listener1) {
- checkWidget();
- if (listener1 == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- removeListener(SWT.Modify, listener1);
- }
-
- /**
- * Removes the listener from the collection of listeners who will be
- * notified when the receiver's selection changes.
- *
- * @param listener1
- * the listener which should no longer be notified
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the listener is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @see SelectionListener
- * @see #addSelectionListener
- */
- public void removeSelectionListener(SelectionListener listener1) {
- checkWidget();
- if (listener1 == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- removeListener(SWT.Selection, listener1);
- removeListener(SWT.DefaultSelection, listener1);
- }
-
- /**
- * Selects the item at the given zero-relative index in the receiver's list.
- * If the item at the index was already selected, it remains selected.
- * Indices that are out of range are ignored.
- *
- * @param index
- * the index of the item to select
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void select(int index) {
- checkWidget();
- if (index == -1) {
- table.deselectAll();
- text.setText(""); //$NON-NLS-1$
- return;
- }
- if (0 <= index && index < table.getItemCount()) {
- if (index != getSelectionIndex()) {
- text.setText(table.getItem(index).getText());
- text.selectAll();
- table.select(index);
- table.showSelection();
- }
- }
- }
-
- public void setBackground(Color color) {
- super.setBackground(color);
- background = color;
- if (text != null) {
- text.setBackground(color);
- }
- if (table != null) {
- table.setBackground(color);
- }
- if (arrow != null) {
- arrow.setBackground(color);
- }
- }
-
- /**
- * Sets the editable state.
- *
- * @param editable
- * the new editable state
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @since 3.0
- */
- public void setEditable(boolean editable) {
- checkWidget();
- text.setEditable(editable);
- }
-
- public void setEnabled(boolean enabled) {
- super.setEnabled(enabled);
- if (popup != null) {
- popup.setVisible(false);
- }
- if (text != null) {
- text.setEnabled(enabled);
- }
- if (arrow != null) {
- arrow.setEnabled(enabled);
- }
- }
-
- public boolean setFocus() {
- checkWidget();
- return text.setFocus();
- }
-
- public void setFont(Font font) {
- super.setFont(font);
- this.font = font;
- text.setFont(font);
- table.setFont(font);
- internalLayout(true);
- }
-
- public void setForeground(Color color) {
- super.setForeground(color);
- foreground = color;
- if (text != null) {
- text.setForeground(color);
- }
- if (table != null) {
- table.setForeground(color);
- }
- if (arrow != null) {
- arrow.setForeground(color);
- }
- }
-
- /**
- * Sets the text of the item in the receiver's list at the given
- * zero-relative index to the string argument. This is equivalent to
- * <code>remove</code>'ing the old item at the index, and then
- * <code>add</code>'ing the new item at that index.
- *
- * @param index
- * the index for the item
- * @param string
- * the new text for the item
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_INVALID_RANGE - if the index is not between 0
- * and the number of elements in the list minus 1 (inclusive)</li>
- * <li>ERROR_NULL_ARGUMENT - if the string is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void setItem(int index, String string) {
- checkWidget();
- table.getItem(index).setText(0, string);
- }
-
- /**
- * Sets the receiver's list to be the given array of items.
- *
- * @param items
- * the array of items
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the items array is null</li>
- * <li>ERROR_INVALID_ARGUMENT - if an item in the items
- * array is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void setItems(String[] items) {
- checkWidget();
- if (items == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
-
- for (int i = 0; i < items.length; i++) {
- TableItem item = new TableItem(table, SWT.NONE);
- if (items[i].equals(defaultValue)) {
- item.setFont(JFaceResources.getFontRegistry().getBold(
- JFaceResources.DEFAULT_FONT));
- }
- item.setText(0, items[i]);
- }
- }
-
- /**
- * Sets the layout which is associated with the receiver to be the argument
- * which may be null.
- * <p>
- * Note : No Layout can be set on this Control because it already manages
- * the size and position of its children.
- * </p>
- *
- * @param layout
- * the receiver's new layout or null
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void setLayout(Layout layout) {
- checkWidget();
- return;
- }
-
- /**
- * Sets the selection in the receiver's text field to the range specified by
- * the argument whose x coordinate is the start of the selection and whose y
- * coordinate is the end of the selection.
- *
- * @param selection
- * a point representing the new selection start and end
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the point is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void setSelection(Point selection) {
- checkWidget();
- if (selection == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- text.setSelection(selection.x, selection.y);
- }
-
- /**
- * Sets the contents of the receiver's text field to the given string.
- * <p>
- * Note: The text field in a <code>Combo</code> is typically only capable
- * of displaying a single line of text. Thus, setting the text to a string
- * containing line breaks or other special characters will probably cause it
- * to display incorrectly.
- * </p>
- *
- * @param string
- * the new text
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_NULL_ARGUMENT - if the string is null</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void setText(String string) {
- checkWidget();
- if (string == null) {
- SWT.error(SWT.ERROR_NULL_ARGUMENT);
- }
- int index = Arrays.asList(getTableItems()).indexOf(string);
- if (index == -1) {
- table.deselectAll();
- text.setText(string);
- return;
- }
- text.setText(string);
- text.selectAll();
- table.setSelection(index);
- table.showSelection();
- }
-
- /**
- * Sets the maximum number of characters that the receiver's text field is
- * capable of holding to be the argument.
- *
- * @param limit
- * new text limit
- *
- * @exception IllegalArgumentException
- * <ul>
- * <li>ERROR_CANNOT_BE_ZERO - if the limit is zero</li>
- * </ul>
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- */
- public void setTextLimit(int limit) {
- checkWidget();
- text.setTextLimit(limit);
- }
-
- public void setToolTipText(String string) {
- checkWidget();
- super.setToolTipText(string);
- arrow.setToolTipText(string);
- text.setToolTipText(string);
- }
-
- public void setVisible(boolean visible) {
- super.setVisible(visible);
- if (!visible) {
- popup.setVisible(false);
- }
- }
-
- /**
- * Sets the number of items that are visible in the drop down portion of the
- * receiver's list.
- *
- * @param count
- * the new number of items to be visible
- *
- * @exception org.eclipse.swt.SWTException
- * <ul>
- * <li>ERROR_WIDGET_DISPOSED - if the receiver has been
- * disposed</li>
- * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
- * thread that created the receiver</li>
- * </ul>
- *
- * @since 3.0
- */
- public void setVisibleItemCount(int count) {
- checkWidget();
- if (count < 0) {
- return;
- }
- visibleItemCount = count;
- }
-
- String stripMnemonic(String string) {
- int index = 0;
- int length = string.length();
- do {
- while ((index < length) && (string.charAt(index) != '&')) {
- index++;
- }
- if (++index >= length) {
- return string;
- }
- if (string.charAt(index) != '&') {
- return string.substring(0, index - 1)
- + string.substring(index, length);
- }
- index++;
- } while (index < length);
- return string;
- }
-
- void textEvent(Event event) {
- switch (event.type) {
- case SWT.FocusIn: {
- handleFocus(SWT.FocusIn);
- break;
- }
- case SWT.KeyDown: {
- if (event.character == SWT.CR) {
- dropDown(false);
- Event e = new Event();
- e.time = event.time;
- e.stateMask = event.stateMask;
- notifyListeners(SWT.DefaultSelection, e);
- }
- // At this point the widget may have been disposed.
- // If so, do not continue.
- if (isDisposed()) {
- break;
- }
-
- if (event.keyCode == SWT.ARROW_UP
- || event.keyCode == SWT.ARROW_DOWN) {
- event.doit = false;
- if ((event.stateMask & SWT.ALT) != 0) {
- boolean dropped = isDropped();
- text.selectAll();
- if (!dropped) {
- setFocus();
- }
- dropDown(!dropped);
- break;
- }
-
- int oldIndex = getSelectionIndex();
- if (event.keyCode == SWT.ARROW_UP) {
- select(Math.max(oldIndex - 1, 0));
- } else {
- select(Math.min(oldIndex + 1, getItemCount() - 1));
- }
- if (oldIndex != getSelectionIndex()) {
- Event e = new Event();
- e.time = event.time;
- e.stateMask = event.stateMask;
- notifyListeners(SWT.Selection, e);
- }
- // At this point the widget may have been disposed.
- // If so, do not continue.
- if (isDisposed()) {
- break;
- }
- }
-
- // Further work : Need to add support for incremental search in
- // pop up list as characters typed in text widget
-
- Event e = new Event();
- e.time = event.time;
- e.character = event.character;
- e.keyCode = event.keyCode;
- e.stateMask = event.stateMask;
- notifyListeners(SWT.KeyDown, e);
- break;
- }
- case SWT.KeyUp: {
- Event e = new Event();
- e.time = event.time;
- e.character = event.character;
- e.keyCode = event.keyCode;
- e.stateMask = event.stateMask;
- notifyListeners(SWT.KeyUp, e);
- break;
- }
- case SWT.Modify: {
- table.deselectAll();
- Event e = new Event();
- e.time = event.time;
- notifyListeners(SWT.Modify, e);
- break;
- }
- case SWT.MouseDown: {
- if (event.button != 1) {
- return;
- }
- if (text.getEditable()) {
- return;
- }
- boolean dropped = isDropped();
- text.selectAll();
- if (!dropped) {
- setFocus();
- }
- dropDown(!dropped);
- break;
- }
- case SWT.MouseUp: {
- if (event.button != 1) {
- return;
- }
- if (text.getEditable()) {
- return;
- }
- text.selectAll();
- break;
- }
- case SWT.Traverse: {
- switch (event.detail) {
- case SWT.TRAVERSE_RETURN:
- case SWT.TRAVERSE_ARROW_PREVIOUS:
- case SWT.TRAVERSE_ARROW_NEXT:
- // The enter causes default selection and
- // the arrow keys are used to manipulate the list contents so
- // do not use them for traversal.
- event.doit = false;
- break;
- }
-
- Event e = new Event();
- e.time = event.time;
- e.detail = event.detail;
- e.doit = event.doit;
- e.character = event.character;
- e.keyCode = event.keyCode;
- notifyListeners(SWT.Traverse, e);
- event.doit = e.doit;
- event.detail = e.detail;
- break;
- }
- }
- }
-
- /**
- * @param defaultValue
- */
- public void setDefaultValue(String defaultValue) {
- this.defaultValue = defaultValue;
- int index = Arrays.asList(getTableItems()).indexOf(defaultValue);
- if (index != -1) {
- table.getItem(index).setFont(
- JFaceResources.getFontRegistry().getBold(
- JFaceResources.DEFAULT_FONT));
- }
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/UTF8Util.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/UTF8Util.java
deleted file mode 100644
index 31aac196b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/UTF8Util.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-/**
- * TODO: this class doesn't seem to be in use
- * @author mengbo
- * @version 1.5
- */
-public final class UTF8Util {
- private static final char[] HEX_DIGITS = { '0', '1', '2', '3', '4', '5',
- '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
-
- /**
- * @param s
- * @return the unwound string
- */
- public static String unwindEscapeChars(String s) {
- StringBuffer sb = new StringBuffer(s.length());
- int length = s.length();
- for (int i = 0; i < length; i++) {
- char c = s.charAt(i);
- sb.append(getUnwoundString(c));
- }
- return sb.toString();
- }
-
- private static String getUnwoundString(char c) {
- switch (c) {
- case '\b':
- return "\\b";//$NON-NLS-1$
- case '\t':
- return "\\t";//$NON-NLS-1$
- case '\n':
- return "\\n";//$NON-NLS-1$
- case '\f':
- return "\\f";//$NON-NLS-1$
- case '\r':
- return "\\r";//$NON-NLS-1$
-
- // These can be used unescaped in properties file:
- case '\"':
- return "\\\"";//$NON-NLS-1$
- case '\'':
- return "\\\'";//$NON-NLS-1$
-
- case '\\':
- return "\\\\";//$NON-NLS-1$
-
- case '=':
- return "\\=";//$NON-NLS-1$
-
- // This is only done when writing to the .properties file in
- // #unwindValue(String)
- // case '!':
- // return "\\!";//$NON-NLS-1$
- // case '#':
- // return "\\#";//$NON-NLS-1$
-
- default:
- if (((c < 0x0020) || (c > 0x007e))) {
- return new StringBuffer().append('\\').append('u').append(
- toHex((c >> 12) & 0xF)).append(toHex((c >> 8) & 0xF))
- .append(toHex((c >> 4) & 0xF)).append(toHex(c & 0xF))
- .toString();
-
- }
- return String.valueOf(c);
- }
- }
-
- private static char toHex(int halfByte) {
- return HEX_DIGITS[(halfByte & 0xF)];
- }
-
- private UTF8Util()
- {
- // no instantiation
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WebrootUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WebrootUtil.java
deleted file mode 100644
index 3a99bf308..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WebrootUtil.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.core.runtime.content.IContentTypeManager;
-import org.eclipse.jst.jsf.common.ui.IFileFolderConstants;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * Web app utility methods
- */
-public class WebrootUtil {
-
- /**
- * get the webpath for the project path. The project path is something like
- * "/projectname/webroot/filename.jsp", or "/projectname/webroot/folder".
- * The project information should be removed from project path, e.g,
- * "/filename.jsp" or "/folder/*";
- *
- * @param path
- * @return the web path
- */
- public static String getWebPath(IPath path) {
- String strWebrootPath = ""; //$NON-NLS-1$
- IProject project = WorkspaceUtil.getProjectFor(path);
- IPath webContentPath = getWebContentPath(project);
- if (webContentPath != null && webContentPath.isPrefixOf(path)) {
- int start = path.matchingFirstSegments(webContentPath);
- String[] segments = path.segments();
- for (int i = start, n = path.segmentCount(); i < n; i++) {
- strWebrootPath = strWebrootPath
- + IFileFolderConstants.PATH_SEPARATOR + segments[i];
- }
- }
- return strWebrootPath;
- }
-
- /**
- * To see if a resource is under the webcontent folder.
- *
- * @param resource
- * @return true if resource is within the web content folder hierarchy
- */
- public static boolean isUnderWebContentFolder(IResource resource) {
- IPath webContentPath = getWebContentPath(resource.getProject());
- if (webContentPath != null) {
- return webContentPath.isPrefixOf(resource.getFullPath());
- }
- return true;
- }
-
- /**
- * @param project
- * @return full path to web content folder
- */
- public static IPath getWebContentPath(IProject project) {
- if (project != null) {
- IVirtualComponent component = ComponentCore.createComponent(project);
- if (component != null) {
- IVirtualFolder rootFolder = component.getRootFolder();
- if (rootFolder != null) {
- IContainer underlyingFolder = rootFolder.getUnderlyingFolder();
- if (underlyingFolder != null) {
- return underlyingFolder.getFullPath();
- }
- }
- }
- }
- return null;
- }
-
- /**
- * Return the name of the web content folder. i.e, "WebContent"
- *
- * @param project
- * @return the web content folder name
- */
- public static String getWebContentFolderName(IProject project) {
- IPath webContentPath = getWebContentPath(project);
- if (webContentPath != null)
- return webContentPath.lastSegment();
- return null;
- }
-
- /**
- * @param project
- * @return folder where for web content
- */
- public static IFolder getWebContentFolder(IProject project) {
- IPath webContentPath = getWebContentPath(project);
- IFolder folder = null;
- if (webContentPath != null) {
- folder = project.getFolder(webContentPath.removeFirstSegments(1));
- }
- return folder;
- }
-
- /**
- * return the depth of webcontent folder. For example, if the webcontent
- * folder path is /projectname/webContent, then return 2, if it's
- * /projectname/a/webContent, then return 3.
- *
- * @param project
- * @return the depth of webcontent folder
- */
- public static int getWebContentFolderDepth(IProject project) {
- if (project != null) {
- IPath webContentPath = getWebContentPath(project);
- if (webContentPath != null) {
- return webContentPath.segmentCount();
- }
- }
- // default to 2
- return 2;
- }
-
- /**
- * determine the path of web file is valid or not
- *
- * @param path -
- * the path of web file
- * @return - true - valid web file
- */
- public static boolean isValidWebFile(IPath path) {
- String[] jspExtensions = getJSPFileExtensions();
-
- String extension = path.getFileExtension();
- if (extension != null
- && Arrays.asList(jspExtensions).contains(extension))
- {
- return true;
- }
-
- return false;
- }
-
- /**
- * get the webpath for the project path. The project path is something like
- * "/projectname/webroot/filename.jsp", or "/projectname/webroot/folder".
- * The project information should be removed from project path, e.g,
- * "/filename.jsp" or "/folder/*";
- *
- * @param strPath -
- * the project path
- * @return - web path remove from "/projectname/webroot"
- * @deprecated use getWebPath(IPath path) instead.
- */
- public static String getWebPath(String strPath) {
- String strWebrootPath = ""; //$NON-NLS-1$
- if (strPath != null) {
- IPath path = new Path(strPath);
- return getWebPath(path);
- }
- return strWebrootPath;
- }
-
- /**
- * @param strWebPath
- * @return the page name
- */
- public static String getPageNameFromWebPath(String strWebPath) {
- String pageName = strWebPath;
-
- if (pageName.startsWith(IFileFolderConstants.PATH_SEPARATOR)) {
- pageName = pageName.substring(1);
- }
-
- String[] jspExtensions = getJSPFileExtensions();
- for (int i = 0, n = jspExtensions.length; i < n; i++) {
- String extension = IFileFolderConstants.DOT + jspExtensions[i];
- if (pageName.endsWith(extension)) {
- pageName = pageName.substring(0, pageName.length()
- - extension.length());
- break;
- }
- }
-
- return pageName;
- }
- /**
- * Get the JSP file extension from Eclipse preference
- * Windows->Preferences->General->Content Types
- *
- * @return String Array for JSP file extensions
- */
- public static String[] getJSPFileExtensions() {
- IContentTypeManager typeManager = Platform.getContentTypeManager();
- IContentType jspContentType = typeManager
- .getContentType("org.eclipse.jst.jsp.core.jspsource"); //$NON-NLS-1$
- if (jspContentType != null) {
- return jspContentType
- .getFileSpecs(IContentType.FILE_EXTENSION_SPEC);
- }
- return null;
- }
-
- /**
- * Tests if the passed IProject instance is a valid JSF project in the
- * following ways:
- * <ul>
- * <li>project is not null and is accessible, </li>
- * <li>project has the "jst.web" facet set on it.</li>
- * </ul>
- *
- * @param project
- * IProject instance to be tested.
- * @return true if the IProject instance is a valid JSF project, else false.
- */
- public static boolean isValidWebProject(IProject project) {
- boolean isValid = false;
- // check for null or inaccessible project
- if (project != null && project.isAccessible()) {
- // TODO: this was jst.jsf before, but we are checking for jst.web
- // the javadoc seems out of sync with the method name
- // check for "jst.web" facet on project
- try {
- IFacetedProject facetedProject = ProjectFacetsManager
- .create(project);
- if (facetedProject != null) {
- Set projectFacets = facetedProject.getProjectFacets();
- Iterator itProjectFacets = projectFacets.iterator();
- while (itProjectFacets.hasNext()) {
- IProjectFacetVersion projectFacetVersion = (IProjectFacetVersion) itProjectFacets
- .next();
- IProjectFacet projectFacet = projectFacetVersion
- .getProjectFacet();
- if ("jst.web".equals(projectFacet.getId())) { //$NON-NLS-1$
- isValid = true;
- break;
- }
- }
- }
- } catch (CoreException ce) {
- JSFUICommonPlugin.getLogger(WebrootUtil.class).error("checking web project", ce); //$NON-NLS-1$
- }
- }
- return isValid;
- }
-}
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WorkspaceUtil.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WorkspaceUtil.java
deleted file mode 100644
index 6c5dcba5d..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/utils/WorkspaceUtil.java
+++ /dev/null
@@ -1,283 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.utils;
-
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.InputStream;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jst.jsf.common.ui.IFileFolderConstants;
-import org.eclipse.jst.jsf.common.ui.JSFUICommonPlugin;
-import org.eclipse.jst.jsf.common.ui.internal.logging.Logger;
-
-/**
- * TODO: This class should be abstract to common utility.
- *
- * This class implements management of resource in a workspace.
- */
-public final class WorkspaceUtil {
- /** log instance */
- private static final Logger log = JSFUICommonPlugin
- .getLogger(WorkspaceUtil.class);
-
- private WorkspaceUtil() {
- // no external instantiation
- }
-
- /**
- * Create the given file in the workspace resource info tree.
- * @param resource
- * @param contents
- */
- public static void ensureExistsInWorkspace(final IFile resource,
- final InputStream contents) {
- if (resource == null) {
- return;
- }
- IWorkspaceRunnable body = new IWorkspaceRunnable() {
- public void run(IProgressMonitor monitor) throws CoreException {
- if (resource.exists()) {
- resource.setContents(contents, true, false, null);
- } else {
- ensureExistsInWorkspace(resource.getParent(), true);
- resource.create(contents, true, null);
- }
- }
- };
- try {
- ResourcesPlugin.getWorkspace().run(body, null);
- } catch (CoreException e) {
- // Test.EclipseWorkspaceTest.Error.FileCreationInWorkspace = Fail in
- // creating file:{0} in the workspace resource info tree.
- log
- .error(
- "Test.EclipseWorkspaceTest.Error.FileCreationInWorkspace", resource.getName(), e);//$NON-NLS-1$
- }
- }
-
- /**
- * Create the given file in the workspace resource info tree.
- * @param resource
- * @param contents
- */
- public static void ensureExistsInWorkspace(IFile resource, String contents) {
- // FIXME: We'll need some way for handing file encoding.
- ensureExistsInWorkspace(resource, new ByteArrayInputStream(contents
- .getBytes()));
- }
-
- /**
- * Create the given resource in the workspace resource info tree.
- * @param resource
- * @param local
- */
- public static void ensureExistsInWorkspace(final IResource resource,
- final boolean local) {
- IWorkspaceRunnable body = new IWorkspaceRunnable() {
- public void run(IProgressMonitor monitor) throws CoreException {
- create(resource, local);
- }
- };
- try {
- ResourcesPlugin.getWorkspace().run(body, null);
- } catch (CoreException e) {
- // Test.EclipseWorkspaceTest.Error.ResourceCreationInWorkspace =
- // Fail in creating resource:{0} in the workspace resource info
- // tree.
- log
- .error(
- "Test.EclipseWorkspaceTest.Error.ResourceCreationInWorkspace", resource.getName(), e);//$NON-NLS-1$
- }
- }
-
- /**
- * crate the resource if the resource is not existed, create a new one.
- *
- * @param resource -
- * resource instance
- * @param local -
- * a flag controlling whether or not the folder will be local
- * after the creation
- * @throws CoreException
- */
- protected static void create(final IResource resource, boolean local)
- throws CoreException {
- if (resource == null || resource.exists()) {
- return;
- }
- if (!resource.getParent().exists()) {
- create(resource.getParent(), local);
- }
- switch (resource.getType()) {
- case IResource.FILE:
- ((IFile) resource).create(local ? new ByteArrayInputStream(
- new byte[0]) : null, true, getMonitor());
- break;
- case IResource.FOLDER:
- ((IFolder) resource).create(true, local, getMonitor());
- break;
- case IResource.PROJECT:
- ((IProject) resource).create(getMonitor());
- ((IProject) resource).open(getMonitor());
- break;
- }
- }
-
- /**
- * create and return a NullProgressMonitor
- *
- * @return - NullProgressMonitor
- */
- public static IProgressMonitor getMonitor() {
- return new NullProgressMonitor();
- }
-
- /**
- * Get the project reference for a given path
- *
- * @param path -
- * the path
- * @return IProject - the project reference
- */
- public static IProject getProjectFor(IPath path) {
- String[] segs = path.segments();
- String projectPath = new String();
- IProject[] projects = ResourcesPlugin.getWorkspace().getRoot()
- .getProjects();
- IProject project = null;
- for (int p = 0; p < projects.length; p++) {
- if (projects[p].isOpen()) {
- for (int s = 0; s < segs.length; s++) {
- if (segs[s].equalsIgnoreCase(projects[p].getName())) {
- // Once we have a match on the project name, then
- // the remainder of the segments equals the project path
- for (int s2 = s + 1; s2 < segs.length; s2++) {
- projectPath = projectPath
- + IFileFolderConstants.PATH_SEPARATOR
- + segs[s2];
- }
- project = projects[p];
- break;
- }
- }
- }
- }
- if (project == null) {
- return null;
- }
-
- // TODO: still don't understand why this refreshLocal is necessary
- // for now, going to only allow it if this method is called
- // when the tree isn't locked. This shouldn't cause a regression, since
- // when the call fails currently things keep on going due to the catch
- if (!project.getWorkspace().isTreeLocked())
- {
- try {
- project.refreshLocal(IResource.DEPTH_INFINITE, null);
- } catch (CoreException e) {
- // TODO C.B.:pushing this down to a warning because it creates really
- // spurious output. Don't know why we are calling refreshLocal at all.
- JSFUICommonPlugin.getLogger(WorkspaceUtil.class).info("Error.RefreshingLocal", e); //$NON-NLS-1$
- }
- }
-
- IResource res = project.findMember(new Path(projectPath));
- if ((res != null) && (res.exists())) {
- return project;
- }
- return null;
- }
-
- /**
- * Get the project reference for a given file
- *
- * @param file -
- * the IFile file reference
- * @return IProject - the project reference
- */
- public static IProject getProjectFor(IFile file) {
- IPath testPath = new Path(file.getFullPath().toOSString());
- return getProjectFor(testPath);
- }
-
- /**
- * Get the project reference for a given file
- *
- * @param file -
- * the File file reference
- * @return IProject - the project reference
- */
- public static IProject getProjectFor(File file) {
- IPath testPath = new Path(file.getAbsolutePath());
- return getProjectFor(testPath);
- }
-
- /**
- * Get the project-relative resource reference for a given path
- *
- * @param path -
- * the path
- * @return IResource - the project-relative resource
- */
- public static IResource getProjectRelativeResource(IPath path) {
- String[] segs = path.segments();
- String projectPath = new String();
- IProject[] projects = ResourcesPlugin.getWorkspace().getRoot()
- .getProjects();
- IProject project = null;
- for (int p = 0; p < projects.length; p++) {
- if (projects[p].isOpen()) {
- for (int s = 0; s < segs.length; s++) {
- if (segs[s].equalsIgnoreCase(projects[p].getName())) {
- // Once we have a match on the project name, then
- // the remainder of the segments equals the project path
- for (int s2 = s + 1; s2 < segs.length; s2++) {
- projectPath = projectPath
- + IFileFolderConstants.PATH_SEPARATOR
- + segs[s2];
- }
- project = projects[p];
- break;
- }
- }
- }
- }
- if (project == null) {
- return null;
- }
-
- return project.getFile(projectPath);
- }
-
- /**
- * Get the project-relative resource reference for a given file
- *
- * @param file -
- * the File file reference
- * @return IResource - the project-relative resource
- */
- public static IResource getProjectRelativeResource(File file) {
- IPath testPath = new Path(file.getAbsolutePath());
- return getProjectRelativeResource(testPath);
- }
-}

Back to the top