[Esbox-commits] r46 - trunk/org.indt.esbox.ui/src/org/indt/esbox/ui/preferences

pauloromulo at garage.maemo.org pauloromulo at garage.maemo.org
Thu Oct 4 16:28:06 EEST 2007


Author: pauloromulo
Date: 2007-10-04 16:28:06 +0300 (Thu, 04 Oct 2007)
New Revision: 46

Modified:
   trunk/org.indt.esbox.ui/src/org/indt/esbox/ui/preferences/ESBoxTargetPreferencesPage.java
Log:
target preferences done.

Modified: trunk/org.indt.esbox.ui/src/org/indt/esbox/ui/preferences/ESBoxTargetPreferencesPage.java
===================================================================
--- trunk/org.indt.esbox.ui/src/org/indt/esbox/ui/preferences/ESBoxTargetPreferencesPage.java	2007-10-03 23:30:21 UTC (rev 45)
+++ trunk/org.indt.esbox.ui/src/org/indt/esbox/ui/preferences/ESBoxTargetPreferencesPage.java	2007-10-04 13:28:06 UTC (rev 46)
@@ -1,3 +1,15 @@
+/*******************************************************************************
+ * Copyright (c) 2007 INdT.
+ * 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:
+ *    Raul Herbster (raul at embedded.ufcg.edu.br) (UFCG) - initial API and implementation
+ *    Paulo Romulo  (paulo at embedded.ufcg.edu.br) (UFCG)
+ *******************************************************************************/
+
 package org.indt.esbox.ui.preferences;
 
 import java.io.IOException;
@@ -10,7 +22,6 @@
 import org.eclipse.core.runtime.Preferences;
 import org.eclipse.jface.preference.PreferencePage;
 import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TreeViewer;
 import org.eclipse.jface.wizard.WizardDialog;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionAdapter;
@@ -29,6 +40,12 @@
 import org.eclipse.ui.IWorkbench;
 import org.eclipse.ui.IWorkbenchPreferencePage;
 import org.indt.esbox.core.CoreActivator;
+import org.indt.esbox.core.ESboxPreferenceConstants;
+import org.indt.esbox.core.ErrorLogger;
+import org.indt.esbox.core.scratchbox.ScratchboxException;
+import org.indt.esbox.core.scratchbox.ScratchboxFacade;
+import org.indt.esbox.ui.UIActivator;
+import org.indt.esbox.ui.scratchbox.targets.wizards.NewTargetWizard;
 
 
 public class ESBoxTargetPreferencesPage extends PreferencePage implements IWorkbenchPreferencePage{
@@ -147,8 +164,7 @@
 		
 		buttonNew.addListener(SWT.Selection, new Listener() {
 			public void handleEvent(Event e) {
-				//displayTargetWizard(parent);
-				System.out.println("TODO: handle events");
+				displayTargetWizard(parent);				
 			}
 		});
 		
@@ -162,8 +178,7 @@
 		buttonRemove.setLayoutData(gridData);
 		buttonRemove.addListener(SWT.Selection, new Listener() {
 			public void handleEvent(Event e) {
-				//removeTarget();
-				System.out.println("TODO: handle events");
+				removeTarget();				
 			}
 		});
 		
@@ -205,20 +220,25 @@
 			line.setText(element);
 		}		
 		column.pack();
-		table.setRedraw(true); //redraw the table so the modifications can be seen.
-		Preferences preferences = CoreActivator.getDefault().getPluginPreferences();
+		table.setRedraw(true); //redraw the table so the modifications can be seen.		
 		String targetName = "target";//preferences.getString(ESboxPreferenceConstants.SBOX_TARGET);
 		//set the checked value to the one stored at preference store.
 		setSelectedTarget(targetName);
 	}
 	
 	private List<String> getTargets() throws IOException {//ESboxCoreException {
-//		List<ITarget> targetsList = TargetManager.getInstance().getTargets();
-//		List<String> targetsName = new ArrayList<String>();
-//		for (ITarget target : targetsList) {
-//			targetsName.add(target.getName());
-//		}
-//		return targetsName;
+		List<String> targetsList = null;
+		try {
+			targetsList = ScratchboxFacade.getInstance().getTargets();
+		} catch (ScratchboxException e) {
+			ErrorLogger errorLogger = UIActivator.getDefault().getErrorLogger();
+			errorLogger.logAndShowError("Scratchbox error", e);
+		}
+		
+		List<String> targetsName = new ArrayList<String>();
+		for (String target : targetsList) {
+			targetsName.add(target);
+		}		
 		return new ArrayList<String>();
 	}
 	
@@ -226,8 +246,7 @@
 	 * Sets the selected target to the specified value.
 	 * @param targetName the target to be selected.
 	 */
-	private void setSelectedTarget(String targetName) {	
-		Preferences preferences = CoreActivator.getDefault().getPluginPreferences();
+	private void setSelectedTarget(String targetName) {		
 		TableItem[] items = table.getItems();
 		for (int i = 0; i < items.length; i++) {
 			if(items[i].getText().equals(targetName)) {
@@ -246,106 +265,92 @@
 	 * Displays the target wizard, so that the user can create new targets.
 	 * @param composite the parent composite.
 	 */
-//	private void displayTargetWizard(Composite composite) {
-//		NewTargetWizard targetWizard = new NewTargetWizard();		
-//		WizardDialog dlg = new WizardDialog(composite.getShell(),
-//				targetWizard);
-//		dlg.open();
-//	}
+	private void displayTargetWizard(Composite composite) {
+		NewTargetWizard targetWizard = new NewTargetWizard();		
+		WizardDialog dlg = new WizardDialog(composite.getShell(),
+				targetWizard);
+		dlg.open();
+	}
 		
 	/**
 	 * Remove the target selected. After removing the target, the default target is checked (and selected).
 	 */
-//	private void removeTarget() {		
-//		TableItem item = table.getSelection()[0];
-//		String targetRemoved = item.getText();
-//		try {
-//			TargetManager.getInstance().removeTarget(targetRemoved);			
-//		} catch (Exception e) {
-//			//TODO
-//			e.printStackTrace();
-//		}			
-//	}	
+	private void removeTarget() {		
+		TableItem item = table.getSelection()[0];
+		String targetRemoved = item.getText();
+		try {
+			ScratchboxFacade.getInstance().removeTarget(targetRemoved);			
+		} catch (ScratchboxException e) {
+			ErrorLogger errorLogger = UIActivator.getDefault().getErrorLogger();
+			errorLogger.logAndShowError("Scratchbox error", e);
+		} 
+	}	
 		
 	/*
 	 *  (non-Javadoc)
 	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
 	 */
-//	public boolean performOk() {		
-//		Preferences preferences = CoreActivator.getDefault().getPluginPreferences();
-//		String target = getSelectValue();
-//		if(target == null)
-//			target = preferences.getDefaultString(ESboxPreferenceConstants.SBOX_TARGET);
-//		try {
-//			TargetManager.getInstance().selectTarget(target);
-//		} catch (Exception e) {
-//			//TODO
-//			e.printStackTrace();
-//		}		
-//		getPreferenceStore().setValue(ESboxPreferenceConstants.SBOX_TARGET,getSelectValue());
-//		return super.performOk();
-//	}
+	public boolean performOk() {		
+		Preferences preferences = CoreActivator.getDefault().getPluginPreferences();
+		String target = getSelectValue();
+		if(target == null)
+			target = preferences.getDefaultString(ESboxPreferenceConstants.SBOX_TARGET.toString());
+		try {
+			ScratchboxFacade.getInstance().selectTarget(target);
+		} catch (ScratchboxException e) {
+			ErrorLogger errorLogger = UIActivator.getDefault().getErrorLogger();
+			errorLogger.logAndShowError("Scratchbox error", e);
+		}
+		getPreferenceStore().setValue(ESboxPreferenceConstants.SBOX_TARGET.toString(), getSelectValue());
+		return super.performOk();
+	}
 	
 //	@Override
-//	protected void performDefaults() {
-//		Preferences preferences = CoreActivator.getDefault().getPluginPreferences();				
-//		setSelectedTarget(preferences.getDefaultString(ESboxPreferenceConstants.SBOX_TARGET));
-//		super.performDefaults();
-//	}
+	protected void performDefaults() {
+		Preferences preferences = CoreActivator.getDefault().getPluginPreferences();				
+		setSelectedTarget(preferences.getDefaultString(ESboxPreferenceConstants.SBOX_TARGET.toString()));
+		super.performDefaults();
+	}
 		
 	/**
 	 * Returns the selected value of the table.
 	 * @return the selected value of the table.
 	 */
-//	public String getSelectValue() {
-//		TableItem item[] = table.getSelection();
-//		if(item.length > 0)
-//			return item[0].getText();
-//		else
-//			return null;
-//	}
+	public String getSelectValue() {
+		TableItem item[] = table.getSelection();
+		if(item.length > 0)
+			return item[0].getText();
+		else
+			return null;
+	}
 	
 	/*
 	 *  (non-Javadoc)
 	 * @see br.edu.ufcg.dee.omapsdk.properties.target.wizard.TargetWizardListener#targetAdded()
 	 */
-//	public void targetAdded() {		
-//		table.removeAll();		
-//		initTable();
-//		refreshTargetView();
-//	}
+	public void targetAdded() {		
+		table.removeAll();		
+		initTable();		
+	}
 
 	/*
 	 *  (non-Javadoc)
 	 * @see dee.nokia.esbox.plugin.ui.internal.wizard.targets.TargetListener#targetRemoved()
 	 */
-//	public void targetRemoved() {
-//		try {
-//			table.remove(table.getSelectionIndex());		
-//		} catch (Exception e){
-//			//System.out.println("Preference page not open, can't get table");
-//		}
-//		
-//		try {
-//			Preferences preferences = CoreActivator.getDefault().getPluginPreferences();
-//			setSelectedTarget(preferences.getDefaultString(ESboxPreferenceConstants.SBOX_TARGET));
-//		
-//		} catch (Exception e){ 
-//			//System.out.println("Preference page not open, can't get table, setting defaut");
-//		}
-//		
-//		refreshTargetView();
-//	}
-	
-//	private void refreshTargetView(){
-//		try{
-//			TreeViewer viewer = (TreeViewer)TargetsView.getViewer();
-//			viewer.setContentProvider(new TargetsViewContentProvider(TargetsView.getTargetsView()));
-//			viewer.refresh();
-//		}
-//		catch (Exception e) {
-//			//System.out.println("View Target not open, can't refresh it");
-//		}
-//	}
+	public void targetRemoved() {
+		try {
+			table.remove(table.getSelectionIndex());		
+		} catch (Exception e){
+			//System.out.println("Preference page not open, can't get table");
+		}
+		
+		try {
+			Preferences preferences = CoreActivator.getDefault().getPluginPreferences();
+			setSelectedTarget(preferences.getDefaultString(ESboxPreferenceConstants.SBOX_TARGET.toString()));
+		
+		} catch (Exception e){ 
+			//System.out.println("Preference page not open, can't get table, setting defaut");
+		}		
+	}	
 
 }



More information about the Esbox-commits mailing list