Fixed various issues in new SDK preference page. C3_BUILDER_WORK
authorstechong
Thu, 03 Jun 2010 17:43:59 -0500
branchC3_BUILDER_WORK
changeset 1431 536cdcdc768b
parent 1425 7903a1588fd4
child 1433 1a693b01d107
Fixed various issues in new SDK preference page.
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SDKManager.java
core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/SDKPreferencePage.java
core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/SDKPropertiesDialog.java
core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/messages.properties
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SDKManager.java	Thu Jun 03 09:58:29 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SDKManager.java	Thu Jun 03 17:43:59 2010 -0500
@@ -117,7 +117,14 @@
 	public void updateSDK(ISymbianSDK sdk) {
 		try {
 			File devicesFile = getDevicesXMLFile();
-			
+
+			if (devicesFile == null || !devicesFile.exists()) {
+				// There is no devices.xml. Ask the user if he/she wants to
+				// add it
+				doAsynchPromptCreateDevicesXML();
+				return;
+			}
+
 			// If file does not exist exception will catch it
 			DevicesLoader.updateDevice(sdk, devicesFile.toURL());
 			updateCarbideSDKCache();
@@ -436,11 +443,12 @@
 				continue;
 			}
 
+			String sdkId = getUniqueSDKId(drive);
 			DeviceType deviceType = DevicesFactory.eINSTANCE.createDeviceType();
 			deviceType.setAlias(drive.toString());
 			deviceType.setDefault(DefaultType.NO_LITERAL);
 			deviceType.setEpocroot(drive.getAbsolutePath());
-			deviceType.setId(drive.toString().charAt(0) + "_SDK");
+			deviceType.setId(sdkId);
 			deviceType.setName("com.nokia.s60");
 			deviceType.setToolsroot(drive.getAbsolutePath());
 			deviceType.setUserdeletable("false");
@@ -474,6 +482,16 @@
 		return new File[0];
 	}
 
+	private String getUniqueSDKId(File drive) {
+		String sdkId = drive.toString().charAt(0) + "_SDK";
+		int suffice = 1;
+		while (!isUniqueSDKId(sdkId)) {
+			sdkId = drive.toString().charAt(0) + "_SDK" + suffice;
+			suffice++;
+		}
+		return sdkId;
+	}
+
 	private boolean hasAbldSupport(ISymbianSDK sdk) {
 		File abld = new File(sdk.getEPOCROOT(), ABLD_FILE);
 		if (abld.exists()) {
@@ -525,4 +543,12 @@
 		return false;
 	}
 
+	private boolean isUniqueSDKId(String sdkId) {
+		for (ISymbianSDK sdk : SDKCorePlugin.getSDKManager().getSDKList()){
+			if (sdk.getUniqueId().equalsIgnoreCase(sdkId)){
+				return false;
+			}
+		}
+		return true;
+	}
 }
--- a/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/SDKPreferencePage.java	Thu Jun 03 09:58:29 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/SDKPreferencePage.java	Thu Jun 03 17:43:59 2010 -0500
@@ -32,6 +32,9 @@
 import org.eclipse.jface.viewers.CellEditor;
 import org.eclipse.jface.viewers.CheckboxTableViewer;
 import org.eclipse.jface.viewers.ColumnViewer;
+import org.eclipse.jface.viewers.ColumnViewerEditor;
+import org.eclipse.jface.viewers.ColumnViewerEditorActivationEvent;
+import org.eclipse.jface.viewers.ColumnViewerEditorActivationStrategy;
 import org.eclipse.jface.viewers.EditingSupport;
 import org.eclipse.jface.viewers.ISelectionChangedListener;
 import org.eclipse.jface.viewers.IStructuredSelection;
@@ -40,6 +43,7 @@
 import org.eclipse.jface.viewers.SelectionChangedEvent;
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.jface.viewers.TableViewerColumn;
+import org.eclipse.jface.viewers.TableViewerEditor;
 import org.eclipse.jface.viewers.TextCellEditor;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionAdapter;
@@ -124,8 +128,16 @@
 
 		@Override
 		protected void setValue(Object element, Object value) {
+			String sdkID = value.toString();
+
+			// check for spaces in ID
+			if (sdkID.contains(" ")){ //$NON-NLS-1$
+				MessageDialog.openError(getShell(), Messages.getString("AddSDKDialog.Invalid_SDK_ID"), Messages.getString("AddSDKDialog.SDK_ID_No_Spaces")); //$NON-NLS-1$ //$NON-NLS-2$
+				return;
+			}
+
 			ISymbianSDK sdk = (ISymbianSDK) element;
-			sdk.setUniqueID(value.toString());
+			sdk.setUniqueID(sdkID);
 			SDKCorePlugin.getSDKManager().updateSDK(sdk);
 			getViewer().refresh();
 		}
@@ -197,6 +209,17 @@
 		}		
 	}
 
+	private class SDKViewerStrategy extends ColumnViewerEditorActivationStrategy {
+		public SDKViewerStrategy(ColumnViewer viewer) {
+			super(viewer);
+		}
+
+		@Override
+		protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) {
+			return (event.eventType ==  ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION);
+		}
+	}
+
 	private class ScanJobListener implements IJobChangeListener {
 		public void done(IJobChangeEvent event) {
 			Display.getDefault().asyncExec(new Runnable() {
@@ -331,11 +354,11 @@
 
 		// Buttons composite
 		Composite composite1 = new Composite(content, SWT.NONE);
-		composite1.setLayoutData(new GridData());
 		gridLayout = new GridLayout();
 		gridLayout.makeColumnsEqualWidth = true;
 		composite1.setLayout(gridLayout);
 		GridData gridData = new GridData(SWT.LEFT, SWT.TOP, true, false);
+		composite1.setLayoutData(gridData);
 
 		// Add button
 		addButton = new Button(composite1, SWT.NONE);
@@ -456,11 +479,14 @@
 		final Table table = sdkListTableViewer.getTable();
 		GridData gridData = new GridData(SWT.FILL, SWT.CENTER, true, false);
 		gridData.widthHint = 350;
-		gridData.heightHint = table.getItemHeight() * 6;
+		gridData.heightHint = table.getItemHeight() * 10;
 		table.setLayoutData(gridData);
 		table.setHeaderVisible(true);
 		table.setLinesVisible(false);
 
+		SDKViewerStrategy strategy = new SDKViewerStrategy(sdkListTableViewer);
+		TableViewerEditor.create(sdkListTableViewer, strategy, ColumnViewerEditor.DEFAULT);
+
 		TableViewerColumn enabledCol = new TableViewerColumn(sdkListTableViewer, SWT.LEFT);
 		enabledCol.getColumn().setText(Messages.getString("SDKPreferencePage.SDK_Table_Enabled_Column_Label")); //$NON-NLS-1$
 		enabledCol.getColumn().setWidth(50);
@@ -506,15 +532,11 @@
 
 	private void handlePropertiesButton() {
 		ISymbianSDK sdk = (ISymbianSDK)((IStructuredSelection)sdkListTableViewer.getSelection()).getFirstElement();
+		int index = sdkListTableViewer.getTable().getSelectionIndex();
 		if (sdk != null){
 			SDKPropertiesDialog sdkPropDlg = new SDKPropertiesDialog(getShell(), sdk);
-			if (sdkPropDlg.open() == SDKPropertiesDialog.OK){
-				sdkListTableViewer.refresh();
-				updateSDKStatus(sdk);
-				// forcible rescan; dump cache
-				SymbianBuildContextDataCache.refreshForSDKs(new ISymbianSDK[] { sdk });
-				sdkMgr.scanSDKs();
-			}
+			sdkPropDlg.open();
+			selectSDKEntry(index);
 		} else {
 			MessageDialog.openError(getShell(), Messages.getString("SDKPreferencePage.No_SDK_Selected"), Messages.getString("SDKPreferencePage.No_selected_SDK_detected")); //$NON-NLS-1$ //$NON-NLS-2$
 		}
@@ -614,7 +636,7 @@
 
 			// Check SDK OS Version
 			if ((sdk.getOSVersion().getMajor() < 9 ||
-				(sdk.getOSVersion().getMajor() == 9 && sdk.getOSVersion().getMinor() < 5))) {
+				(sdk.getOSVersion().getMajor() == 9 && sdk.getOSVersion().getMinor() < 4))) {
 				statusError(MessageFormat.format(
 						Messages.getString("SDKPreferencePage.Invalid_SDK_Message"),  //$NON-NLS-1$
 						sdk.getOSVersion().toString())); //$NON-NLS-1$
--- a/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/SDKPropertiesDialog.java	Thu Jun 03 09:58:29 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/SDKPropertiesDialog.java	Thu Jun 03 17:43:59 2010 -0500
@@ -16,20 +16,9 @@
 */
 package com.nokia.carbide.cpp.internal.sdk.ui;
 
-import java.io.File;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
 import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.jface.dialogs.TrayDialog;
 import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.TableEditor;
-import org.eclipse.swt.graphics.Color;
 import org.eclipse.swt.graphics.Point;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
@@ -42,27 +31,14 @@
 import org.eclipse.swt.widgets.TableItem;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.PlatformUI;
-import org.osgi.framework.Version;
 
-import com.nokia.carbide.cpp.sdk.core.ISDKManager;
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
-import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin;
 
 public class SDKPropertiesDialog extends TrayDialog {
 	
 	ISymbianSDK sdk;
-	private CCombo osVersionCombo;
-	private CCombo sdkVersionCombo;
-	private CCombo sdkNameCombo;
-	private CCombo isDefaultCombo;
-	private Text sdkIDText;
-	private Text epocRootText;
-//	private Button browseEPOCROOTButton;
 	private Table propsTable;
 	
-	private static String DEFAULT_DEVICE_YES = "yes"; //$NON-NLS-1$
-	private static String DEFAULT_DEVICE_NO = "no"; //$NON-NLS-1$
-	
 	/**
 	 * Create the dialog
 	 * @param parentShell
@@ -110,82 +86,10 @@
 		sdkPropCol2.setWidth(287);
 		sdkPropCol2.setText(Messages.getString("SDKPropertiesDialog.Value")); //$NON-NLS-1$
 		
-		// SDK ID at Row 1.
-		TableItem itemSDKId = new TableItem(propsTable, SWT.NONE);
-		itemSDKId.setText(new String[] { Messages.getString("SDKPropertiesDialog.SDK_ID"), "" }); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		// SDK Name at Row 2.
-		TableItem itemSDKName = new TableItem(propsTable, SWT.NONE);
-		itemSDKName.setText(new String[] { Messages.getString("SDKPropertiesDialog.SDK_Name"), "" }); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		// SDK Name at Row 3.
-		TableItem itemEPOCROOTName = new TableItem(propsTable, SWT.NONE);
-		itemEPOCROOTName.setText(new String[] { "EPOCROOT", "", "" }); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		
-		// OS Version at Row 4.
+		// OS Version at Row 1.
 		TableItem itemOSVersion = new TableItem(propsTable, SWT.NONE);
-		itemOSVersion.setText(new String[] { Messages.getString("SDKPropertiesDialog.OS_Version"), "" }); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		// SDK Version at Row 5.
-		TableItem itemSDKVersion = new TableItem(propsTable, SWT.NONE);
-		itemSDKVersion.setText(new String[] { Messages.getString("SDKPropertiesDialog.SDK_Version"), "" }); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		//	Is default at Row 6.
-		TableItem itemDefaultDevice = new TableItem(propsTable, SWT.NONE);
-		itemDefaultDevice.setText(new String[] { Messages.getString("SDKPropertiesDialog.Default_SDK"), "" }); //$NON-NLS-1$ //$NON-NLS-2$
-		
-		TableItem itemPrefixFile = new TableItem(propsTable, SWT.NONE);
-		if ((sdk.getPrefixFile() != null) && (sdk.getPrefixFile().toString().length() > 0)){
-			itemPrefixFile.setText(new String[] { Messages.getString("SDKPropertiesDialog.Prefix_File"), sdk.getPrefixFile().toString()}); //$NON-NLS-1$
-		} else {
-			itemPrefixFile.setText(new String[] { Messages.getString("SDKPropertiesDialog.Prefix_File"), "unknown"}); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		
-		
-		IPath incPath = sdk.getIncludePath();
-		if (incPath != null){
-			TableItem itemIncPath = new TableItem(propsTable, SWT.NONE);
-			itemIncPath.setText(new String[] { Messages.getString("SDKPropertiesDialog.Include_Dir"), incPath.toOSString()}); //$NON-NLS-1$
-		}
-		
-		IPath toolsPath = sdk.getToolsPath();
-		if (toolsPath != null){
-			TableItem itemToolsPath = new TableItem(propsTable, SWT.NONE);
-			itemToolsPath.setText(new String[] { Messages.getString("SDKPropertiesDialog.Tools_Dir"), toolsPath.toOSString()}); //$NON-NLS-1$
-		}
-		
-		IPath relRoot = sdk.getReleaseRoot();
-		if (relRoot != null){
-			TableItem itemRelRootPath = new TableItem(propsTable, SWT.NONE);
-			itemRelRootPath.setText(new String[] { Messages.getString("SDKPropertiesDialog.Release_Dir"), relRoot.toOSString()}); //$NON-NLS-1$
-		}
-		
-		Date createDate = sdk.getCreationDate();
-		if (createDate != null){
-			TableItem itemDate = new TableItem(propsTable, SWT.NONE);
-			itemDate.setText(new String[] { Messages.getString("SDKPropertiesDialog.SDK_Create_Date"), createDate.toString()}); //$NON-NLS-1$
-		}
-		
-		URL url =sdk.getPublisherURL();
-		if (url != null){
-			TableItem itemURL = new TableItem(propsTable, SWT.NONE);
-			itemURL.setText(new String[] { Messages.getString("SDKPropertiesDialog.Publisher_URL"), url.toString()}); //$NON-NLS-1$
-		}
-		
-		String pubName = sdk.getPublisherName();
-		if (pubName != null && pubName.length() > 0){
-			TableItem itemVendor = new TableItem(propsTable, SWT.NONE);
-			itemVendor.setText(new String[] { Messages.getString("SDKPropertiesDialog.Publisher_Name"), pubName}); //$NON-NLS-1$
-		}
-		
-		String descr = sdk.getSDKDescription();
-		if (descr != null && descr.length() > 0){
-			TableItem itemSDKDescr = new TableItem(propsTable, SWT.NONE);
-			itemSDKDescr.setText(new String[] { Messages.getString("SDKPropertiesDialog.SDK_Description"), descr}); //$NON-NLS-1$
-		}
-		
-		// Set up the editable fields
-		setUpTableEditFields();
+		itemOSVersion.setText(new String[] {Messages.getString("SDKPropertiesDialog.OS_Version"),  //$NON-NLS-2$
+											sdk.getOSVersion().toString() + sdk.getSDKOSBranch()}); //$NON-NLS-1$
 		
 		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, SDKUIHelpIds.SDK_PROPERTIES_DIALOG);
 		
@@ -200,8 +104,6 @@
 	protected void createButtonsForButtonBar(Composite parent) {
 		createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,
 				true);
-		createButton(parent, IDialogConstants.CANCEL_ID,
-				IDialogConstants.CANCEL_LABEL, false);
 	}
 
 	/**
@@ -211,207 +113,5 @@
 	protected Point getInitialSize() {
 		return new Point(418, 375);
 	}
-	
-	private void setUpTableEditFields(){
-		TableItem[] items = propsTable.getItems();
-		TableEditor editor = new TableEditor(propsTable);
-		
-		// Add the SDK ID editor to the 1st row, seonds column
-		sdkIDText = new Text(propsTable, SWT.NONE);
-		sdkIDText.setText(sdk.getUniqueId());
-	    editor.grabHorizontal = true;
-	    editor.setEditor(sdkIDText, items[0], 1);
-	    Color white = getShell().getDisplay().getSystemColor(SWT.COLOR_WHITE);
-	    sdkIDText.setBackground(white);  
-		
-	    //	 Add the SDK Name combo to the 2nd row, second column
-	    editor = new TableEditor(propsTable);
-		sdkNameCombo = new CCombo(propsTable, SWT.NONE);
-		sdkNameCombo.setText(sdk.getName());
-		sdkNameCombo.add(ISymbianSDK.S60_SDK_NAME);
-		sdkNameCombo.add(ISymbianSDK.S80_SDK_NAME);
-		sdkNameCombo.add(ISymbianSDK.TECHVIEW_SDK_NAME);
-		sdkNameCombo.add(ISymbianSDK.UIQ_SDK_NAME);
-	    editor.grabHorizontal = true;
-	    editor.setEditor(sdkNameCombo, items[1], 1);
-	    sdkIDText.setBackground(white); 
-	    
-	    /*
-	     * ??? HOW DO YOU ADD A BUTTON TO A CELL  WITH ANOTHER CONTROL
-	    editor = new TableEditor(propsTable);
-	    browseEPOCROOTButton = new Button(propsTable, SWT.RIGHT);
-	    browseEPOCROOTButton.setBounds(5, 5, 5, 5);
-		browseEPOCROOTButton.setToolTipText("Choose the folder where 'epoc32' exists.");
-		browseEPOCROOTButton.setText("...");
-		 editor.grabHorizontal = true;
-		editor.setEditor(browseEPOCROOTButton, items[2], 1);
-		//addButtonListener(browseEPOCROOTButton);
-	    */
-	    //  Add the EPOCROOT text to the 3rd row, second column
-	    editor = new TableEditor(propsTable);
-		epocRootText = new Text(propsTable, SWT.NONE);
-		epocRootText.setText(sdk.getEPOCROOT());
-	    editor.grabHorizontal = true;
-	    editor.setEditor(epocRootText, items[2], 1);
-	    epocRootText.setBackground(white);
-	    
-	    // Add the OS Version combo to the 4th row, second column
-	    editor = new TableEditor(propsTable);
-		osVersionCombo = new CCombo(propsTable, SWT.NONE);
-		osVersionCombo.setText(sdk.getOSVersion().toString() + sdk.getSDKOSBranch());
-		List<String> supportedOSVersions = new ArrayList<String>();
-		ISDKManager sdkMgr = SDKCorePlugin.getSDKManager();
-		supportedOSVersions = sdkMgr.getSymbianMacroStore().getSupportedOSVersions();
-		for (String currVer : supportedOSVersions){
-			osVersionCombo.add(currVer);
-		}
-	    editor.grabHorizontal = true;
-	    editor.setEditor(osVersionCombo, items[3], 1);
-	    osVersionCombo.setBackground(white); 
-	    osVersionCombo.setEditable(false);
-	    
-	    // Add the SDK Version combo to the 5th row, second column
-	    editor = new TableEditor(propsTable);
-	    sdkVersionCombo = new CCombo(propsTable, SWT.NONE);
-	    sdkVersionCombo.setText(sdk.getSDKVersion().toString());
-	    List<String> sdkVersions = new ArrayList<String>();
-	    sdkVersions = sdkMgr.getSymbianMacroStore().getSDKVersions();
-		for (String currVer : sdkVersions){
-			sdkVersionCombo.add(currVer);
-		}
-	    editor.grabHorizontal = true;
-	    editor.setEditor(sdkVersionCombo, items[4], 1);
-	    sdkVersionCombo.setBackground(white);
-	    
-	    // Add the default combo to the 6th row, second column
-	    editor = new TableEditor(propsTable);
-	    isDefaultCombo = new CCombo(propsTable, SWT.NONE);
-	    editor.grabHorizontal = true;
-	    editor.setEditor(isDefaultCombo, items[5], 1);
-	    isDefaultCombo.add(DEFAULT_DEVICE_YES);
-	    isDefaultCombo.add(DEFAULT_DEVICE_NO);
-	    if (sdk.isDefaultSDK()){
-	    	isDefaultCombo.setText(DEFAULT_DEVICE_YES);
-	    } else {
-	    	isDefaultCombo.setText(DEFAULT_DEVICE_NO);
-	    }
-	}
-
-	@Override
-	protected void okPressed() {
-		
-		if (!validateData()){
-			return;
-		}
-		
-		ISDKManager sdkMgr = SDKCorePlugin.getSDKManager();
-		if (!sdk.getUniqueId().equals(sdkIDText.getText())){
-			// SDK ID has changed, we'll need to delete the old ID from devices.xml
-			sdkMgr.removeSDK(sdk.getUniqueId());
-		}
-		sdk.setUniqueID(sdkIDText.getText());
-		if (sdk.getEPOCROOT().compareTo(epocRootText.getText()) != 0){
-			// EPOCROOT has changed, re-scan the SDK.
-			sdk.setEPOCROOT(epocRootText.getText());
-			sdk.scanSDK();
-		}
-		
-		sdk.setName(sdkNameCombo.getText());
-		
-		String osVerString = osVersionCombo.getText();
-		int len = osVerString.length();
-		if (Character.isLetter(osVerString.charAt(len-1))){
-			String branch = osVerString.substring(len-1);
-			sdk.setOSSDKBranch(branch);
-			osVerString = osVerString.substring(0, len-1);
-		} else {
-			sdk.setOSSDKBranch(""); //$NON-NLS-1$
-		}
-		
-		sdk.setOSVersion(Version.parseVersion(osVerString));
-		
-		try {
-			sdk.setSDKVersion(Version.parseVersion(sdkVersionCombo.getText()));
-		} catch (NumberFormatException e) {
-			MessageDialog.openError(getShell(), Messages.getString("SDKPropertiesDialog.Illegal_Verion_Title"), Messages.getString("SDKPropertiesDialog.Illegal_SDKVerion_Msg")); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-		
-		if (isDefaultCombo.getText().equals(DEFAULT_DEVICE_YES)){
-			sdk.setIsDefaultSDK(true);
-		} else {
-			sdk.setIsDefaultSDK(false);
-		}
-		sdkMgr.updateSDK(sdk);
-		sdkMgr.setDefaultSDK(sdk);
-	    
-		super.okPressed();
-	}
-	
-	private boolean validateData(){
-		boolean isOK = true;
-		
-		// make sure id is not null and is not a duplicate
-		if ((sdkIDText.getText().length() > 0) ){
-			if (!sdk.getUniqueId().equals(sdkIDText.getText())){
-				ISDKManager sdkMgr = SDKCorePlugin.getSDKManager();
-				List<ISymbianSDK> sdkList = sdkMgr.getSDKList();
-				for (ISymbianSDK currSDK : sdkList){
-					if (currSDK.getUniqueId().equalsIgnoreCase(sdkIDText.getText())){
-						MessageDialog.openError(getShell(), Messages.getString("SDKPropertiesDialog.Duplicate_ID"), Messages.getString("SDKPropertiesDialog.Duplicate_ID_Message")); //$NON-NLS-1$ //$NON-NLS-2$
-						return false;
-					}
-				}
-			}
-		} else {
-			MessageDialog.openError(getShell(), Messages.getString("SDKPropertiesDialog.Zero_Len_ID"), Messages.getString("SDKPropertiesDialog.Zero_Len_ID_Msg")); //$NON-NLS-1$ //$NON-NLS-2$
-			return false;
-		}
-		
-		// make sure name is proper format
-		if (sdkNameCombo.getText().length() > 0){
-			if (!isValidVendorName(sdkNameCombo.getText())){
-				return false;
-			}
-		}else{
-			MessageDialog.openError(getShell(), Messages.getString("SDKPropertiesDialog.Zero_Len_Name"), Messages.getString("SDKPropertiesDialog.Zero_Len_Name_Msg")); //$NON-NLS-1$ //$NON-NLS-2$
-			return false;
-		}
-		
-		// make sure epocroot exists
-		if (epocRootText.getText().length() > 0){
-			if (!epocRootText.getText().equals(sdk.getEPOCROOT())){
-				File rootFile = new File(epocRootText.getText());
-				if (!rootFile.exists()){
-					if (!MessageDialog.openQuestion(getShell(), Messages.getString("SDKPropertiesDialog.EPOCROOT_No_Exist"), Messages.getString("SDKPropertiesDialog.EPOCROOT_No_Exist_Msg"))){ //$NON-NLS-1$ //$NON-NLS-2$
-						return false;
-					}				
-				}
-			}
-		}else{
-			MessageDialog.openError(getShell(), Messages.getString("SDKPropertiesDialog.Zero_Len_EPOCROOT"), Messages.getString("SDKPropertiesDialog.Zero_Len_EPOCROOT_Msg")); //$NON-NLS-1$ //$NON-NLS-2$
-			return false;
-		}
-		return isOK;
-	}
-	
-	private boolean isValidVendorName(String vendor){
-		boolean isValid = true;
-		
-		String[] vendorSplit = vendor.split("[.]"); //$NON-NLS-1$
-		if (vendorSplit.length == 3){ 
-			if (!vendorSplit[0].toLowerCase().startsWith("com")){ //$NON-NLS-1$
-			isValid = false;
-			}
-		} else {
-			isValid = false;
-		}
-		
-		if (isValid == false){
-			MessageDialog.openError(getShell(), Messages.getString("SDKPropertiesDialog.Invalid_Name_Attrib"), Messages.getString("SDKPropertiesDialog.Invalid_Name_Attrib_Msg")); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-			
-		return isValid;
-	}
 
 }
--- a/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/messages.properties	Thu Jun 03 09:58:29 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/sdk/ui/messages.properties	Thu Jun 03 17:43:59 2010 -0500
@@ -2,33 +2,7 @@
 SDKPropertiesDialog.Available_SDK_Properties=Available SDK properties:
 SDKPropertiesDialog.Property=Property
 SDKPropertiesDialog.Value=Value
-SDKPropertiesDialog.SDK_ID=SDK ID
-SDKPropertiesDialog.SDK_Name=SDK Name
 SDKPropertiesDialog.OS_Version=OS Version
-SDKPropertiesDialog.SDK_Version=SDK Version
-SDKPropertiesDialog.Default_SDK=Default SDK
-SDKPropertiesDialog.Prefix_File=Prefix File
-SDKPropertiesDialog.Include_Dir=Include Dir
-SDKPropertiesDialog.Tools_Dir=Tools Dir
-SDKPropertiesDialog.Release_Dir=Release Dir
-SDKPropertiesDialog.SDK_Create_Date=SDK Creation Date
-SDKPropertiesDialog.Publisher_URL=Publisher URL
-SDKPropertiesDialog.Illegal_Verion_Title=Illegal Version Format Exception
-SDKPropertiesDialog.Illegal_SDKVerion_Msg=The SDK version is improperly formatted. Make sure it is of format major.minor[.increment].
-SDKPropertiesDialog.Publisher_Name=Publisher Name
-SDKPropertiesDialog.SDK_Description=SDK Description
-SDKPropertiesDialog.Duplicate_ID=Duplicate ID
-SDKPropertiesDialog.Duplicate_ID_Message=The SDK ID you have chosen is not unique. Please enter a unique SDK ID.
-SDKPropertiesDialog.Zero_Len_ID=Zero Length ID
-SDKPropertiesDialog.Zero_Len_ID_Msg=Please enter a unique SDK ID
-SDKPropertiesDialog.Zero_Len_Name=Zero Length Name
-SDKPropertiesDialog.Zero_Len_Name_Msg=Please enter an SDK name or choose one from the pop-up menu.
-SDKPropertiesDialog.EPOCROOT_No_Exist=EPOCROOT does not exist.
-SDKPropertiesDialog.EPOCROOT_No_Exist_Msg=Do you want to add an EPOCROOT value that does not exist?
-SDKPropertiesDialog.Zero_Len_EPOCROOT=Zero Length EPOCROOT
-SDKPropertiesDialog.Zero_Len_EPOCROOT_Msg=Please enter an EPOCROOT.
-SDKPropertiesDialog.Invalid_Name_Attrib=Invalid 'name' attribute.
-SDKPropertiesDialog.Invalid_Name_Attrib_Msg=The SDK name must be of the format com.<vendor>.<sdk>
 
 SDKPreferencePage.Browse_Location_Label=...
 SDKPreferencePage.Add_Button_Label=Add
@@ -47,7 +21,7 @@
 SDKPreferencePage.SDK_Table_ID_Column_Label=SDK ID
 SDKPreferencePage.SDK_Table_Location_Column_Label=Location
 SDKPreferencePage.Invalid_Location_Message=Invalid location. '\\epoc32\\' does not exist at specified location.
-SDKPreferencePage.Invalid_SDK_Message=Invalid SDK. OS version {0} no supported. Must be verison 9.5 or higher.
+SDKPreferencePage.Invalid_SDK_Message=Invalid SDK. OS version {0} not supported. Must be verison 9.4 or higher.
 
 BuildPlatformFilterPage.Select_Platforms_Help=Select which platforms are visible when creating projects or new build configurations.
 BuildPlatformFilterPage.Specify_Platforms_Help=Specifies platforms to be displayed for OS 9.x and 8.1b