diff options
Diffstat (limited to 'plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/internal/wizard/NewJavaClassOptionsWizardPage.java')
-rw-r--r-- | plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/internal/wizard/NewJavaClassOptionsWizardPage.java | 404 |
1 files changed, 0 insertions, 404 deletions
diff --git a/plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/internal/wizard/NewJavaClassOptionsWizardPage.java b/plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/internal/wizard/NewJavaClassOptionsWizardPage.java deleted file mode 100644 index c64ddd4c6..000000000 --- a/plugins/org.eclipse.jst.j2ee.ui/j2ee_ui/org/eclipse/jst/j2ee/internal/wizard/NewJavaClassOptionsWizardPage.java +++ /dev/null @@ -1,404 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2003, 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 - * David Schneider, david.schneider@unisys.com - [142500] WTP properties pages fonts don't follow Eclipse preferences - *******************************************************************************/ -package org.eclipse.jst.j2ee.internal.wizard; - -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.core.resources.IProject; -import org.eclipse.jdt.core.IJavaProject; -import org.eclipse.jdt.core.IType; -import org.eclipse.jdt.core.search.IJavaSearchConstants; -import org.eclipse.jdt.core.search.IJavaSearchScope; -import org.eclipse.jdt.internal.ui.JavaPluginImages; -import org.eclipse.jdt.internal.ui.dialogs.FilteredTypesSelectionDialog; -import org.eclipse.jem.workbench.utility.JemProjectUtilities; -import org.eclipse.jface.dialogs.Dialog; -import org.eclipse.jface.operation.IRunnableContext; -import org.eclipse.jface.viewers.ILabelProvider; -import org.eclipse.jface.viewers.ILabelProviderListener; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.ISelectionChangedListener; -import org.eclipse.jface.viewers.IStructuredContentProvider; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.viewers.SelectionChangedEvent; -import org.eclipse.jface.viewers.TableViewer; -import org.eclipse.jface.viewers.Viewer; -import org.eclipse.jface.window.Window; -import org.eclipse.jst.j2ee.internal.actions.IJ2EEUIContextIds; -import org.eclipse.jst.j2ee.internal.common.operations.INewJavaClassDataModelProperties; -import org.eclipse.jst.j2ee.internal.dialogs.TypeSearchEngine; -import org.eclipse.jst.j2ee.internal.plugin.J2EEUIMessages; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.KeyEvent; -import org.eclipse.swt.events.KeyListener; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.graphics.Image; -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.Label; -import org.eclipse.swt.widgets.TableItem; -import org.eclipse.ui.PlatformUI; -import org.eclipse.wst.common.frameworks.datamodel.IDataModel; -import org.eclipse.wst.common.frameworks.internal.datamodel.ui.DataModelWizardPage; - -/** - * @author jialin - * - * To change the template for this generated type comment go to Window - - * Preferences - Java - Code Generation - Code and Comments - */ -public class NewJavaClassOptionsWizardPage extends DataModelWizardPage { - - protected Button publicButton; - protected Button abstractButton; - protected Button finalButton; - protected TableViewer interfaceViewer; - protected Button addButton; - protected Button removeButton; - protected Button inheritButton; - protected Button constructorButton; - protected Button mainMethodButton; - - /** - * @param model - * @param pageName - */ - public NewJavaClassOptionsWizardPage(IDataModel model, String pageName, String pageDesc, String pageTitle) { - super(model, pageName); - setDescription(pageDesc); - this.setTitle(pageTitle); - setInfopopID(IJ2EEUIContextIds.NEW_JAVA_CLASS_OPTION_WIZARD_P1); - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jem.util.ui.wizard.WTPWizardPage#getValidationPropertyNames() - */ - @Override - protected String[] getValidationPropertyNames() { - return new String[]{INewJavaClassDataModelProperties.MODIFIER_ABSTRACT, INewJavaClassDataModelProperties.MODIFIER_FINAL}; - } - - /* - * (non-Javadoc) - * - * @see org.eclipse.jem.util.ui.wizard.WTPWizardPage#createTopLevelComposite(org.eclipse.swt.widgets.Composite) - */ - @Override - protected Composite createTopLevelComposite(Composite parent) { - Composite composite = new Composite(parent, SWT.NULL); - GridLayout layout = new GridLayout(); - layout.numColumns = 2; - composite.setLayout(layout); - GridData data = new GridData(GridData.FILL_BOTH); - data.widthHint = 300; - composite.setLayoutData(data); - - createModifierControls(composite); - createInterfaceControls(composite); - - // Separator label - Label seperator = new Label(composite, SWT.HORIZONTAL | SWT.SEPARATOR); - data = new GridData(GridData.HORIZONTAL_ALIGN_FILL); - data.horizontalSpan = 2; - seperator.setLayoutData(data); - - createStubsComposite(composite); - - publicButton.setFocus(); - PlatformUI.getWorkbench().getHelpSystem().setHelp(composite, getInfopopID()); - Dialog.applyDialogFont(parent); - return composite; - } - - /** - * Create controls for the modifiers - */ - protected void createModifierControls(Composite parent) { - Label modifiersLabel = new Label(parent, SWT.NONE); - modifiersLabel.setText(J2EEUIMessages.JAVA_CLASS_MODIFIERS_LABEL); - modifiersLabel.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING)); - Composite composite = new Composite(parent, SWT.NULL); - GridLayout layout = new GridLayout(); - layout.numColumns = 3; - layout.makeColumnsEqualWidth = true; - composite.setLayout(layout); - composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - - publicButton = new Button(composite, SWT.CHECK); - publicButton.setText(J2EEUIMessages.JAVA_CLASS_PUBLIC_CHECKBOX_LABEL); - synchHelper.synchCheckbox(publicButton, INewJavaClassDataModelProperties.MODIFIER_PUBLIC, null); - - abstractButton = new Button(composite, SWT.CHECK); - abstractButton.setText(J2EEUIMessages.JAVA_CLASS_ABSTRACT_CHECKBOX_LABEL); - synchHelper.synchCheckbox(abstractButton, INewJavaClassDataModelProperties.MODIFIER_ABSTRACT, null); - - finalButton = new Button(composite, SWT.CHECK); - finalButton.setText(J2EEUIMessages.JAVA_CLASS_FINAL_CHECKBOX_LABEL); - synchHelper.synchCheckbox(finalButton, INewJavaClassDataModelProperties.MODIFIER_FINAL, null); - } - - protected void createInterfaceControls(Composite parent) { - Label interfaceLabel = new Label(parent, SWT.NONE); - interfaceLabel.setText(J2EEUIMessages.JAVA_CLASS_INTERFACES_LABEL); - interfaceLabel.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING | GridData.VERTICAL_ALIGN_BEGINNING)); - Composite composite = new Composite(parent, SWT.NULL); - GridLayout layout = new GridLayout(); - layout.numColumns = 2; - composite.setLayout(layout); - composite.setLayoutData(new GridData(GridData.FILL_BOTH)); - - interfaceViewer = new TableViewer(composite, SWT.BORDER | SWT.MULTI); - interfaceViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH)); - interfaceViewer.setContentProvider(getInterfaceContentProvider()); - interfaceViewer.setLabelProvider(getInterfaceLabelProvider()); - interfaceViewer.getControl().addKeyListener(getInterfaceKeyListener()); - interfaceViewer.setInput(model.getProperty(INewJavaClassDataModelProperties.INTERFACES)); - - Composite buttonCompo = new Composite(composite, SWT.NULL); - layout = new GridLayout(); - layout.marginHeight = 0; - buttonCompo.setLayout(layout); - buttonCompo.setLayoutData(new GridData(GridData.FILL_VERTICAL | GridData.VERTICAL_ALIGN_BEGINNING)); - - addButton = new Button(buttonCompo, SWT.PUSH); - addButton.setText(J2EEUIMessages.ADD_BUTTON_LABEL); - addButton.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_FILL)); - addButton.addSelectionListener(new SelectionListener() { - public void widgetSelected(SelectionEvent event) { - handleInterfaceAddButtonSelected(); - } - public void widgetDefaultSelected(SelectionEvent event) { - //Do nothing - } - }); - - removeButton = new Button(buttonCompo, SWT.PUSH); - removeButton.setText(J2EEUIMessages.REMOVE_BUTTON); - removeButton.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_FILL)); - removeButton.addSelectionListener(new SelectionListener() { - public void widgetSelected(SelectionEvent event) { - handleInterfaceRemoveButtonSelected(); - } - public void widgetDefaultSelected(SelectionEvent event) { - //Do nothing - } - }); - removeButton.setEnabled(false); - - interfaceViewer.addSelectionChangedListener(new ISelectionChangedListener() { - public void selectionChanged(SelectionChangedEvent event) { - ISelection selection = event.getSelection(); - removeButton.setEnabled(!selection.isEmpty()); - } - }); - - } - - /** - * Create the composite with all the stubs - */ - protected void createStubsComposite(Composite parent) { - Label stubLabel = new Label(parent, SWT.NONE); - stubLabel.setText(J2EEUIMessages.JAVA_CLASS_METHOD_STUBS_LABEL); - GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL); - data.horizontalSpan = 2; - stubLabel.setLayoutData(data); - - Composite buttonCompo = new Composite(parent, SWT.NULL); - buttonCompo.setLayout(new GridLayout()); - data = new GridData(GridData.HORIZONTAL_ALIGN_FILL); - data.horizontalSpan = 2; - data.horizontalIndent = 15; - buttonCompo.setLayoutData(data); - - mainMethodButton = new Button(buttonCompo, SWT.CHECK); - mainMethodButton.setText(J2EEUIMessages.JAVA_CLASS_MAIN_CHECKBOX_LABEL); - synchHelper.synchCheckbox(mainMethodButton, INewJavaClassDataModelProperties.MAIN_METHOD, null); - - inheritButton = new Button(buttonCompo, SWT.CHECK); - inheritButton.setText(J2EEUIMessages.JAVA_CLASS_INHERIT_CHECKBOX_LABEL); - synchHelper.synchCheckbox(inheritButton, INewJavaClassDataModelProperties.ABSTRACT_METHODS, null); - - constructorButton = new Button(buttonCompo, SWT.CHECK); - constructorButton.setText(J2EEUIMessages.JAVA_CLASS_CONSTRUCTOR_CHECKBOX_LABEL); - synchHelper.synchCheckbox(constructorButton, INewJavaClassDataModelProperties.CONSTRUCTOR, null); - } - - @Override - protected void enter() { - super.enter(); - //set the intefaces on every page enter (not only on viewer creation) - interfaceViewer.setInput(model.getProperty(INewJavaClassDataModelProperties.INTERFACES)); - } - - /** - * @see IStatefulWizardPage#saveWidgetValues() - */ - // public void saveWidgetValues() { - // // TODO: do we want to do this here or in the concrete subclasses??? - // IDialogSettings store = getDialogSettings(); - // if (store != null) - // store.put(getUniqueKey(""), getUniqueKey("")); //$NON-NLS-1$ - // //$NON-NLS-2$ - // DialogSettingsHelper.saveButton(inheritButton, - // getUniqueKey(idInheritedAbstractButton), store); - // DialogSettingsHelper.saveButton(constructorButton, - // getUniqueKey(idSuperClassConstructorsButton), store); - // DialogSettingsHelper.saveButton(publicButton, - // getUniqueKey(idPublicButton), store); - // DialogSettingsHelper.saveButton(abstractButton, - // getUniqueKey(idAbstractButton), store); - // DialogSettingsHelper.saveButton(finalButton, getUniqueKey(idFinalButton), - // store); - // - // } - /** - * @see IStatefulWizardPage#restoreWidgetValues() - */ - // public void restoreWidgetValues() { - // IDialogSettings store = super.getDialogSettings(); - // if (store != null && store.get(getUniqueKey("")) != null) { //$NON-NLS-1$ - // DialogSettingsHelper.restoreButton(inheritButton, - // getUniqueKey(idInheritedAbstractButton), store); - // DialogSettingsHelper.restoreButton(constructorButton, - // getUniqueKey(idSuperClassConstructorsButton), store); - // DialogSettingsHelper.restoreButton(publicButton, - // getUniqueKey(idPublicButton), store); - // DialogSettingsHelper.restoreButton(abstractButton, - // getUniqueKey(idAbstractButton), store); - // DialogSettingsHelper.restoreButton(finalButton, - // getUniqueKey(idFinalButton), store); - // } - // } - /** - * Returns the Super Interface Content Provider - */ - protected IStructuredContentProvider getInterfaceContentProvider() { - return new IStructuredContentProvider() { - public Object[] getElements(Object inputElement) { - Object[] ret = new Object[0]; - if (inputElement instanceof List) { - ret = ((List) inputElement).toArray(); - } - return ret; - } - public void dispose() { - //Do nothing - } - public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { - //Default is nothing - } - }; - } - - /** - * Returns the Super Interface Label Provider - */ - protected ILabelProvider getInterfaceLabelProvider() { - return new ILabelProvider() { - public Image getImage(Object element) { - return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_INTERFACE); - } - - public String getText(Object element) { - String ret = J2EEUIMessages.EMPTY_STRING; - if (element instanceof String) - ret = (String) element; - return ret; - } - - public void addListener(ILabelProviderListener listener) { - //Do nothing - } - public void dispose() { - //Do nothing - } - public boolean isLabelProperty(Object element, String property) { - return true; - } - public void removeListener(ILabelProviderListener listener) { - //Do nothing - } - }; - } - - protected KeyListener getInterfaceKeyListener() { - return new KeyListener() { - - public void keyPressed(KeyEvent e) { - } - - public void keyReleased(KeyEvent e) { - if (e.keyCode == SWT.DEL) { - handleInterfaceRemoveButtonSelected(); - } - } - - }; - } - - /** - * Browse for a new Super Interface Class - */ - protected void handleInterfaceAddButtonSelected() { - IProject project = (IProject) model.getProperty(INewJavaClassDataModelProperties.PROJECT); - IRunnableContext context = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); - IJavaProject javaProject = JemProjectUtilities.getJavaProject(project); - // this eliminates the non-exported classpath entries - final IJavaSearchScope scope = TypeSearchEngine.createJavaSearchScopeForAProject(javaProject, true, true); - FilteredTypesSelectionDialog dialog = new FilteredTypesSelectionDialog(getShell(),false, context, scope,IJavaSearchConstants.INTERFACE); - dialog.setTitle(J2EEUIMessages.INTERFACE_SELECTION_DIALOG_TITLE); - if (dialog.open() == Window.OK) { - IType type = (IType) dialog.getFirstResult(); - String newInterface = ""; //$NON-NLS-1$ - if (type != null) { - newInterface = type.getFullyQualifiedName(); - List valueList = getInterfaceViewerItems(); - if (!valueList.contains(newInterface)) { - interfaceViewer.add(newInterface); - model.setProperty(INewJavaClassDataModelProperties.INTERFACES, getInterfaceViewerItems()); - } - } - } - } - - /** - * Remove an interface from the SuperInterface List - */ - protected void handleInterfaceRemoveButtonSelected() { - IStructuredSelection selection = (IStructuredSelection) interfaceViewer.getSelection(); - List items = selection.toList(); - if (!items.isEmpty()) { - List valueList = getInterfaceViewerItems(); - for (int i = 0; i < items.size(); i++) { - valueList.remove(items.get(i)); - } - interfaceViewer.setInput(valueList); - model.setProperty(INewJavaClassDataModelProperties.INTERFACES, valueList); - } - } - - private List getInterfaceViewerItems() { - ArrayList<String> list = new ArrayList<String>(); - TableItem[] items = interfaceViewer.getTable().getItems(); - for (TableItem item : items) { - list.add(item.getText()); - } - return list; - } -} |