Merge commit
authorEd Swartz <ed.swartz@nokia.com>
Tue, 21 Sep 2010 11:35:38 -0500
changeset 2084 588b26a6b387
parent 2083 8a7ea8bb2e31 (current diff)
parent 2082 efbf4aa05426 (diff)
child 2085 cc55c9707fe4
Merge commit
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java	Tue Sep 21 11:35:22 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java	Tue Sep 21 11:35:38 2010 -0500
@@ -476,11 +476,7 @@
 		args.add(cpi.getAbsoluteBldInfPath().toOSString());
 		args.add("-c"); //$NON-NLS-1$
 		IPath componentPath = null;
-		if (sbsArgs.size() >= 2){
-			componentPath =  new Path(sbsArgs.get(sbsArgs.indexOf("-p")+ 1));
-			sbsArgs.remove(1);
-			sbsArgs.add(componentPath.lastSegment());
-		} 
+
 		String configName = getConfigName(buildConfig, componentPath);
 		
 		if (isTest) {
Binary file core/com.nokia.carbide.cpp.doc.user/html/qt_help/images/qt_dlg_add_version.png has changed
Binary file core/com.nokia.carbide.cpp.doc.user/html/qt_help/images/qt_dlg_edit_version.png has changed
Binary file core/com.nokia.carbide.cpp.doc.user/html/qt_help/images/qt_pref_panel.png has changed
--- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_pref_panel.htm	Tue Sep 21 11:35:22 2010 -0500
+++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_pref_panel.htm	Tue Sep 21 11:35:38 2010 -0500
@@ -10,7 +10,7 @@
 <body >
 <h2>Qt Preference Panel</h2>
 <p>The <b>Qt</b> preference panel provides global settings for Qt-based projects. Use it to add, edit, remove, and assign the default Qt version for projects.</p>
-<p align="center"><img src="images/qt_pref_panel.png" width="627" height="544"></p>
+<p align="center"><img src="images/qt_pref_panel.png" width="658" height="554"></p>
 <p class="figure">Figure 1. Qt preference panel</p>
 <p>The following commands appear on the toolbar within the Qt preference panel: </p>
 <table width="100%"  border="0" cellpadding="2" cellspacing="0">
@@ -25,13 +25,13 @@
   <tr>
     <td><p><b>Add...</b></p>    </td>
     <td><p>Click <b>Add</b> to open the <b>Add new Qt version</b> dialog where you can specify a Qt SDK by name and location.</p>
-    <p align="center"><img src="images/qt_dlg_add_version.png" width="450" height="415"></p>
+    <p align="center"><img src="images/qt_dlg_add_version.png" width="525" height="433"></p>
     <p class="figure">Figure 2. Add new Qt version dialog</p></td>
   </tr>
   <tr>
     <td><b>Edit...</b></td>
     <td><p>Click <b>Edit</b> to open the <b>Edit Qt Version</b> dialog where you can modify the Qt SDK information for the selected Qt version.</p>
-    <p align="center"><img src="images/qt_dlg_edit_version.png" width="450" height="415"></p>
+    <p align="center"><img src="images/qt_dlg_edit_version.png" width="525" height="433"></p>
     <p class="figure">Figure 3. Edit Qt Version dialog</p></td>
   </tr>
   <tr>
Binary file core/com.nokia.carbide.cpp.doc.user/html/reference/images/view_carbide_portal.png has changed
--- a/core/com.nokia.carbide.cpp.doc.user/html/reference/view_carbide_portal.htm	Tue Sep 21 11:35:22 2010 -0500
+++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/view_carbide_portal.htm	Tue Sep 21 11:35:38 2010 -0500
@@ -10,37 +10,80 @@
 <body >
 <h2>Carbide.c++ Portal  view</h2>
 <p>The <strong>Carbide.c++ Portal</strong>  view provides a single point of information on Carbide news, new releases, additional extensions, and support. The<strong> Carbide.c++ Portal</strong><strong> </strong>view is shown by clicking <strong>Help &gt; Carbide.c++ Portal</strong>.</p>
-<p align="center"><img src="images/view_carbide_portal.png" width="765" height="507"></p>
-<p class="figure">Figure 1. Install Extensions page in the Carbide Portal view</p>
-<p>Click on the <img src="images/icon_show_overview.png" alt="Show Overview icon" width="18" height="18" align="absmiddle"> (Show Overview) icon to show an information popup with additional information on the selected plug-in.</p>
+<p align="center"><img src="images/view_carbide_portal.png" width="840" height="548"></p>
+<p class="figure">Figure 1. Customize page in the Carbide.c++ Portal view</p>
+<p>If the <b>Show Installed</b> option is checkmarked, the list only shows the extensions  currently installed. To show more information on a specific extension click the <img src="images/icon_show_overview.png" alt="Show Overview icon" width="18" height="18" align="absmiddle"> (Show Overview) icon (Figure 2).</p>
 <p align="center"><img src="images/view_show_overview_popup.png" width="748" height="349"></p>
-<p class="figure">Figure 2. Install Extensions Plug-in Information popup </p>
-<h2>Install Extensions page  options</h2>
-<h5>Table 1 <span class="figure">Install Actions</span> options </h5>
+<p class="figure">Figure 2. Extension information popup </p>
+<h2>Install section</h2>
+<p>The Install section provides options for installing additional Carbide extensions.</p>
+<h5>Table 1. Install options </h5>
 <table width="83%"  border="0" cellpadding="2" cellspacing="0">
     <tr>
         <th width="29%" scope="col">Item</th>
         <th width="63%" scope="col">Explanation</th>
     </tr>
     <tr>
+        <td><b>Install...</b></td>
+        <td>Installs only the checked items in the extension list.</td>
+    </tr>
+    <tr>
         <td><b>Refresh</b></td>
         <td><p>Refreshes the plug-in list.</p></td>
     </tr>
     <tr>
-        <td><strong>Check All Items</strong></td>
+        <td><strong>Select all</strong></td>
         <td>Marks all extensions for installation.</td>
     </tr>
     <tr>
-        <td><strong>Uncheck All Items</strong></td>
+        <td><strong>Deselect all</strong></td>
         <td>Unchecks all extensions to prevent installation.</td>
     </tr>
     <tr>
-        <td><p><strong>Installed Checked Items</strong></p>        </td>
-        <td>Installs only the checked items in the extension list.</td>
+        <td><strong>Advanced install...</strong></td>
+        <td>Launches the <strong>Install New Software</strong> wizard.</td>
+    </tr>
+</table>
+<h2>Migrate section</h2>
+<p>The Migrate section provides options for saving or restoring the custom settings.</p>
+<h5>Table 2. Migrate options </h5>
+<table width="83%"  border="0" cellpadding="2" cellspacing="0">
+    <tr>
+        <th width="29%" scope="col">Item</th>
+        <th width="63%" scope="col">Explanation</th>
+    </tr>
+    <tr>
+        <td><b>Export...</b></td>
+        <td>Click to export the current feature configuration.</td>
     </tr>
     <tr>
-        <td><strong>Advanced Install...</strong></td>
-        <td>Launches the <strong>Install New Software</strong> wizard.</td>
+        <td><b>Import...</b></td>
+        <td><p>Click to import a saved feature configuration settings file.</p></td>
+    </tr>
+</table>
+<h2>Settings section  </h2>
+<p>The Settings section provides access to several common ways to customize the Carbide program.</p>
+<h5>Table 3. Settings options </h5>
+<table width="83%"  border="0" cellpadding="2" cellspacing="0">
+    <tr>
+        <th width="29%" scope="col">Item</th>
+        <th width="63%" scope="col">Explanation</th>
+    </tr>
+    <tr>
+        <td><b>Capabilities</b></td>
+        <td>Click to open the <b>Capabilities</b> preference panel where you can control which product components.</td>
+    </tr>
+    <tr>
+        <td><b>Code Style</b></td>
+        <td>Click to open the <b>Code Style</b> preference panel to customize the C/C++ editor appearance and behavior.</td>
+    </tr>
+    <tr>
+        <td><b>Key Bindings</b></td>
+        <td>Click to open the <b>Keys</b> preference panel to customize program key bindings.</td>
+    </tr>
+    <tr>
+        <td><b>Proxies</b></td>
+        <td>Click to open the <b>Network Connections</b> preference panel to change proxy settings.</td>
     </tr>
 </table>
 <h5>Related references </h5>
--- a/core/com.nokia.carbide.cpp.doc.user/tocCarbide.xml	Tue Sep 21 11:35:22 2010 -0500
+++ b/core/com.nokia.carbide.cpp.doc.user/tocCarbide.xml	Tue Sep 21 11:35:38 2010 -0500
@@ -284,7 +284,6 @@
        </topic>
       <topic label="Stop Mode Debug Example" 				href="html/tasks/debugger/stop_mode_debug.htm" >
         <topic label="On-Device Debugging Preconditions" href="html/tasks/debugger/stop_mode_debug_precond.htm" />
-        <topic label="Using Soft Attach"	 href="html/tasks/debugger/soft_attach_debug.htm" />
       </topic>
       <topic label="Building a ROM Image File"            href="html/reference/ROM_build_settings.html" />
       <topic label="Toggle HW Breakpoint"           		href="html/reference/menus/hardware_breakpoints.htm" />
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/sbsv2/SBSv2QueryUtils.java	Tue Sep 21 11:35:22 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/sbsv2/SBSv2QueryUtils.java	Tue Sep 21 11:35:38 2010 -0500
@@ -143,18 +143,25 @@
 	}
 
 	@SuppressWarnings("unchecked")
+	/**
+	 * Adds build config info for a single Raptor build config in an SDK. If the config exists in the map it
+	 * will be overwritten
+	 */
 	public static void storeConfigQueryDataForSDK(ISymbianSDK sdk, String alias, SBSv2ConfigQueryData configQueryData) {
 		Map<String, SBSv2ConfigQueryData> configsMap = SDKCacheUtils.getCache().getCachedData(CONFIG_CACHE_KEY, Map.class, 0);
 		String key = (new SBSv2SDKKey(sdk)).toString() + "[" + alias + "]";
 
 		if (configsMap == null) {
 			configsMap = new HashMap<String, SBSv2ConfigQueryData>();
-		} else {
-			if (configsMap.get(key) != null) {
-				// configQueryData already exist in cache
-				return;
-			}
 		}
+		// Always add the config, b/c if there's an erro in the config we want to be able to update it
+		// when the IDE rescans at startup checking for Raptor config errors that were saved to the cache
+//		else {
+//			if (configsMap.get(key) != null) {
+//				// configQueryData already exist in cache
+//			//	return;
+//			}
+//		}
 
 		configsMap.put(key, configQueryData);
 		SDKCacheUtils.getCache().putCachedData(CONFIG_CACHE_KEY, (Serializable)configsMap, 0);		
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SBSv2BuildInfo.java	Tue Sep 21 11:35:22 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SBSv2BuildInfo.java	Tue Sep 21 11:35:38 2010 -0500
@@ -68,7 +68,7 @@
 
 	public List<ISymbianBuildContext> getAllBuildConfigurations() {
 		// This really only applies to SBSv1. We never return the full list of configs for SBSv2, only the filtered ones
-		return sortContexts(sbsv2FilteredContexts);
+		return getFilteredBuildConfigurations();
 	}
 
 	public void clearDataFromBuildCache(){
@@ -122,14 +122,11 @@
 			}
 		} 
 		
-		
-		
 		return sortContexts(sbsv2FilteredContexts);
 	}
 
 	private void initSBSv2BuildContextList(List<String> allowedConfigs) throws SBSv2MinimumVersionException {
 		List<String> filteredAliasList = new ArrayList<String>();
-		
 		for (String alias : aliasToMeaningMap.keySet()){
 			for (String checkedAlias : allowedConfigs){
 				if (checkedAlias.equalsIgnoreCase(alias)){
@@ -155,20 +152,28 @@
 
 		List<String> processedAliasList = new ArrayList<String>();
 		sbsv2FilteredContexts.clear();
+		// First check if we have scanned configs already this IDE session.
+		// We don't want to scan broken configs over and over
+		boolean isStartUpScan = !((SymbianSDK)sdk).hasScannedRaptor();
+		
 		for (String alias : filteredAliasList) {
 			SBSv2ConfigQueryData configQueryData = SBSv2QueryUtils.getConfigQueryDataForSDK(sdk, alias);
-			if (configQueryData != null && configQueryData.getConfigurationErrorMessage().trim().length() == 0) {
-				ISBSv2BuildContext sbsv2Context = new BuildContextSBSv2(sdk, alias, configQueryData);
-				sbsv2FilteredContexts.add(sbsv2Context);
-				processedAliasList.add(alias);
+			if (configQueryData != null) {
+				if (configQueryData.getConfigurationErrorMessage().trim().length() == 0 || isStartUpScan == false){
+					ISBSv2BuildContext sbsv2Context = new BuildContextSBSv2(sdk, alias, configQueryData);
+					sbsv2FilteredContexts.add(sbsv2Context);
+					processedAliasList.add(alias);
+				}
 			}
 		}
 
 		if (!processedAliasList.isEmpty()) {
-			filteredAliasList.removeAll(processedAliasList);
+			filteredAliasList.removeAll(processedAliasList); // Get the configs that had errors
 		}
 
 		if (!filteredAliasList.isEmpty()) {
+			// These configs have no data or had errors in them reported by Raptor
+			
 			String configQueryXML = SBSv2QueryUtils.getConfigQueryXMLforSDK(sdk, filteredAliasList);
 
 			for (String alias : filteredAliasList) {
@@ -189,6 +194,11 @@
 		}
 
 		checkWINSCWSupport();
+		if (!((SymbianSDK)sdk).hasScannedRaptor()){
+			((SymbianSDK)sdk).setScannedRaptor(true);
+			SBSv2QueryUtils.flushAllSBSv2Caches();
+		}
+		
 	}
 
 	private void checkWINSCWSupport() {
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SymbianSDK.java	Tue Sep 21 11:35:22 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SymbianSDK.java	Tue Sep 21 11:35:38 2010 -0500
@@ -78,6 +78,8 @@
 	private Map<String, File> prefixFileMap = new HashMap<String, File>();
 	private Set<Object> sdkFeatures = new HashSet<Object>();
 
+	private boolean hasScannedRaptor;
+	
 	public SymbianSDK(DeviceType device) {
 		deviceEntry = device;
 		scanSDK();
@@ -628,5 +630,12 @@
 		return foundOSVersion;
 		
 	}
+	
+	public boolean hasScannedRaptor(){
+		return hasScannedRaptor;
+	}
 
+	void setScannedRaptor(boolean hasScannedRaptor){
+		this.hasScannedRaptor = hasScannedRaptor;
+	}
 }
--- a/core/com.nokia.carbide.cpp/plugin_customization.ini	Tue Sep 21 11:35:22 2010 -0500
+++ b/core/com.nokia.carbide.cpp/plugin_customization.ini	Tue Sep 21 11:35:38 2010 -0500
@@ -270,3 +270,6 @@
 
 # disable certain SBSv2 configurations by default
 com.nokia.carbide.cpp.sdk.core/sbsv2FilteredConfigs=tools2_deb;tools2_rel;gccxml_udeb;gccxml_urel;tools_deb;tools_rel
+
+#enable p2 automatic updates
+org.eclipse.equinox.p2.ui.sdk.scheduler/enabled=true