Modified: 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/EJBMigrationWizard.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/EJBMigrationWizard.java?rev=609450&r1=609449&r2=609450&view=diff
==============================================================================
--- 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/EJBMigrationWizard.java
 (original)
+++ 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/EJBMigrationWizard.java
 Sun Jan  6 14:35:31 2008
@@ -31,6 +31,8 @@
        
        @Override
        protected void addUserInputPages() {
+               addPage(new ProjectSelectionPage(this.refactoring));
+               addPage(new EJBJarSelectionPage(this.refactoring));
        }
 
 }

Added: 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/ProjectSelectionPage.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/ProjectSelectionPage.java?rev=609450&view=auto
==============================================================================
--- 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/ProjectSelectionPage.java
 (added)
+++ 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/ProjectSelectionPage.java
 Sun Jan  6 14:35:31 2008
@@ -0,0 +1,108 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openejb.helper.annotation.wizards;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.ltk.ui.refactoring.UserInputWizardPage;
+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.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.List;
+
+public class ProjectSelectionPage extends UserInputWizardPage {
+
+       private final EJBMigrationRefactoring refactoring;
+       private final IProject[] projects;
+       private List list;
+
+       public ProjectSelectionPage(EJBMigrationRefactoring refactoring) {
+               super("wizardPage");
+               this.refactoring = refactoring;
+               projects = refactoring.getWorkspaceRoot().getProjects();
+               
+               setTitle("EJB 3.0 Annotation Wizard");
+               setDescription("Please select the project you'd like to work 
on");
+       }
+
+       /* (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.NULL);
+               composite.setLayout(new GridLayout());
+               
+               GridData gridData = new GridData();
+               gridData.minimumWidth = 200;
+               gridData.minimumHeight = 200;
+               
+               list = new List(composite, SWT.NONE);
+               list.setLayoutData(gridData);
+               list.addSelectionListener(new SelectionListener() {
+
+                       public void widgetDefaultSelected(SelectionEvent e) {
+                               checkPage();
+                       }
+
+                       public void widgetSelected(SelectionEvent e) {
+                               checkPage();
+                       }
+               });
+
+               int initialSelection = -1;
+               
+               for (int i = 0; i < projects.length; i++) {
+                       IProject project = projects[i];
+                       
+                       if (refactoring.getProject() != null && 
project.equals(refactoring.getProject())) {
+                               initialSelection = i;
+                       }
+                       
+                       list.add(project.getName());
+               }
+               
+               if (initialSelection != -1) {
+                       list.setSelection(initialSelection);
+               }
+               
+               setControl(composite);
+               checkPage();
+       }
+       
+       public IProject getSelectedProject() {
+               if (list.getSelectionCount() == 1) {
+                       return projects[list.getSelectionIndex()];
+               }
+               
+               return null;
+       }
+
+       protected void checkPage() {
+               if (getSelectedProject() == null) {
+                       setErrorMessage("Please select a project");
+                       setPageComplete(false);
+                       return;
+               } 
+               
+               refactoring.setProject(getSelectedProject());
+               setErrorMessage(null);
+               setPageComplete(true);
+       }
+}

Propchange: 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/ProjectSelectionPage.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/ProjectSelectionPage.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: 
openejb/trunk/sandbox/openejb-eclipse-plugin/plugins/org.apache.openejb.helper.annotation/src/main/java/org/apache/openejb/helper/annotation/wizards/ProjectSelectionPage.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain


Reply via email to