[jbosstools-commits] JBoss Tools SVN: r23898 - in trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui: src/org/jboss/tools/deltacloud/ui and 2 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Tue Aug 3 18:49:08 EDT 2010


Author: jjohnstn
Date: 2010-08-03 18:49:08 -0400 (Tue, 03 Aug 2010)
New Revision: 23898

Added:
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java
Modified:
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/SWTImagesFactory.java
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/CVMessages.properties
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/DeltaCloudView.java
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionPage.java
   trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties
Log:
2010-08-03  Jeff Johnston  <jjohnstn at redhat.com>

	* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java: New file.
	* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java: New file.
	* src/org/jboss/tools/deltacloud/ui/SWTImagesFactory.java: Add Delta icon.
	* src/org/jboss/tools/deltacloud/ui/views/CVMessages.properties: Add new messages
	for create instance.
	* src/org/jboss/tools/deltacloud/ui/views/DeltaCloudView.java (handleSelection): Store
	the selected element for use in setting context menus and actions. 
	(makeActions): Add create instance action.
	(.run): New run method for create instance.
	(fillContextMenu): Set create instance action for CVImageElement.
	* src/org/jboss/tools/deltacloud/ui/wizards/WizardMessages.properties: Add new message
	for NewInstance wizard.
	


Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog	2010-08-03 21:57:53 UTC (rev 23897)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog	2010-08-03 22:49:08 UTC (rev 23898)
@@ -1,5 +1,20 @@
 2010-08-03  Jeff Johnston  <jjohnstn at redhat.com>
 
+	* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java: New file.
+	* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java: New file.
+	* src/org/jboss/tools/deltacloud/ui/SWTImagesFactory.java: Add Delta icon.
+	* src/org/jboss/tools/deltacloud/ui/views/CVMessages.properties: Add new messages
+	for create instance.
+	* src/org/jboss/tools/deltacloud/ui/views/DeltaCloudView.java (handleSelection): Store
+	the selected element for use in setting context menus and actions. 
+	(makeActions): Add create instance action.
+	(.run): New run method for create instance.
+	(fillContextMenu): Set create instance action for CVImageElement.
+	* src/org/jboss/tools/deltacloud/ui/wizards/WizardMessages.properties: Add new message
+	for NewInstance wizard.
+	
+2010-08-03  Jeff Johnston  <jjohnstn at redhat.com>
+
 	* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionPage.java (getURLValid): New
 	method. 
 	(setURLValid): Ditto. 

Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/SWTImagesFactory.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/SWTImagesFactory.java	2010-08-03 21:57:53 UTC (rev 23897)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/SWTImagesFactory.java	2010-08-03 22:49:08 UTC (rev 23898)
@@ -29,11 +29,13 @@
 	public static final String IMG_INSTANCE= NAME_PREFIX + "instance.gif"; //$NON-NLS-1$
 	public static final String IMG_IMAGE= NAME_PREFIX + "image.gif"; //$NON-NLS-1$
 	public static final String IMG_COLLAPSE_ALL= NAME_PREFIX + "collapseall.gif"; //$NON-NLS-1$
+	public static final String IMG_DELTA= NAME_PREFIX + "delta.gif"; //$NON-NLS-1$
  	public static final ImageDescriptor DESC_CLOUD= createManaged("", IMG_CLOUD);
 	public static final ImageDescriptor DESC_FOLDER= createManaged("", IMG_FOLDER);
 	public static final ImageDescriptor DESC_INSTANCE= createManaged("", IMG_INSTANCE);
 	public static final ImageDescriptor DESC_IMAGE= createManaged("", IMG_IMAGE);
 	public static final ImageDescriptor DESC_COLLAPSE_ALL= createManaged("", IMG_COLLAPSE_ALL);
+	public static final ImageDescriptor DESC_DELTA= createManaged("", IMG_DELTA);
 
 	private static ImageDescriptor createManaged(String prefix, String name) {
 		return createManaged(imageRegistry, prefix, name);

Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/CVMessages.properties
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/CVMessages.properties	2010-08-03 21:57:53 UTC (rev 23897)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/CVMessages.properties	2010-08-03 22:49:08 UTC (rev 23898)
@@ -17,4 +17,5 @@
 CollapseAll.label=Collapse All
 
 RemoveCloud.label=Disconnect Cloud
-Refresh.label=Refresh View
\ No newline at end of file
+Refresh.label=Refresh View
+CreateInstance.label=Create Instance
\ No newline at end of file

Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/DeltaCloudView.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/DeltaCloudView.java	2010-08-03 21:57:53 UTC (rev 23897)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/DeltaCloudView.java	2010-08-03 22:49:08 UTC (rev 23898)
@@ -15,19 +15,24 @@
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.SelectionChangedEvent;
 import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.wizard.IWizard;
+import org.eclipse.jface.wizard.WizardDialog;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Shell;
 import org.eclipse.ui.IActionBars;
 import org.eclipse.ui.ISharedImages;
 import org.eclipse.ui.IWorkbenchActionConstants;
 import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.part.ViewPart;
 import org.jboss.tools.deltacloud.core.DeltaCloud;
+import org.jboss.tools.deltacloud.core.DeltaCloudImage;
 import org.jboss.tools.deltacloud.core.DeltaCloudManager;
 import org.jboss.tools.deltacloud.core.ICloudManagerListener;
 import org.jboss.tools.deltacloud.ui.SWTImagesFactory;
+import org.jboss.tools.internal.deltacloud.ui.wizards.NewInstance;
 
 
 public class DeltaCloudView extends ViewPart implements ICloudManagerListener {
@@ -39,6 +44,7 @@
 	
 	private static final String REMOVE_CLOUD = "RemoveCloud.label"; //$NON-NLS-1$
 	private static final String REFRESH = "Refresh.label"; //$NON-NLS-1$
+	private static final String CREATE_INSTANCE = "CreateInstance.label"; //$NON-NLS-1$
 	
 	public static final String COLLAPSE_ALL = "CollapseAll.label"; //$NON-NLS-1$
 
@@ -49,6 +55,9 @@
 	private Action refreshAction;
 	private Action collapseall;
 	private Action doubleClickAction;
+	private Action createInstance;
+	
+	private CloudViewElement selectedElement;
 
 	/**
 	 * The constructor.
@@ -108,8 +117,7 @@
 
 	private void handleSelection() {
 		IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
-		CloudViewElement element = (CloudViewElement)selection.getFirstElement();
-		// FIXME: add context menus here based on element type
+		selectedElement = (CloudViewElement)selection.getFirstElement();
 	}
 	
 	private void fillLocalPullDown(IMenuManager manager) {
@@ -120,8 +128,12 @@
 	}
 
 	private void fillContextMenu(IMenuManager manager) {
-		manager.add(action1);
-		manager.add(action2);
+		if (selectedElement instanceof CVImageElement) {
+			manager.add(createInstance);
+		} else {
+			manager.add(action1);
+			manager.add(action2);
+		}
 		// Other plug-ins can contribute there actions here
 		manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
 	}
@@ -158,6 +170,28 @@
 		removeCloud.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().
 				getImageDescriptor(ISharedImages.IMG_ELCL_REMOVE));
 
+		createInstance = new Action() {
+			public void run() {
+				ISelection selection = viewer.getSelection();
+				Shell shell = viewer.getControl().getShell();
+				Object obj = ((IStructuredSelection)selection).getFirstElement();
+				if (obj instanceof CVImageElement) {
+					CVImageElement imageElement = (CVImageElement)obj;
+					DeltaCloudImage image = (DeltaCloudImage)imageElement.getElement();
+					CVCategoryElement images = (CVCategoryElement)imageElement.getParent();
+					CVCloudElement cloudElement = (CVCloudElement)images.getParent();
+					DeltaCloud cloud = (DeltaCloud)cloudElement.getElement();
+					IWizard wizard = new NewInstance(cloud, image);
+					WizardDialog dialog = new WizardDialog(shell, wizard);
+					dialog.create();
+					dialog.open();
+				}
+			}
+		};		
+		createInstance.setText(CVMessages.getString(CREATE_INSTANCE));
+		createInstance.setToolTipText(CVMessages.getString(CREATE_INSTANCE));
+		createInstance.setImageDescriptor(SWTImagesFactory.DESC_INSTANCE);
+		
 		refreshAction = new Action() {
 			public void run() {
 				viewer.setInput(getViewSite());

Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionPage.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionPage.java	2010-08-03 21:57:53 UTC (rev 23897)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionPage.java	2010-08-03 22:49:08 UTC (rev 23898)
@@ -256,7 +256,6 @@
 	
 	@Override
 	public void createControl(Composite parent) {
-		// TODO Auto-generated method stub
 		final Composite container = new Composite(parent, SWT.NULL);
 		FormLayout layout = new FormLayout();
 		layout.marginHeight = 5;

Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java	                        (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java	2010-08-03 22:49:08 UTC (rev 23898)
@@ -0,0 +1,38 @@
+package org.jboss.tools.internal.deltacloud.ui.wizards;
+
+import org.eclipse.jface.wizard.Wizard;
+import org.jboss.tools.deltacloud.core.DeltaCloud;
+import org.jboss.tools.deltacloud.core.DeltaCloudImage;
+
+public class NewInstance extends Wizard {
+
+	private final static String MAINPAGE_NAME = "NewInstance.name"; //$NON-NLS-1$
+	private NewInstancePage mainPage;
+	
+	private DeltaCloud cloud;
+	private DeltaCloudImage image;
+
+	public NewInstance(DeltaCloud cloud, DeltaCloudImage image) {
+		this.cloud = cloud;
+		this.image = image;
+	}
+	
+	@Override
+	public void addPages() {
+		// TODO Auto-generated method stub
+		mainPage = new NewInstancePage(cloud, image);
+		addPage(mainPage);
+	}
+	
+	@Override
+	public boolean canFinish() {
+		return mainPage.isPageComplete();
+	}
+	
+	@Override
+	public boolean performFinish() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+}

Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java	                        (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java	2010-08-03 22:49:08 UTC (rev 23898)
@@ -0,0 +1,39 @@
+package org.jboss.tools.internal.deltacloud.ui.wizards;
+
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FormLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.jboss.tools.deltacloud.core.DeltaCloud;
+import org.jboss.tools.deltacloud.core.DeltaCloudImage;
+import org.jboss.tools.deltacloud.ui.SWTImagesFactory;
+
+public class NewInstancePage extends WizardPage {
+
+	private final static String NAME = "NewInstance.name"; //$NON-NLS-1$
+	private final static String DESCRIPTION = "NewInstance.desc"; //$NON-NLS-1$
+	private final static String TITLE = "NewInstance.title"; //$NON-NLS-1$
+
+	private DeltaCloud cloud;
+	private DeltaCloudImage image;
+	
+	public NewInstancePage(DeltaCloud cloud, DeltaCloudImage image) {
+		super(WizardMessages.getString(NAME));
+		this.cloud = cloud;
+		this.image = image;
+		setDescription(WizardMessages.getString(DESCRIPTION));
+		setTitle(WizardMessages.getString(TITLE));
+		setPageComplete(false);
+	}
+	
+	@Override
+	public void createControl(Composite parent) {
+		final Composite container = new Composite(parent, SWT.NULL);
+		FormLayout layout = new FormLayout();
+		layout.marginHeight = 5;
+		layout.marginWidth = 5;
+		container.setLayout(layout);
+		setControl(container);
+	}
+
+}

Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties	2010-08-03 21:57:53 UTC (rev 23897)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/WizardMessages.properties	2010-08-03 22:49:08 UTC (rev 23898)
@@ -14,5 +14,9 @@
 EC2PasswordLink.text=For EC2 use the <a href="https://console.aws.amazon.com/ec2/home">Access Secret Key</a>
 
 ErrorNameInUse.text=Error: the name chosen is already in use
-ErrorInvalidURL.text=Error: the URL specified is invalid
-ErrorNonCloudURL.text=URL specified is not a valid Delta-cloud address
\ No newline at end of file
+ErrorInvalidURL.text=URL specified is invalid
+ErrorNonCloudURL.text=URL specified is not a valid Delta-cloud address
+
+NewInstance.desc=Specify details for a new instance you wish to create based on an image
+NewInstance.title=Create Instance
+NewInstance.name=Create Instance
\ No newline at end of file



More information about the jbosstools-commits mailing list