add comments for new code under bug 10681.
authortimkelly
Fri, 12 Feb 2010 11:55:42 -0600
changeset 947 cb7b077cee27
parent 946 18229ce040aa
child 948 ee68c935ffb7
add comments for new code under bug 10681.
core/com.nokia.carbide.cpp.sdk.core/plugin.xml
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/ISDKManagerLoadedHook.java
qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtCorePlugin.java
qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtSDKUtils.java
qt/com.nokia.carbide.cpp.qt.ui/src/com/nokia/carbide/cpp/internal/qt/ui/QtUIPlugin.java
--- a/core/com.nokia.carbide.cpp.sdk.core/plugin.xml	Fri Feb 12 09:58:21 2010 -0600
+++ b/core/com.nokia.carbide.cpp.sdk.core/plugin.xml	Fri Feb 12 11:55:42 2010 -0600
@@ -30,6 +30,7 @@
       </scriptableClass>
    </extension>
 
+  <!-- Convenience extension so clients can know when the SDKs have loaded to avoid earlyStartup -->
   <extension-point id="sdkManagerLoadedHook" name="SDKManager Available Notification"/>
 
 </plugin>
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/ISDKManagerLoadedHook.java	Fri Feb 12 09:58:21 2010 -0600
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/ISDKManagerLoadedHook.java	Fri Feb 12 11:55:42 2010 -0600
@@ -18,7 +18,8 @@
 public interface ISDKManagerLoadedHook {
 	
 	/**
-	 * Feature to notify that SDKs are loade
+	 * Feature to notify that SDKs are loaded the first time.
+	 * For subsequent SDK scan notifications see {@link com.nokia.carbide.cdt.builder.project.ICarbideConfigurationChangedListener}
 	 */
 	public void symbianSDKManagerLoaded();
 	
--- a/qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtCorePlugin.java	Fri Feb 12 09:58:21 2010 -0600
+++ b/qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtCorePlugin.java	Fri Feb 12 11:55:42 2010 -0600
@@ -125,10 +125,16 @@
 		job.schedule();
 	}
 
+	/**
+	 * ISDKManagerLoadedHook extension implementation
+	 */
 	public void symbianSDKManagerLoaded() {
 		scanForQtSDKs();
 	}
 
+	/**
+	 * Implements ICarbideInstalledSDKChangeListener. Ensures the Qt-SDK list is up to date with scanned Symbian SDKs
+	 */
 	public void installedSdkChanged(SDKChangeEventType eventType) {
 		scanForQtSDKs();
 	}
--- a/qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtSDKUtils.java	Fri Feb 12 09:58:21 2010 -0600
+++ b/qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtSDKUtils.java	Fri Feb 12 11:55:42 2010 -0600
@@ -15,9 +15,7 @@
 import java.io.File;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.logging.Logger;
 
-import org.eclipse.core.internal.runtime.Log;
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.CoreException;
@@ -28,15 +26,20 @@
 import org.eclipse.jface.preference.IPreferenceStore;
 
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
-import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin;
 import com.nokia.cpp.internal.api.utils.core.HostOS;
 import com.nokia.cpp.internal.api.utils.core.Logging;
 import com.trolltech.qtcppproject.QtProjectPlugin;
 import com.trolltech.qtcppproject.preferences.PreferenceConstants;
 
+/**
+ * Wrapper utils for the Qt-ecilpse integration and obtaining information about internally installed Qt-sdks
+ */
 @SuppressWarnings({ "restriction" })
 public class QtSDKUtils {
 	
+	/**
+	 * Represents one Qt-SDK from the Qt global preferences
+	 */
 	private static class QtSDK {
 		
 		QtSDK(String name, String incPath, String binPath){
@@ -68,6 +71,11 @@
 	// private data from QtProject.java
 	private static final String QTVERSION = "com.trolltech.qtcppproject.properties.qtversion";
 	
+	/**
+	 * For the given Symbian SDK, test whether or not it qualifies for have Qt internally built.
+	 * @param sdk - The Symbian SDK or source base to test
+	 * @return - true if Qt is internally installed
+	 */
 	static private boolean isQtInternallyInstalled(ISymbianSDK sdk){
 		
 		String epocRoot = sdk.getEPOCROOT();
@@ -86,6 +94,11 @@
 		return false;
 	}
 	
+	/**
+	 * For the given Symbian SDK, get the Qt SDK name from the Qt global preferences.
+	 * @param sdk
+	 * @return The Qt SDK display name in the preferences, null if not found
+	 */
 	static public String getQtSDKNameForSymbianSDK(ISymbianSDK sdk){
 		
 		String epocRoot = sdk.getEPOCROOT();
@@ -110,6 +123,12 @@
 		return null;
 	}
 	
+	/**
+	 * Add a single Qt-SDK BIN and INLCUDE path to the Qt global preferences iff it is an internally built
+	 * Qt-SDK and the BIN and INC path do not already exist.
+	 * @param sdk
+	 * @param makeDefault - Set the default name in the global Qt prefs
+	 */
 	static public void addQtSDKForSymbianSDK(ISymbianSDK sdk, boolean makeDefault){
 	
 		refreshQtStoredSDKs();
@@ -120,6 +139,13 @@
 		}
 	}
 	
+	/**
+	 * Add a Qt-SDK to the Qt global preferences
+	 * @param name
+	 * @param binPath
+	 * @param incPath
+	 * @param makeDefault
+	 */
 	static private void addQtSDK(String name, IPath binPath, IPath incPath, boolean makeDefault){
 
 		IPreferenceStore store = QtProjectPlugin.getDefault().getPreferenceStore();
@@ -147,6 +173,9 @@
 		refreshQtStoredSDKs();
 	}
 	
+	/**
+	 * Update the internal list of Qt-SDKs found in the Qt global preferences
+	 */
 	static void refreshQtStoredSDKs(){
 		
 		qtSDKList.clear();
@@ -178,10 +207,22 @@
 		}
 	}
 	
+	/**
+	 * This method assumes the IProject has a Qt nature and sets the QTVERSION in the Qt project settings panel
+	 * @param project
+	 * @param qtSDKName
+	 * @throws CoreException
+	 */
 	public static void setDefaultQtSDKForProject(IProject project, String qtSDKName) throws CoreException{
 		project.setPersistentProperty(new QualifiedName("", QTVERSION), qtSDKName);
 	}
 	
+	/**
+	 * Assuming a Qt project, this retrieves the Qt project setting for the currently set Qt-SDK
+	 * @param project
+	 * @return
+	 * @throws CoreException
+	 */
 	public static String getDefaultQtSDKForProject(IProject project) throws CoreException{
 		return project.getPersistentProperty(new QualifiedName("", QTVERSION));
 	}
--- a/qt/com.nokia.carbide.cpp.qt.ui/src/com/nokia/carbide/cpp/internal/qt/ui/QtUIPlugin.java	Fri Feb 12 09:58:21 2010 -0600
+++ b/qt/com.nokia.carbide.cpp.qt.ui/src/com/nokia/carbide/cpp/internal/qt/ui/QtUIPlugin.java	Fri Feb 12 11:55:42 2010 -0600
@@ -147,10 +147,19 @@
 		}
 	}
 	
+	/** 
+	 * Implements ICarbideConfigurationChangedListener
+	 */
 	public void buildConfigurationChanged(ICarbideBuildConfiguration currentConfig) {
 		checkDefaultQtSDKForProject(currentConfig);
 	}
 	
+	/**
+	 * For the newly selected build configuration, check and see if there's an analogous internally installed
+	 * Qt-SDK, and if so make that the default. The default should not change if already set to &ltDefault&gt in the qt preferences or
+	 * if the new configuration has no internally built Qt-SDK.
+	 * @param currentConfig
+	 */
 	@SuppressWarnings("restriction")
 	private void checkDefaultQtSDKForProject(ICarbideBuildConfiguration currentConfig){
 		IProject project = currentConfig.getCarbideProject().getProject();
@@ -172,6 +181,9 @@
 		
 	}
 
+	/** 
+	 * Implements ISDKManagerLoadedHook
+	 */
 	public void symbianSDKManagerLoaded() {
 		CarbideBuilderPlugin.addBuildConfigChangedListener(this);
 	}