### Eclipse Workspace Patch 1.0
#P org.eclipse.pde.p2.ui
Index: .classpath
===================================================================
RCS file: .classpath
diff -N .classpath
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ .classpath 1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,7 @@
+
+
June 2, 2006
+The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at http://www.eclipse.org/legal/epl-v10.html. +For purposes of the EPL, "Program" will mean the Content.
+ +If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") 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 +and such source code may be obtained at http://www.eclipse.org.
+ + + Index: src/org/eclipse/pde/internal/p2/ui/provisioner/ProvisionerMessages.java =================================================================== RCS file: src/org/eclipse/pde/internal/p2/ui/provisioner/ProvisionerMessages.java diff -N src/org/eclipse/pde/internal/p2/ui/provisioner/ProvisionerMessages.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/pde/internal/p2/ui/provisioner/ProvisionerMessages.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,43 @@ +/******************************************************************************* + * Copyright (c) 2008 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 + ******************************************************************************/ +package org.eclipse.pde.internal.p2.ui.provisioner; + +import org.eclipse.osgi.util.NLS; + +public class ProvisionerMessages extends NLS { + private static final String BUNDLE_NAME = "org.eclipse.pde.internal.p2.ui.provisioner.ProvisionerMessages"; //$NON-NLS-1$ + public static String P2TargetProvisionerWizard_1; + public static String P2TargetProvisionerWizard_10; + public static String P2TargetProvisionerWizard_2; + public static String P2TargetProvisionerWizard_3; + public static String P2TargetProvisionerWizard_7; + public static String P2TargetProvisionerWizard_9; + public static String P2TargetProvisionerWizardPage_0; + public static String P2TargetProvisionerWizardPage_1; + public static String P2TargetProvisionerWizardPage_10; + public static String P2TargetProvisionerWizardPage_11; + public static String P2TargetProvisionerWizardPage_12; + public static String P2TargetProvisionerWizardPage_13; + public static String P2TargetProvisionerWizardPage_16; + public static String P2TargetProvisionerWizardPage_17; + public static String P2TargetProvisionerWizardPage_3; + public static String P2TargetProvisionerWizardPage_4; + public static String P2TargetProvisionerWizardPage_5; + public static String P2TargetProvisionerWizardPage_6; + public static String P2TargetProvisionerWizardPage_7; + public static String P2TargetProvisionerWizardPage_8; + public static String P2TargetProvisionerWizardPage_9; + static { + // initialize resource bundle + NLS.initializeMessages(BUNDLE_NAME, ProvisionerMessages.class); + } + + private ProvisionerMessages() { + } +} Index: src/org/eclipse/pde/internal/p2/ui/PixelConverter.java =================================================================== RCS file: src/org/eclipse/pde/internal/p2/ui/PixelConverter.java diff -N src/org/eclipse/pde/internal/p2/ui/PixelConverter.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/pde/internal/p2/ui/PixelConverter.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,58 @@ +/******************************************************************************* + * Copyright (c) 2000, 2006 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 + *******************************************************************************/ +package org.eclipse.pde.internal.p2.ui; + +import org.eclipse.jface.dialogs.Dialog; +import org.eclipse.jface.dialogs.DialogPage; +import org.eclipse.swt.graphics.FontMetrics; +import org.eclipse.swt.graphics.GC; +import org.eclipse.swt.widgets.Control; + +public class PixelConverter { + + private FontMetrics fFontMetrics; + + public PixelConverter(Control control) { + GC gc = new GC(control); + gc.setFont(control.getFont()); + fFontMetrics = gc.getFontMetrics(); + gc.dispose(); + } + + /** + * @see DialogPage#convertHeightInCharsToPixels + */ + public int convertHeightInCharsToPixels(int chars) { + return Dialog.convertHeightInCharsToPixels(fFontMetrics, chars); + } + + /** + * @see DialogPage#convertHorizontalDLUsToPixels + */ + public int convertHorizontalDLUsToPixels(int dlus) { + return Dialog.convertHorizontalDLUsToPixels(fFontMetrics, dlus); + } + + /** + * @see DialogPage#convertVerticalDLUsToPixels + */ + public int convertVerticalDLUsToPixels(int dlus) { + return Dialog.convertVerticalDLUsToPixels(fFontMetrics, dlus); + } + + /** + * @see DialogPage#convertWidthInCharsToPixels + */ + public int convertWidthInCharsToPixels(int chars) { + return Dialog.convertWidthInCharsToPixels(fFontMetrics, chars); + } + +} Index: src/org/eclipse/pde/internal/p2/ui/provisioner/P2TargetProvisionerWizardPage.java =================================================================== RCS file: src/org/eclipse/pde/internal/p2/ui/provisioner/P2TargetProvisionerWizardPage.java diff -N src/org/eclipse/pde/internal/p2/ui/provisioner/P2TargetProvisionerWizardPage.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/pde/internal/p2/ui/provisioner/P2TargetProvisionerWizardPage.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,405 @@ +/******************************************************************************* + * Copyright (c) 2008 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 + ******************************************************************************/ +package org.eclipse.pde.internal.p2.ui.provisioner; + +import java.io.File; +import java.net.URL; + +import org.eclipse.core.resources.ResourcesPlugin; +import org.eclipse.core.runtime.IPath; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Status; +import org.eclipse.equinox.internal.provisional.p2.core.ProvisionException; +import org.eclipse.equinox.internal.provisional.p2.engine.ProvisioningContext; +import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit; +import org.eclipse.equinox.internal.provisional.p2.metadata.repository.IMetadataRepositoryManager; +import org.eclipse.equinox.internal.provisional.p2.ui.IRepositoryManipulator; +import org.eclipse.equinox.internal.provisional.p2.ui.actions.PropertyDialogAction; +import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.AvailableIUGroup; +import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.DefaultMetadataURLValidator; +import org.eclipse.equinox.internal.provisional.p2.ui.dialogs.URLValidator; +import org.eclipse.equinox.internal.provisional.p2.ui.operations.AddColocatedRepositoryOperation; +import org.eclipse.equinox.internal.provisional.p2.ui.operations.ProvisioningOperation; +import org.eclipse.equinox.internal.provisional.p2.ui.operations.ProvisioningUtil; +import org.eclipse.equinox.internal.provisional.p2.ui.operations.RemoveColocatedRepositoryOperation; +import org.eclipse.equinox.internal.provisional.p2.ui.sdk.ProvPolicies; +import org.eclipse.equinox.internal.provisional.p2.ui.sdk.RepositoryManipulationDialog; +import org.eclipse.jface.action.IAction; +import org.eclipse.jface.dialogs.IDialogSettings; +import org.eclipse.jface.viewers.ISelectionChangedListener; +import org.eclipse.jface.viewers.SelectionChangedEvent; +import org.eclipse.jface.window.SameShellProvider; +import org.eclipse.jface.wizard.WizardPage; +import org.eclipse.pde.internal.p2.ui.PDEP2Plugin; +import org.eclipse.pde.internal.p2.ui.SWTUtil; +import org.eclipse.swt.SWT; +import org.eclipse.swt.events.ModifyEvent; +import org.eclipse.swt.events.ModifyListener; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.program.Program; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.DirectoryDialog; +import org.eclipse.swt.widgets.Group; +import org.eclipse.swt.widgets.Link; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.swt.widgets.Text; + +/** + * Wizard page allowing users to select which IUs they would like to download + * and where they would like them to be downloaded to. + * + * @since 3.4 + * @see P2TargetProvisionerWizard + */ +public class P2TargetProvisionerWizardPage extends WizardPage { + + /** + * Default location to download IUs to, will be created if it does not exist. + * Will be appended to the current workspace. + */ + private static final String DEFAULT_DIR_NAME = ".metadata/.plugins/org.eclipse.pde.core/target_plugins"; //$NON-NLS-1$; + // state constants + private static final String USE_DEFAULT = "useDefault"; //$NON-NLS-1$ + private static final String CLEAR_CONTENTS = "clearContents"; //$NON-NLS-1$ + private static final String FOLDER_NAME = "folderName"; //$NON-NLS-1$ + + static final IStatus BAD_IU_SELECTION = new Status(IStatus.ERROR, PDEP2Plugin.getUniqueIdentifier(), ProvisionerMessages.P2TargetProvisionerWizardPage_1); + private static final IStatus DIR_DOES_NOT_EXIST = new Status(IStatus.ERROR, PDEP2Plugin.getUniqueIdentifier(), ProvisionerMessages.P2TargetProvisionerWizardPage_3); + + private IStatus fDirectoryStatus = Status.OK_STATUS; + IStatus fSelectedIUStatus = BAD_IU_SELECTION; + + private String previousLocation; + IInstallableUnit[] fUnits; + + private Link fLocationLink; + private Text fInstallLocation; + private Button fUseDefaultsButton; + private Button fBrowseButton; + private Button fClearContentsButton; + + AvailableIUGroup fAvailableIUGroup; + Button fPropertiesButton; + private IAction fPropertyAction; + private IRepositoryManipulator fManipulator; + + protected P2TargetProvisionerWizardPage(String pageName) { + super(pageName); + } + + /* (non-Javadoc) + * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite) + */ + public void createControl(Composite parent) { + Composite composite = new Composite(parent, SWT.NONE); + composite.setLayout(new GridLayout()); + composite.setLayoutData(new GridData(GridData.FILL_BOTH)); + composite.setFont(parent.getFont()); + + createInstallFolderArea(composite); + createAvailableIUArea(composite); + + setPageComplete(false); + restoreWidgetState(); + setControl(composite); + } + + /** + * Create the UI area where the user will choose what directory to download + * bundles to. The user can choose to use the default area and they can choose + * to delete the contents of the folder before downloading. + * + * @param composite parent composite + */ + private void createInstallFolderArea(Composite composite) { + Composite locationComp = new Composite(composite, SWT.NONE); + locationComp.setLayout(new GridLayout(3, false)); + locationComp.setFont(composite.getFont()); + locationComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + + fUseDefaultsButton = new Button(locationComp, SWT.CHECK | SWT.RIGHT); + GridData gd = new GridData(); + gd.horizontalSpan = 3; + fUseDefaultsButton.setLayoutData(gd); + fUseDefaultsButton.setText(ProvisionerMessages.P2TargetProvisionerWizardPage_4); + fUseDefaultsButton.setSelection(true); + fUseDefaultsButton.addSelectionListener(new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + Button button = (Button) e.getSource(); + if (button.getSelection()) { + fInstallLocation.setEnabled(false); + fBrowseButton.setEnabled(false); + previousLocation = fInstallLocation.getText(); + fInstallLocation.setText(getDefaultDownloadLocation()); + } else { + fInstallLocation.setEnabled(true); + fBrowseButton.setEnabled(true); + fInstallLocation.setText(previousLocation); + } + + } + }); + fUseDefaultsButton.setSelection(true); + + fLocationLink = new Link(locationComp, SWT.NONE); + fLocationLink.setText("" + ProvisionerMessages.P2TargetProvisionerWizardPage_0 + ""); //$NON-NLS-1$ //$NON-NLS-2$ + fLocationLink.addSelectionListener(new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + try { + File file = getDownloadLocation(true); + if (file != null && file.isDirectory()) + Program.launch(file.getCanonicalPath()); + else + setErrorMessage(ProvisionerMessages.P2TargetProvisionerWizardPage_5); + } catch (Exception ex) { + setErrorMessage(ProvisionerMessages.P2TargetProvisionerWizardPage_6 + ex.getMessage()); + } + } + }); + + fInstallLocation = new Text(locationComp, SWT.BORDER); + gd = new GridData(GridData.FILL_HORIZONTAL); + fInstallLocation.setLayoutData(gd); + previousLocation = getDefaultDownloadLocation(); + fInstallLocation.setText(previousLocation); + fInstallLocation.setEnabled(false); + fInstallLocation.addModifyListener(new ModifyListener() { + public void modifyText(ModifyEvent e) { + File location = getDownloadLocation(false); + if (location == null || (!location.exists() && !fUseDefaultsButton.getSelection())) { + fDirectoryStatus = DIR_DOES_NOT_EXIST; + } else { + fDirectoryStatus = Status.OK_STATUS; + } + pageChanged(); + } + }); + + fBrowseButton = new Button(locationComp, SWT.PUSH); + fBrowseButton.setText(ProvisionerMessages.P2TargetProvisionerWizardPage_7); + fBrowseButton.addSelectionListener(new SelectionAdapter() { + public void widgetSelected(SelectionEvent event) { + handleLocationBrowseButtonPressed(); + } + }); + fBrowseButton.setEnabled(false); + fBrowseButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_END)); + SWTUtil.setButtonDimensionHint(fBrowseButton); + + fClearContentsButton = new Button(locationComp, SWT.CHECK | SWT.RIGHT); + gd = new GridData(); + gd.horizontalSpan = 3; + fClearContentsButton.setLayoutData(gd); + fClearContentsButton.setText(ProvisionerMessages.P2TargetProvisionerWizardPage_8); + fClearContentsButton.setSelection(false); + + } + + /** + * Create the UI area where the user will be able to select which IUs they + * would like to download. There will also be buttons to see properties for + * the selection and open the manage sites dialog. + * + * @param composite parent composite + */ + private void createAvailableIUArea(Composite composite) { + Group mainGroup = new Group(composite, SWT.NONE); + mainGroup.setText(ProvisionerMessages.P2TargetProvisionerWizardPage_9); + mainGroup.setLayout(new GridLayout(2, false)); + mainGroup.setFont(composite.getFont()); + mainGroup.setLayoutData(new GridData(GridData.FILL_BOTH)); + fAvailableIUGroup = new AvailableIUGroup(mainGroup, ProvPolicies.getDefault().getQueryProvider(), mainGroup.getFont(), new ProvisioningContext()); + fAvailableIUGroup.getStructuredViewer().addSelectionChangedListener(new ISelectionChangedListener() { + public void selectionChanged(SelectionChangedEvent event) { + fUnits = fAvailableIUGroup.getSelectedIUs(); + fPropertiesButton.setEnabled(fUnits.length > 0); + if (fUnits.length > 0) { + fSelectedIUStatus = Status.OK_STATUS; + } else { + fSelectedIUStatus = BAD_IU_SELECTION; + } + pageChanged(); + } + }); + fAvailableIUGroup.setUseBoldFontForFilteredItems(true); + GridData data = (GridData) fAvailableIUGroup.getStructuredViewer().getControl().getLayoutData(); + data.heightHint = 200; + + Composite iuButtonComp = new Composite(mainGroup, SWT.NONE); + iuButtonComp.setLayout(new GridLayout(1, false)); + iuButtonComp.setFont(mainGroup.getFont()); + iuButtonComp.setLayoutData(new GridData(GridData.FILL_BOTH)); + + fPropertiesButton = new Button(iuButtonComp, SWT.PUSH); + fPropertiesButton.setText(ProvisionerMessages.P2TargetProvisionerWizardPage_10); + fPropertiesButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + fPropertiesButton.addSelectionListener(new SelectionAdapter() { + public void widgetSelected(SelectionEvent event) { + fPropertyAction.run(); + } + }); + fPropertyAction = new PropertyDialogAction(new SameShellProvider(getShell()), fAvailableIUGroup.getStructuredViewer()); + + fManipulator = new IRepositoryManipulator(){ + public String getManipulatorLabel() { + return ProvisionerMessages.P2TargetProvisionerWizardPage_11; + } + public boolean manipulateRepositories(Shell shell) { + new RepositoryManipulationDialog(shell, this).open(); + return true; + } + public ProvisioningOperation getAddOperation(URL repoURL) { + return new AddColocatedRepositoryOperation(getAddOperationLabel(), repoURL); + } + public String getAddOperationLabel() { + return ProvisionerMessages.P2TargetProvisionerWizardPage_12; + } + public URL[] getKnownRepositories() { + try { + return ProvisioningUtil.getMetadataRepositories(IMetadataRepositoryManager.REPOSITORIES_ALL); + } catch (ProvisionException e) { + return new URL[0]; + } + } + public ProvisioningOperation getRemoveOperation(URL[] reposToRemove) { + return new RemoveColocatedRepositoryOperation(getRemoveOperationLabel(), reposToRemove); + } + public String getRemoveOperationLabel() { + return ProvisionerMessages.P2TargetProvisionerWizardPage_13; + } + public URLValidator getURLValidator(Shell shell) { + return new DefaultMetadataURLValidator(); + } + }; + Button editReposButton = new Button(iuButtonComp, SWT.PUSH); + editReposButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + editReposButton.setText(ProvisionerMessages.P2TargetProvisionerWizardPage_11); + editReposButton.addSelectionListener(new SelectionAdapter() { + public void widgetSelected(SelectionEvent event) { + fManipulator.manipulateRepositories(getShell()); + } + }); + } + + /** + * Checks if the page is complete, updating messages and finish button. + */ + void pageChanged() { + if (fDirectoryStatus.getSeverity() == IStatus.ERROR) { + setErrorMessage(fDirectoryStatus.getMessage()); + setPageComplete(false); + } else if (fSelectedIUStatus.getSeverity() == IStatus.ERROR) { + setErrorMessage(fSelectedIUStatus.getMessage()); + setPageComplete(false); + } else { + setErrorMessage(null); + setPageComplete(true); + } + } + + /** + * Determines the default download folder location based on the workspace + * location. + */ + private String getDefaultDownloadLocation() { + IPath path = ResourcesPlugin.getWorkspace().getRoot().getLocation(); + if (path != null) { + return new File(path.toFile(), DEFAULT_DIR_NAME).toString(); + } + return ""; //$NON-NLS-1$ + } + + /** + * Open a directory dialog to select a folder. + */ + private void handleLocationBrowseButtonPressed() { + DirectoryDialog dialog = new DirectoryDialog(getShell()); + dialog.setFilterPath(fInstallLocation.getText()); + dialog.setText(ProvisionerMessages.P2TargetProvisionerWizardPage_16); + dialog.setMessage(ProvisionerMessages.P2TargetProvisionerWizardPage_17); + String result = dialog.open(); + if (result != null) + fInstallLocation.setText(result); + } + + /** + * Save the state of the widgets select, for successive invocations of the wizard + */ + void saveWidgetState() { + IDialogSettings settings = getDialogSettings(); + if(settings != null) { + if (fUseDefaultsButton.getSelection()){ + settings.put(USE_DEFAULT, true); + } else { + settings.put(USE_DEFAULT, false); + settings.put(FOLDER_NAME, fInstallLocation.getText()); + } + settings.put(CLEAR_CONTENTS, fClearContentsButton.getSelection()); + } + } + + /** + * Restores the state of the wizard from previous invocations + */ + private void restoreWidgetState() { + IDialogSettings settings = getDialogSettings(); + if(settings != null) { + String location = settings.get(FOLDER_NAME); + if (location != null && location.length() > 0){ + previousLocation = location; + } + String useDefaults = settings.get(USE_DEFAULT); + if (useDefaults != null){ + boolean useDefaultsBoolean = Boolean.valueOf(useDefaults).booleanValue(); + fUseDefaultsButton.setSelection(useDefaultsBoolean); + if (!useDefaultsBoolean){ + fInstallLocation.setText(previousLocation); + fInstallLocation.setEnabled(true); + fBrowseButton.setEnabled(true); + + } + } + fClearContentsButton.setSelection(Boolean.valueOf(settings.get(CLEAR_CONTENTS)).booleanValue()); + } + } + + /** + * @return the list of installable units to download on finish + */ + public IInstallableUnit[] getUnits() { + return fUnits; + } + + /** + * @param createIfDefault whether to create the directory structure if it doesn't exist, only occurs if default is used + * @return the location where installable units should be downloaded to + */ + public File getDownloadLocation(boolean createIfDefault) { + if (fInstallLocation.getText().trim().length() > 0) { + File file = new File(fInstallLocation.getText()); + if (createIfDefault && fUseDefaultsButton.getSelection() && !file.isDirectory()) { + file.mkdirs(); + } + return file; + } + return null; + } + + /** + * @return whether contents of the download location should be deleted before starting the download + */ + public boolean isClearContentsBeforeDownloading() { + return fClearContentsButton.getSelection(); + } + +} Index: .settings/org.eclipse.jdt.core.prefs =================================================================== RCS file: .settings/org.eclipse.jdt.core.prefs diff -N .settings/org.eclipse.jdt.core.prefs --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ .settings/org.eclipse.jdt.core.prefs 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,344 @@ +#Wed Jan 02 10:06:25 CST 2008 +eclipse.preferences.version=1 +org.eclipse.jdt.core.builder.cleanOutputFolder=clean +org.eclipse.jdt.core.builder.duplicateResourceTask=warning +org.eclipse.jdt.core.builder.invalidClasspath=abort +org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore +org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch +org.eclipse.jdt.core.circularClasspath=error +org.eclipse.jdt.core.classpath.exclusionPatterns=enabled +org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.4 +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.maxProblemPerUnit=1000 +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=error +org.eclipse.jdt.core.compiler.problem.emptyStatement=warning +org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning +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=ignore +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=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning +org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning +org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private +org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore +org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore +org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled +org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public +org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore +org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled +org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public +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=warning +org.eclipse.jdt.core.compiler.problem.nullReference=warning +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=warning +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=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +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.unsafeTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled +org.eclipse.jdt.core.compiler.problem.unusedImport=error +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=enabled +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.3 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false +org.eclipse.jdt.core.formatter.comment.format_block_comments=false +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=false +org.eclipse.jdt.core.formatter.comment.format_line_comments=false +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false +org.eclipse.jdt.core.formatter.comment.indent_root_tags=false +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=800 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=true +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false +org.eclipse.jdt.core.formatter.tabulation.char=tab +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.incompatibleJDKLevel=ignore +org.eclipse.jdt.core.incompleteClasspath=error Index: src/org/eclipse/pde/internal/p2/ui/SWTUtil.java =================================================================== RCS file: src/org/eclipse/pde/internal/p2/ui/SWTUtil.java diff -N src/org/eclipse/pde/internal/p2/ui/SWTUtil.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/pde/internal/p2/ui/SWTUtil.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,98 @@ +/******************************************************************************* + * Copyright (c) 2000, 2006 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 + *******************************************************************************/ +package org.eclipse.pde.internal.p2.ui; + +import org.eclipse.core.runtime.Assert; +import org.eclipse.jface.dialogs.Dialog; +import org.eclipse.jface.dialogs.IDialogConstants; +import org.eclipse.jface.resource.JFaceResources; +import org.eclipse.swt.SWT; +import org.eclipse.swt.dnd.DragSource; +import org.eclipse.swt.dnd.DropTarget; +import org.eclipse.swt.graphics.Point; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.widgets.*; + +/** + * Utility class to simplify access to some SWT resources. + */ +public class SWTUtil { + + /** + * Returns the standard display to be used. The method first checks, if + * the thread calling this method has an associated disaply. If so, this + * display is returned. Otherwise the method returns the default display. + */ + public static Display getStandardDisplay() { + Display display; + display = Display.getCurrent(); + if (display == null) + display = Display.getDefault(); + return display; + } + + /** + * Returns the shell for the given widget. If the widget doesn't represent + * a SWT object that manage a shell,null
is returned.
+ *
+ * @return the shell for the given widget
+ */
+ public static Shell getShell(Widget widget) {
+ if (widget instanceof Control)
+ return ((Control) widget).getShell();
+ if (widget instanceof Caret)
+ return ((Caret) widget).getParent().getShell();
+ if (widget instanceof DragSource)
+ return ((DragSource) widget).getControl().getShell();
+ if (widget instanceof DropTarget)
+ return ((DropTarget) widget).getControl().getShell();
+ if (widget instanceof Menu)
+ return ((Menu) widget).getParent().getShell();
+ if (widget instanceof ScrollBar)
+ return ((ScrollBar) widget).getParent().getShell();
+
+ return null;
+ }
+
+ /**
+ * Returns a width hint for a button control.
+ */
+ public static int getButtonWidthHint(Button button) {
+ if (button.getFont().equals(JFaceResources.getDefaultFont()))
+ button.setFont(JFaceResources.getDialogFont());
+ PixelConverter converter = new PixelConverter(button);
+ 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.
+ * Note: This is a NOP if the button's layout data is not
+ * an instance of GridData
.
+ *
+ * @param the button for which to set the dimension hint
+ */
+ public static void setButtonDimensionHint(Button button) {
+ Dialog.applyDialogFont(button);
+ Assert.isNotNull(button);
+ Object gd = button.getLayoutData();
+ if (gd instanceof GridData) {
+ ((GridData) gd).widthHint = getButtonWidthHint(button);
+ }
+ }
+
+ public static 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);
+ }
+}
Index: build.properties
===================================================================
RCS file: build.properties
diff -N build.properties
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ build.properties 1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ plugin.properties
Index: .project
===================================================================
RCS file: .project
diff -N .project
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ .project 1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,28 @@
+
+