# HG changeset patch # User dadubrow # Date 1271434702 18000 # Node ID a21830a6413e4a736f73deb38d0f9a7b65e3c5b0 # Parent 2304d196347009784470e2ebeb95509a9e4428eb# Parent a546534a48defb4720ea6e40861b0e14ca2a3649 merge diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/EpocEngineHelper.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/EpocEngineHelper.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/EpocEngineHelper.java Fri Apr 16 11:18:22 2010 -0500 @@ -16,30 +16,78 @@ */ package com.nokia.carbide.cdt.builder; +import java.io.File; +import java.io.FilenameFilter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.eclipse.cdt.core.CCorePlugin; +import org.eclipse.core.resources.IProject; +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IPath; +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Path; +import org.eclipse.core.runtime.Platform; +import org.eclipse.core.runtime.Plugin; + import com.nokia.carbide.cdt.builder.builder.CarbideCPPBuilder; -import com.nokia.carbide.cdt.builder.project.*; -import com.nokia.carbide.cpp.epoc.engine.*; -import com.nokia.carbide.cpp.epoc.engine.image.*; -import com.nokia.carbide.cpp.epoc.engine.model.bldinf.*; +import com.nokia.carbide.cdt.builder.project.ICarbideBuildConfiguration; +import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo; +import com.nokia.carbide.cdt.builder.project.ISISBuilderInfo; +import com.nokia.carbide.cdt.internal.builder.CarbideBuildConfiguration; +import com.nokia.carbide.cdt.internal.builder.ISBSv2BuildConfigInfo; +import com.nokia.carbide.cpp.epoc.engine.BldInfDataRunnableAdapter; +import com.nokia.carbide.cpp.epoc.engine.BldInfViewRunnableAdapter; +import com.nokia.carbide.cpp.epoc.engine.EpocEnginePlugin; +import com.nokia.carbide.cpp.epoc.engine.ImageMakefileDataRunnableAdapter; +import com.nokia.carbide.cpp.epoc.engine.MMPDataRunnableAdapter; +import com.nokia.carbide.cpp.epoc.engine.MMPViewRunnableAdapter; +import com.nokia.carbide.cpp.epoc.engine.PKGViewRunnableAdapter; +import com.nokia.carbide.cpp.epoc.engine.image.IBitmapSource; +import com.nokia.carbide.cpp.epoc.engine.image.IImageSource; +import com.nokia.carbide.cpp.epoc.engine.image.IMultiImageSource; +import com.nokia.carbide.cpp.epoc.engine.model.bldinf.IBldInfData; +import com.nokia.carbide.cpp.epoc.engine.model.bldinf.IBldInfView; +import com.nokia.carbide.cpp.epoc.engine.model.bldinf.IExport; import com.nokia.carbide.cpp.epoc.engine.model.bldinf.IExtension; +import com.nokia.carbide.cpp.epoc.engine.model.bldinf.IMMPReference; +import com.nokia.carbide.cpp.epoc.engine.model.bldinf.IMakMakeReference; +import com.nokia.carbide.cpp.epoc.engine.model.bldinf.IMakefileReference; import com.nokia.carbide.cpp.epoc.engine.model.makefile.image.IImageMakefileData; -import com.nokia.carbide.cpp.epoc.engine.model.mmp.*; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.EMMPLanguage; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.EMMPStatement; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPAIFInfo; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPBitmap; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPData; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPResource; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPView; +import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPViewConfiguration; import com.nokia.carbide.cpp.epoc.engine.preprocessor.AcceptedNodesViewFilter; import com.nokia.carbide.cpp.epoc.engine.preprocessor.AllNodesViewFilter; +import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils; import com.nokia.carbide.cpp.internal.api.sdk.SymbianBuildContext; import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext; import com.nokia.carbide.cpp.sdk.core.ISymbianSDK; -import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.*; -import com.nokia.cpp.internal.api.utils.core.*; - -import org.eclipse.cdt.core.CCorePlugin; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.runtime.*; - -import java.io.*; -import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; +import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.EPKGLanguage; +import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.IPKGEmbeddedSISFile; +import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.IPKGInstallFile; +import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.IPKGView; +import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.PKGModelHelper; +import com.nokia.cpp.internal.api.utils.core.CommonPathFinder; +import com.nokia.cpp.internal.api.utils.core.FileUtils; +import com.nokia.cpp.internal.api.utils.core.Logging; +import com.nokia.cpp.internal.api.utils.core.TextUtils; public class EpocEngineHelper { @@ -815,6 +863,13 @@ } String releasePlatform = buildConfig.getSDK().getBSFCatalog().getReleasePlatform(buildConfig.getBasePlatformForVariation()); + if (CarbideBuilderPlugin.getBuildManager().isCarbideSBSv2Project(buildConfig.getCarbideProject().getProject())){ + // Test is this is an SBSv2 build binary variant (changes the output directory) + ISBSv2BuildConfigInfo sbsv2Info = ((CarbideBuildConfiguration)buildConfig).getSBSv2BuildConfigInfo(); + if ( sbsv2Info != null && SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)) != null && !releasePlatform.contains(".") ){ + releasePlatform = releasePlatform + SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)); + } + } IPath path = buildConfig.getSDK().getReleaseRoot().append(releasePlatform).append(buildConfig.getTargetString()); // if targetpath is non-null and this is an EKA1 emulator config then add it diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/PKGViewPathHelper.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/PKGViewPathHelper.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/PKGViewPathHelper.java Fri Apr 16 11:18:22 2010 -0500 @@ -22,6 +22,9 @@ import com.nokia.carbide.cdt.builder.project.ICarbideBuildConfiguration; import com.nokia.carbide.cdt.builder.project.ISISBuilderInfo; +import com.nokia.carbide.cdt.internal.builder.CarbideBuildConfiguration; +import com.nokia.carbide.cdt.internal.builder.ISBSv2BuildConfigInfo; +import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils; import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.IPKGView; import com.nokia.cpp.internal.api.utils.core.Check; @@ -69,7 +72,14 @@ this.pkgFilePath = view.getModel().getPath(); this.buildConfig = buildConfig; this.epocRoot = new Path(buildConfig.getSDK().getEPOCROOT()); - this.platform = buildConfig.getPlatformString(); + this.platform = buildConfig.getPlatformString(); + if (CarbideBuilderPlugin.getBuildManager().isCarbideSBSv2Project(buildConfig.getCarbideProject().getProject())){ + // Test is this is an SBSv2 build binary variant (changes the output directory) + ISBSv2BuildConfigInfo sbsv2Info = ((CarbideBuildConfiguration)buildConfig).getSBSv2BuildConfigInfo(); + if ( sbsv2Info != null && SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)) != null && !platform.contains(".") ){ + this.platform = this.platform + SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)); + } + } this.target = buildConfig.getTargetString(); this.mainDirectory = pkgFilePath.removeLastSegments(1); } diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/builder/CarbideCPPBuilder.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/builder/CarbideCPPBuilder.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/builder/CarbideCPPBuilder.java Fri Apr 16 11:18:22 2010 -0500 @@ -59,12 +59,13 @@ import com.nokia.carbide.cdt.builder.project.IROMBuilderInfo; import com.nokia.carbide.cdt.builder.project.ISISBuilderInfo; import com.nokia.carbide.cdt.internal.api.builder.SISBuilderInfo2; +import com.nokia.carbide.cdt.internal.builder.CarbideBuildConfiguration; import com.nokia.carbide.cdt.internal.builder.CarbideSBSv1Builder; import com.nokia.carbide.cdt.internal.builder.CarbideSBSv2Builder; import com.nokia.carbide.cdt.internal.builder.ICarbideBuilder; +import com.nokia.carbide.cdt.internal.builder.ISBSv2BuildConfigInfo; import com.nokia.carbide.cdt.internal.builder.ui.BuilderPreferencePage; import com.nokia.carbide.cdt.internal.builder.ui.MMPSelectionDialog; -import com.nokia.carbide.cdt.internal.builder.ui.Messages; import com.nokia.carbide.cpp.epoc.engine.EpocEnginePlugin; import com.nokia.carbide.cpp.epoc.engine.MMPDataRunnableAdapter; import com.nokia.carbide.cpp.epoc.engine.PKGViewRunnableAdapter; @@ -74,6 +75,7 @@ import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPData; import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPResource; import com.nokia.carbide.cpp.epoc.engine.preprocessor.AcceptedNodesViewFilter; +import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils; import com.nokia.carbide.cpp.internal.qt.core.QtCorePlugin; import com.nokia.carbide.cpp.internal.x86build.X86BuildPlugin; import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext; @@ -1919,7 +1921,15 @@ pkgFileStr.contains(PKG_SYMBOL_TARGET) ) { // need to create a new PKG file, resolved... pkgFileStr = pkgFileStr.replace(PKG_SYMBOL_EPOCROOT, context.getSDK().getEPOCROOT()); - pkgFileStr = pkgFileStr.replace(PKG_SYMBOL_PLATFORM, context.getPlatformString()); + String platSubst = context.getPlatformString().toLowerCase(); + if (context instanceof CarbideBuildConfiguration){ + // Test is this is an SBSv2 build binary variant (changes the output directory) + ISBSv2BuildConfigInfo sbsv2Info = ((CarbideBuildConfiguration)context).getSBSv2BuildConfigInfo(); + if (sbsv2Info != null && SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)) != null){ + platSubst = platSubst + SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)); + } + } + pkgFileStr = pkgFileStr.replace(PKG_SYMBOL_PLATFORM, platSubst); pkgFileStr = pkgFileStr.replace(PKG_SYMBOL_TARGET, context.getTargetString()); IPath tmpPKGPath = pkgFile.removeLastSegments(1); diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/project/ICarbideProjectInfo.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/project/ICarbideProjectInfo.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/project/ICarbideProjectInfo.java Fri Apr 16 11:18:22 2010 -0500 @@ -297,13 +297,4 @@ * @since 2.2 */ public String extraSBSv2Args(); - - /** - * Appends arbitrary text to a default Carbide/Raptor configuration (the -c parameter). The default name is always given, e.g. armv5_urel, but users can - * append whatever they want to change the behavior of the build. - * @return the string to append the text to for the Raptor -c parameter - * - * @since 2.6 - */ - public String buildConfigAppender(); } diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java Fri Apr 16 11:18:22 2010 -0500 @@ -70,10 +70,6 @@ // SBSv2 only config settings protected final static String SBSV2_DATA_ID = "SBSV2_DATA_ID"; //$NON-NLS-1$ - protected final static String ATRRIB_CONFIG_BASE_PLATFORM = "CONFIG_BASE_PLATFORM"; //$NON-NLS-1$ - protected final static String ATTRIB_CONFIG_TARGET = "CONFIG_TARGET"; //$NON-NLS-1$ - protected final static String ATTRIB_SBSV2_BUILD_ALIAS = "SBSV2_BUILD_ALIAS"; //$NON-NLS-1$ - protected final static String ATTRIB_SBSV2_CONFIG_DISPLAY_STRING = "SBSV2_CONFIG_DISPLAY_STRING"; //$NON-NLS-1$ protected TrackedResource projectTracker; protected List sisBuilderInfoList; @@ -81,7 +77,8 @@ protected BuildArgumentsInfo buildArgumentsInfo; protected BuildConfigurationData buildConfigData; protected ROMBuilderInfo romBuilderInfo; - + protected SBSv2BuilderInfo sbsv2BuilderInfo; + public CarbideBuildConfiguration(IProject project, ISymbianBuildContext context) { super(context.getSDK(), context.getPlatformString(), context.getTargetString(), context.getSBSv2Alias()); projectTracker = new TrackedResource(project); @@ -90,6 +87,9 @@ buildArgumentsInfo = new BuildArgumentsInfo(getSDK()); buildConfigData = new BuildConfigurationData(this); romBuilderInfo = new ROMBuilderInfo(getSDK()); + if (context.getSBSv2Alias() != null){ + sbsv2BuilderInfo = new SBSv2BuilderInfo(context); + } } public void loadFromStorage(ICConfigurationDescription projDes) throws CoreException { @@ -111,6 +111,8 @@ loadBuildArgsFromStorage(se); } else if (se.getName().equals(ROM_BUILDER_DATA_ID)) { romBuilderInfo.loadFromStorage(se); + } else if (se.getName().equals(SBSV2_DATA_ID)){ + sbsv2BuilderInfo.loadFromStorage(se); } } } else { @@ -133,17 +135,10 @@ romBuilderInfo.saveToStorage(rootStorage.createChild(ROM_BUILDER_DATA_ID)); if (getSBSv2Alias() != null){ - saveSBSv2DataToStorage(rootStorage.createChild(SBSV2_DATA_ID)); + sbsv2BuilderInfo.saveToStorage(rootStorage.createChild(SBSV2_DATA_ID)); } } } - - private void saveSBSv2DataToStorage(ICStorageElement createChild) { - createChild.setAttribute(ATRRIB_CONFIG_BASE_PLATFORM, getPlatformString()); - createChild.setAttribute(ATTRIB_CONFIG_TARGET, getTargetString()); - createChild.setAttribute(ATTRIB_SBSV2_BUILD_ALIAS, getSBSv2Alias()); - createChild.setAttribute(ATTRIB_SBSV2_CONFIG_DISPLAY_STRING, getDisplayString()); - } private void loadBuildArgsFromStorage(ICStorageElement rootStorage) { String value = rootStorage.getAttribute(BuildArgumentsInfo.BLDMAKEBLDFILESARGSSTORAGE); @@ -434,4 +429,12 @@ return false; } + public ISBSv2BuildConfigInfo getSBSv2BuildConfigInfo(){ + return sbsv2BuilderInfo; + } + + public ISBSv2BuildConfigInfo getSBSv2ConfigInfo() { + return sbsv2BuilderInfo; + } + } diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildData.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildData.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildData.java Fri Apr 16 11:18:22 2010 -0500 @@ -24,6 +24,7 @@ import com.nokia.carbide.cdt.builder.CarbideBuilderPlugin; import com.nokia.carbide.cdt.builder.project.ICarbideBuildConfiguration; +import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils; /** * Part of the new CDT 4.0 project model requirements. All this class @@ -58,7 +59,14 @@ @Override public ICOutputEntry[] getOutputDirectories() { - IPath outputPath = carbideBuildConfig.getSDK().getReleaseRoot().append(carbideBuildConfig.getPlatformString()).append(carbideBuildConfig.getTargetString()); + String thePlatform = carbideBuildConfig.getPlatformString(); + if (CarbideBuilderPlugin.getBuildManager().isCarbideSBSv2Project(carbideBuildConfig.getCarbideProject().getProject())){ + ISBSv2BuildConfigInfo sbsv2Info = ((CarbideBuildConfiguration)carbideBuildConfig).getSBSv2BuildConfigInfo(); + if ( sbsv2Info != null && SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)) != null ){ + thePlatform = thePlatform + SBSv2Utils.getVariantOutputDirModifier(sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)); + } + } + IPath outputPath = carbideBuildConfig.getSDK().getReleaseRoot().append(thePlatform).append(carbideBuildConfig.getTargetString()); return new ICOutputEntry[]{new COutputEntry(outputPath, null, 0)}; } diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectInfo.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectInfo.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectInfo.java Fri Apr 16 11:18:22 2010 -0500 @@ -61,7 +61,6 @@ protected boolean overrideMakeEngine; protected String makeEngineToUse; protected String extraSBSv2Args; - protected String buildAliasAppender; // for internal plugin use public static final String OVERRIDE_WORKSPACE_SETTINGS_KEY = "overrideWorkspaceSettings"; //$NON-NLS-1$ @@ -80,7 +79,6 @@ public static final String OVERRIDE_MAKE_ENGINE = "overrideMakeEngine"; //$NON-NLS-1$ public static final String MAKE_ENGINE_TO_USE = "makeEngineToUse"; //$NON-NLS-1$ public static final String EXTRA_SBSV2_ARGS = "extraSBSv2Args"; //$NON-NLS-1$ - public static final String BUILD_ALIAS_APPENDER = "buildAliasAppendText"; //$NON-NLS-1$ public CarbideProjectInfo(IProject project) { this.projectTracker = new TrackedResource(project); @@ -230,11 +228,6 @@ if (orig != null){ extraSBSv2Args = orig; } - orig = storage.getAttribute(BUILD_ALIAS_APPENDER); - if (orig != null){ - buildAliasAppender = orig; - } - } } } @@ -267,7 +260,6 @@ overrideMakeEngine = BuilderPreferencePage.overrideDefaultMakeEngine(); makeEngineToUse = BuilderPreferencePage.makeEngine(); extraSBSv2Args = BuilderPreferencePage.extraSBSv2ArgsTextStore(); - buildAliasAppender = ""; // project setting only } public List getBuildConfigurations() { @@ -533,11 +525,6 @@ return BuilderPreferencePage.extraSBSv2ArgsTextStore(); } - public String buildConfigAppender() { - // This is a project setting only, i.e. no workspace setting to override - return buildAliasAppender; - } - /* * The following methods are non-API */ @@ -597,7 +584,4 @@ return extraSBSv2Args; } - public String buildAliasAppendTextValue() { - return buildAliasAppender; - } } diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectModifier.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectModifier.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectModifier.java Fri Apr 16 11:18:22 2010 -0500 @@ -219,8 +219,6 @@ makeEngineToUse = settingValue; } else if (settingName.equals(EXTRA_SBSV2_ARGS)) { extraSBSv2Args = settingValue; - } else if (settingName.equals(BUILD_ALIAS_APPENDER)) { - buildAliasAppender = settingValue; } // now write it to the file @@ -310,7 +308,6 @@ storage.setAttribute(OVERRIDE_MAKE_ENGINE, overrideMakeEngine ? "true" : "false"); storage.setAttribute(MAKE_ENGINE_TO_USE, makeEngineToUse); storage.setAttribute(EXTRA_SBSV2_ARGS, extraSBSv2Args); - storage.setAttribute(BUILD_ALIAS_APPENDER, buildAliasAppender); } } } catch (CoreException e) { diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java Fri Apr 16 11:18:22 2010 -0500 @@ -47,7 +47,6 @@ private static final IPath SBS_BAT = new Path("sbs.bat"); //$NON-NLS-1$ - public boolean buildAllComponents(ICarbideBuildConfiguration buildConfig, List normalMakMakePaths, List testMakMakePaths, CarbideCommandLauncher launcher, IProgressMonitor monitor) { SubMonitor progress = SubMonitor.convert(monitor, 3); @@ -93,7 +92,15 @@ /** Get the build-able configuration from the command line (i.e. build alias). This is passed after the sbs -c parameter */ protected String getConfigName(ICarbideBuildConfiguration buildConfig) { - return buildConfig.getSBSv2Alias(); + String buildAlias = buildConfig.getSBSv2Alias(); + ISBSv2BuildConfigInfo sbsv2Info = ((CarbideBuildConfiguration)buildConfig).getSBSv2BuildConfigInfo(); + if (sbsv2Info != null){ + String variant = sbsv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT); + if (variant != null && variant.length() > 1){ + buildAlias = buildAlias + variant; + } + } + return buildAlias; } public boolean buildComponent(ICarbideBuildConfiguration buildConfig, IPath componentPath, boolean isTest, CarbideCommandLauncher launcher, IProgressMonitor monitor) { @@ -512,10 +519,6 @@ configName = configName + ".test"; //$NON-NLS-1$ } - if (cpi.buildConfigAppender() != null && cpi.buildConfigAppender().length() > 0){ - configName = configName + cpi.buildConfigAppender(); - } - args.add(configName); //TODO this causes output to go to stdout, but only at the end of the build. should we specify a logfile name and tail the file? @@ -598,10 +601,6 @@ configName = "error_retrieving_build_alias"; } - if (cpi.buildConfigAppender() != null && cpi.buildConfigAppender().length() > 0){ - configName = configName + cpi.buildConfigAppender(); - } - String[] sbsArgs = new String[] {"--source-target=" + file.toOSString(), COMPILE_ARG, configName, COMPONENT_ARG, fullMMPPath.toFile().getName()}; launcher.setErrorParserManager(buildConfig.getCarbideProject().getINFWorkingDirectory(), buildConfig.getErrorParserList()); diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ISBSv2BuildConfigInfo.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ISBSv2BuildConfigInfo.java Fri Apr 16 11:18:22 2010 -0500 @@ -0,0 +1,40 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ +package com.nokia.carbide.cdt.internal.builder; + +/** + * Interface to SBSv2 build configuration specific data + */ +public interface ISBSv2BuildConfigInfo { + + // Data attribute id's saved in .cproject file + public final static String ATRRIB_CONFIG_BASE_PLATFORM = "CONFIG_BASE_PLATFORM"; //$NON-NLS-1$ + public final static String ATTRIB_CONFIG_TARGET = "CONFIG_TARGET"; //$NON-NLS-1$ + public final static String ATTRIB_SBSV2_BUILD_ALIAS = "SBSV2_BUILD_ALIAS"; //$NON-NLS-1$ + public final static String ATTRIB_SBSV2_CONFIG_DISPLAY_STRING = "SBSV2_CONFIG_DISPLAY_STRING"; //$NON-NLS-1$ + public final static String ATTRIB_SBSV2_VARIANT = "ATTRIB_SBSV2_VARIANT"; + + /** Retrieve a specfic .cproject SBSv2 data value from a given ID */ + String getSBSv2Setting(String id); + + /** + * Set a specific SBSv2 configuration specific data value + * @param id + * @param value + */ + void setSBSv2Setting(String id, String value); +} diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/SBSv2BuilderInfo.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/SBSv2BuilderInfo.java Fri Apr 16 11:18:22 2010 -0500 @@ -0,0 +1,109 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ +package com.nokia.carbide.cdt.internal.builder; + +import java.util.HashMap; + +import org.eclipse.cdt.core.settings.model.ICStorageElement; + +import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext; + +public class SBSv2BuilderInfo implements ISBSv2BuildConfigInfo { + + HashMap sbsv2ConfigDataMap = new HashMap(); + +// private static String TRUE = "true"; +// private static String FALSE = "false"; + + ISymbianBuildContext context; + + public SBSv2BuilderInfo(ISymbianBuildContext context) { + sbsv2ConfigDataMap.put(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_BUILD_ALIAS, context.getSBSv2Alias()); + sbsv2ConfigDataMap.put(ISBSv2BuildConfigInfo.ATRRIB_CONFIG_BASE_PLATFORM, context.getBasePlatformForVariation()); + sbsv2ConfigDataMap.put(ISBSv2BuildConfigInfo.ATTRIB_CONFIG_TARGET, context.getTargetString()); + sbsv2ConfigDataMap.put(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_CONFIG_DISPLAY_STRING, context.getDisplayString()); + sbsv2ConfigDataMap.put(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT, ""); + this.context = context; + } + + public void loadFromStorage(ICStorageElement rootStorage) { + + String value = rootStorage.getAttribute(ATRRIB_CONFIG_BASE_PLATFORM); + if (value != null) { + sbsv2ConfigDataMap.put(ATRRIB_CONFIG_BASE_PLATFORM, value); + } + + value = rootStorage.getAttribute(ATTRIB_SBSV2_VARIANT); + if (value != null) { + sbsv2ConfigDataMap.put(ATTRIB_SBSV2_VARIANT, value); + } + + value = rootStorage.getAttribute(ATTRIB_CONFIG_TARGET); + if (value != null) { + sbsv2ConfigDataMap.put(ATTRIB_CONFIG_TARGET, value); + } + + value = rootStorage.getAttribute(ATTRIB_SBSV2_BUILD_ALIAS); + if (value != null) { + sbsv2ConfigDataMap.put(ATTRIB_SBSV2_BUILD_ALIAS, value); + } + + value = rootStorage.getAttribute(ATTRIB_SBSV2_CONFIG_DISPLAY_STRING); + if (value != null) { + sbsv2ConfigDataMap.put(ATTRIB_SBSV2_CONFIG_DISPLAY_STRING, value); + } + + } + + public void saveToStorage(ICStorageElement rootStorage) { + + String value = sbsv2ConfigDataMap.get(ATRRIB_CONFIG_BASE_PLATFORM); + if (value != null && value.trim().length() > 0){ + rootStorage.setAttribute(ATRRIB_CONFIG_BASE_PLATFORM, value); + } + + value = sbsv2ConfigDataMap.get(ATTRIB_SBSV2_VARIANT); + if (value != null && value.trim().length() > 0){ + rootStorage.setAttribute(ATTRIB_SBSV2_VARIANT, value); + } + + value = sbsv2ConfigDataMap.get(ATTRIB_CONFIG_TARGET); + if (value != null && value.trim().length() > 0){ + rootStorage.setAttribute(ATTRIB_CONFIG_TARGET, value); + } + + value = sbsv2ConfigDataMap.get(ATTRIB_SBSV2_BUILD_ALIAS); + if (value != null && value.trim().length() > 0){ + rootStorage.setAttribute(ATTRIB_SBSV2_BUILD_ALIAS, value); + } + + value = sbsv2ConfigDataMap.get(ATTRIB_SBSV2_CONFIG_DISPLAY_STRING); + if (value != null && value.trim().length() > 0){ + rootStorage.setAttribute(ATTRIB_SBSV2_CONFIG_DISPLAY_STRING, value); + } + + } + + public String getSBSv2Setting(String id) { + return sbsv2ConfigDataMap.get(id); + } + + public void setSBSv2Setting(String id, String value) { + sbsv2ConfigDataMap.put(id, value); + } + +} diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/BuildSettingsUI.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/BuildSettingsUI.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/BuildSettingsUI.java Fri Apr 16 11:18:22 2010 -0500 @@ -65,9 +65,7 @@ private Text makeEngineText; private Label extraArgsLabel; private Text extraArgsText; - private Label buildAliasLabel; // project setting only - private Text buildAliasText; // project setting only - + public BuildSettingsUI(Shell shell, boolean wantsSBSv2, boolean projectSetting) { this.shell = shell; this.wantsSBSv2 = wantsSBSv2; @@ -258,17 +256,6 @@ extraArgsText.setToolTipText(Messages.getString("BuildSettingsUI.ExtraArgsToolTipText")); //$NON-NLS-1$ extraArgsText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); - if (projectSetting){ - buildAliasLabel = new Label(content, SWT.NONE); - buildAliasLabel.setText(Messages.getString("BuildSettingsUI.AlliasAppendLabel")); //$NON-NLS-1$ - buildAliasLabel.setToolTipText(Messages.getString("BuildSettingsUI.AlliasAppendToolTipText")); //$NON-NLS-1$ - GridData buildAliasGridData = new GridData(); - buildAliasLabel.setLayoutData(buildAliasGridData); - - buildAliasText = new Text(content, SWT.BORDER); - buildAliasText.setToolTipText(Messages.getString("BuildSettingsUI.AlliasAppendToolTipText")); //$NON-NLS-1$ - buildAliasText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); - } overrideDefaultMakeEngineCheck = new Button(content, SWT.CHECK); overrideDefaultMakeEngineCheck.setText(Messages.getString("BuildSettingsUI.OverrideMakeEngineLabel")); //$NON-NLS-1$ overrideDefaultMakeEngineCheck.setToolTipText(Messages.getString("BuildSettingsUI.OverrideMakeEngineToolTip")); //$NON-NLS-1$ @@ -470,14 +457,6 @@ extraArgsText.setText(args); } - public String getBuildAliasAppendText() { - return buildAliasText.getText(); - } - - public void setBuildAliasAppendText(String args) { - buildAliasText.setText(args); - } - public boolean getDontPromtTrackDeps(){ if (!projectSetting){ return dontCheckForExternalDependencies.getSelection(); diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideBuildConfigurationsPage.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideBuildConfigurationsPage.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideBuildConfigurationsPage.java Fri Apr 16 11:18:22 2010 -0500 @@ -154,6 +154,9 @@ // rom builder tab ROMBuilderTabComposite romBuilderTabComposite; + // SBSv2 config data tab + SBSv2BuildConfigTabComposite sbsv2BuildConfigTabComposite; + // Configuration management/switching private IProject project; private BuildConfigCombo buildConfigurationCombo; @@ -224,6 +227,20 @@ data.verticalIndent = 18; control.setLayoutData(data); + //////////////////// SBSv2 Config Data Tab ///////////// + if (CarbideBuilderPlugin.getBuildManager().isCarbideSBSv2Project(project)) { + + TabItem sbsV2TabItem = new TabItem(tabFolder, SWT.NONE); + sbsV2TabItem.setText(Messages.getString("CarbideBuildConfigurationsPage.SBSv2_Tab")); //$NON-NLS-1$ + sbsV2TabItem.setToolTipText(Messages.getString("CarbideBuildConfigurationsPage.Environement_Tab_ToolTip")); //$NON-NLS-1$ + + sbsv2BuildConfigTabComposite = new SBSv2BuildConfigTabComposite(sbsV2TabItem); + sbsv2BuildConfigTabComposite.createControls(); + sbsV2TabItem.setControl(sbsv2BuildConfigTabComposite); + } + //////////////////////////////////////////////////////// + + ////////////////////// Environment Tab //////////////// TabItem envTabItem = new TabItem(tabFolder, SWT.NONE); envTabItem.setText(Messages.getString("CarbideBuildConfigurationsPage.Environment_Tab")); //$NON-NLS-1$ @@ -364,6 +381,9 @@ ICarbideBuildConfiguration config = cpi.getDefaultConfiguration(); if (config != null) { sisFilesBlock.initData(config); + if (CarbideBuilderPlugin.getBuildManager().isCarbideSBSv2Project(project)) { + sbsv2BuildConfigTabComposite.initData(config); + } if (argumentsTabcomposite != null) { argumentsTabcomposite.initData(config); } @@ -638,7 +658,9 @@ // Compare each of the settings to see if they are the same boolean sisSettingsEqual = sisFilesBlock.compareConfigurationSettings(selectedConfig, writeToConfig); - + + boolean sbsv2ConfigEqual = sbsv2BuildConfigTabComposite.compareConfigurationSettings(selectedConfig, writeToConfig); + // Compare envVars settings boolean envVarsSettingsEqual = envVarList.size() == envVarListOrig.size() && envVarList.equals(envVarListOrig); if (!envVarsSettingsEqual && writeToConfig) { @@ -654,7 +676,7 @@ boolean romBuilderSettingsEqual = romBuilderTabComposite.compareConfigurationSettings(selectedConfig, writeToConfig); - return sisSettingsEqual && envVarsSettingsEqual && argsSettingsEqual && pathsAndSynmbolsSettingsEqual && romBuilderSettingsEqual; + return sisSettingsEqual && sbsv2ConfigEqual && envVarsSettingsEqual && argsSettingsEqual && pathsAndSynmbolsSettingsEqual && romBuilderSettingsEqual; } private void saveConfigurationSettings(ICarbideBuildConfiguration config) { @@ -957,6 +979,9 @@ ICarbideBuildConfiguration lastConfig = cpi.getNamedConfiguration(lastSelectedConfigName); if (lastConfig != null) { sisFilesBlock.initData(lastConfig); + if (CarbideBuilderPlugin.getBuildManager().isCarbideSBSv2Project(project)) { + sbsv2BuildConfigTabComposite.initData(lastConfig); + } setUpEnvVarsTable(new String[0], null); // refresh env vars info if (argumentsTabcomposite != null) { argumentsTabcomposite.initData(lastConfig); diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideCPPProjectSettingsPage.java --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideCPPProjectSettingsPage.java Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideCPPProjectSettingsPage.java Fri Apr 16 11:18:22 2010 -0500 @@ -272,9 +272,7 @@ cpi.writeProjectSetting(CarbideProjectInfo.MAKE_ENGINE_TO_USE, buildSettingsUI.getMakeEngine()); - cpi.writeProjectSetting(CarbideProjectInfo.EXTRA_SBSV2_ARGS, buildSettingsUI.getExtraSBSv2Args()); - - cpi.writeProjectSetting(CarbideProjectInfo.BUILD_ALIAS_APPENDER, buildSettingsUI.getBuildAliasAppendText()); + cpi.writeProjectSetting(CarbideProjectInfo.EXTRA_SBSV2_ARGS, buildSettingsUI.getExtraSBSv2Args()); } List checkedComponents = getCheckedComponentFilenames(); @@ -330,7 +328,6 @@ buildSettingsUI.setOverrideDefaultMakeEngine(cpi.overrideMakeEngineProjectValue()); buildSettingsUI.setMakeEngineText(cpi.makeEngineProjectValue()); buildSettingsUI.setExtraSBSv2Args(cpi.extraSBSv2ArgsProjectValue()); - buildSettingsUI.setBuildAliasAppendText(cpi.buildAliasAppendTextValue()); } initMMPSelectionUI(cpi); diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/SBSv2BuildConfigTabComposite.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/SBSv2BuildConfigTabComposite.java Fri Apr 16 11:18:22 2010 -0500 @@ -0,0 +1,134 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ +package com.nokia.carbide.cdt.internal.builder.ui; + +import java.io.File; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.events.KeyEvent; +import org.eclipse.swt.events.KeyListener; +import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Group; +import org.eclipse.swt.widgets.Label; +import org.eclipse.swt.widgets.TabItem; +import org.eclipse.swt.widgets.Text; + +import com.nokia.carbide.cdt.builder.project.ICarbideBuildConfiguration; +import com.nokia.carbide.cdt.internal.builder.CarbideBuildConfiguration; +import com.nokia.carbide.cdt.internal.builder.ISBSv2BuildConfigInfo; +import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils; +import com.nokia.carbide.cpp.sdk.core.ISymbianSDK; + +public class SBSv2BuildConfigTabComposite extends Composite { + + private static final String configCmdLabelPrefixText = "Configuration Command: -c "; // $NON-NLS-N$ + private static final String releaseTreeLabelPrefixText = "Release Tree: "; // $NON-NLS-N$ + + Text variantEdit; + + Label configCmdLabel; + Label releaseTreeLabel; + private ICarbideBuildConfiguration config; + + public SBSv2BuildConfigTabComposite(TabItem tabItem) { + super(tabItem.getParent(), SWT.NONE); + } + + public void createControls() { + setLayout(new GridLayout(2, false)); + + Label variantLabel = new Label(this, SWT.NONE); + variantLabel.setText(Messages.getString("CarbideSBSv2ConfigTab.VariantLabel")); //$NON-NLS-1$ + variantLabel.setToolTipText(Messages.getString("CarbideSBSv2ConfigTab.VariantLabel_ToolTip")); //$NON-NLS-1$ + + variantEdit = new Text(this, SWT.BORDER); + variantEdit.setToolTipText(Messages.getString("CarbideSBSv2ConfigTab.VariantLabel_ToolTip")); //$NON-NLS-1$ + variantEdit.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); + SelectionListener listener; + variantEdit.addKeyListener( new KeyListener() { + + public void keyReleased(KeyEvent e) { + setVaraintDetailsText(); + } + + public void keyPressed(KeyEvent e) { + // ignore + } + }); + + Group emulatorBuildOptionsGroup; + emulatorBuildOptionsGroup = new Group(this, SWT.NONE); + emulatorBuildOptionsGroup.setLayout(new GridLayout(1, false)); + GridData gd = new GridData(SWT.FILL, SWT.CENTER, true, false, 3, 1); + emulatorBuildOptionsGroup.setLayoutData(gd); + emulatorBuildOptionsGroup.setText("Build Variant Details"); //$NON-NLS-1$ + + configCmdLabel = new Label(emulatorBuildOptionsGroup, SWT.CHECK); + configCmdLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); + releaseTreeLabel = new Label(emulatorBuildOptionsGroup, SWT.CHECK); + releaseTreeLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); + } + + public void initData(ICarbideBuildConfiguration buildConfig) { + this.config = buildConfig; + ISBSv2BuildConfigInfo sbsv2ConfigInfo = ((CarbideBuildConfiguration)buildConfig).getSBSv2ConfigInfo(); + if (sbsv2ConfigInfo.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT) != null){ + variantEdit.setText(sbsv2ConfigInfo.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT)); + } + + setVaraintDetailsText(); + } + + private void setVaraintDetailsText() { + + String configCmdText = configCmdLabelPrefixText; + if (config != null){ + configCmdText += config.getSBSv2Alias() + variantEdit.getText(); + } + configCmdLabel.setText(configCmdText); + + String variantText = SBSv2Utils.getVariantOutputDirModifier(variantEdit.getText()); + if (variantText == null) variantText = ""; + String relTreeText = releaseTreeLabelPrefixText; + if (config != null){ + relTreeText += " " + config.getSDK().getEPOCROOT() + "epoc32" + File.separator + "release" + File.separator + config.getPlatformString().toLowerCase() + variantText + File.separator + config.getTargetString().toLowerCase(); + } + releaseTreeLabel.setText(relTreeText); + } + + + + public boolean compareConfigurationSettings(ICarbideBuildConfiguration selectedConfig, boolean writeToConfig) { + boolean settingsEqual = true; + + ISBSv2BuildConfigInfo currSBSv2Info = ((CarbideBuildConfiguration)selectedConfig).getSBSv2ConfigInfo(); + settingsEqual = currSBSv2Info.getSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT).equals(variantEdit.getText()); + + if (!settingsEqual && writeToConfig) { + currSBSv2Info.setSBSv2Setting(ISBSv2BuildConfigInfo.ATTRIB_SBSV2_VARIANT, variantEdit.getText()); + } + + return settingsEqual; + } + + public void performDefaults(ISymbianSDK sdk) { + variantEdit.setText(""); + } +} diff -r 2304d1963470 -r a21830a6413e builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/messages.properties --- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/messages.properties Fri Apr 16 11:16:33 2010 -0500 +++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/messages.properties Fri Apr 16 11:18:22 2010 -0500 @@ -36,6 +36,12 @@ CarbideBuildConfigurationsPage.Browse_Key_ToolTip=Look for the key in the file system. CarbideBuildConfigurationsPage.Additional_Options=Additional Options: CarbideBuildConfigurationsPage.Additional_Options_ToolTip=Any other command-line options you want to pass to signsis. + +CarbideBuildConfigurationsPage.SBSv2_Tab=SBSv2 +CarbideBuildConfigurationsPage.SBSv2_Tab_ToolTip=SBSv2 Build Configuration Specific Information +CarbideSBSv2ConfigTab.VariantLabel=Apply variant to build configuration +CarbideSBSv2ConfigTab.VariantLabel_ToolTip=Appends the text box value to the -c argument to construct a variant build configuration. + CarbideBuildConfigurationsPage.Environment_Tab=Environment CarbideBuildConfigurationsPage.Environement_Tab_ToolTip=This tab controls how the Windows environment is set up for each build process invoked. CarbideBuildConfigurationsPage.Env_Vars_Group=Environment Variabes (Bold items override the default value) @@ -98,8 +104,6 @@ BuildSettingsUI.ExtraArgsLabelToolTip=Pass additional arguments to the sbs command-line. BuildSettingsUI.ExtraArgsText=Additional SBSv2 arguments BuildSettingsUI.ExtraArgsToolTipText=Add any extra arguments to be passed to sbs.bat here. -BuildSettingsUI.AlliasAppendLabel=Append to Build Configuration -BuildSettingsUI.AlliasAppendToolTipText=Appends the text to the default -c SBS parameter exactly as entered in the edit box. BuildSettingsUI.KeepGoingLabel=Keep going BuildSettingsUI.KeepGoingToolTip=Continue building, even if some build commands fail BuildSettingsUI.MakeEngineLabel=Make engine diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/AIFDefWizard.html --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/AIFDefWizard.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/AIFDefWizard.html Fri Apr 16 11:18:22 2010 -0500 @@ -64,7 +64,7 @@
  • AIF Editor
  • MMP Editor
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/Introduction.html --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/Introduction.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/Introduction.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,51 +1,51 @@ - - - - - -Introduction in Getting Started - - - -

    Getting Started

    -

    - The Symbian OS plug-ins for the Eclipse environment help provide support - for developers to create and build C++ programs that run on Symbian OS. -

    -

    - The plug-ins provide the following support to Symbian OS developers: -

    - -
      -
    • -

      - Project Support: developers can create new Symbian OS - projects based on provided templates. Projects can also be - imported from the traditional bld.inf file formats. -

      -
    • -
    • -

      - Build Support: The Symbian OS plug-ins eliminate the - need to use command line build tools to ease Symbian OS development. - Programs can be built and run from within the IDE. The developer can - also choose to build the binary automatically while saving the project. -

      -
    • -
    • -

      - SDK Support: users of the Carbide.c++ IDE can use a predefined series of supported SDKs. Developers can choose which of their - installed SDKs to work with for a particular project.

      -
    • -
    - -

    - Documentation is available in the C/C++ Development Toolkit User Guide (CDT) for the Symbian OS plug-ins that work with the C/C++ Development Toolkit (CDT). Programming for Symbian OS based platforms is described in the - documentation supplied with the development kit that you use. Please consult - that documentation for further information on Symbian OS concepts and - development processes.

    - - - - + + + + + +Introduction in Getting Started + + + +

    Getting Started

    +

    + The Symbian OS plug-ins for the Eclipse environment help provide support + for developers to create and build C++ programs that run on Symbian OS. +

    +

    + The plug-ins provide the following support to Symbian OS developers: +

    + +
      +
    • +

      + Project Support: developers can create new Symbian OS + projects based on provided templates. Projects can also be + imported from the traditional bld.inf file formats. +

      +
    • +
    • +

      + Build Support: The Symbian OS plug-ins eliminate the + need to use command line build tools to ease Symbian OS development. + Programs can be built and run from within the IDE. The developer can + also choose to build the binary automatically while saving the project. +

      +
    • +
    • +

      + SDK Support: users of the Carbide.c++ IDE can use a predefined series of supported SDKs. Developers can choose which of their + installed SDKs to work with for a particular project.

      +
    • +
    + +

    + Documentation is available in the C/C++ Development Toolkit User Guide (CDT) for the Symbian OS plug-ins that work with the C/C++ Development Toolkit (CDT). Programming for Symbian OS based platforms is described in the + documentation supplied with the development kit that you use. Please consult + that documentation for further information on Symbian OS concepts and + development processes.

    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/MBMDefWizard.html --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/MBMDefWizard.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/MBMDefWizard.html Fri Apr 16 11:18:22 2010 -0500 @@ -59,7 +59,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/Modify.html --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/Modify.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/Modify.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,49 +1,49 @@ - -Modify in Projects - - - -
    -

    Modify

    -
    - - -

    - This section explains the changes that can be done to an existing project - and the tools provided to make those changes. Once you have created a new - project or imported an existing project, you can make changes to that project. - The tools provided to support this task are specific to Symbian OS development - and are there to support the Symbian OS developers using the Eclipse IDE. -

    -

    - The tools that are available to support modification of existing project - are: -

    - - - - -
    -
    Related concepts
    - - -
    Related tasks
    - -
    Related references
    - - - - - + +Modify in Projects + + + +
    +

    Modify

    +
    + + +

    + This section explains the changes that can be done to an existing project + and the tools provided to make those changes. Once you have created a new + project or imported an existing project, you can make changes to that project. + The tools provided to support this task are specific to Symbian OS development + and are there to support the Symbian OS developers using the Eclipse IDE. +

    +

    + The tools that are available to support modification of existing project + are: +

    + + + + +
    +
    Related concepts
    + + +
    Related tasks
    + +
    Related references
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/Projects.html --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/Projects.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/Projects.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,43 +1,43 @@ - -Projects in Concepts - - - -
    -

    Projects

    -
    - - -

    - This section of the User Guide provides conceptual overview about working - with different types of projects, including importing an .inf file, modifying - existing projects and accessing help. -

    - -
    Related concepts
    - - -
    Related tasks
    - -
    Related references
    - - - - - + +Projects in Concepts + + + +
    +

    Projects

    +
    + + +

    + This section of the User Guide provides conceptual overview about working + with different types of projects, including importing an .inf file, modifying + existing projects and accessing help. +

    + +
    Related concepts
    + + +
    Related tasks
    + +
    Related references
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/arm_registers.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/arm_registers.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/arm_registers.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,39 +1,39 @@ - - - - - - -ARM Registers - - - -

    ARM Registers

    -

    Registers are the register contents of the central processing unit (CPU) of the targeted device. When debugging projects on a device, only the target device registers are visible, for example the ARM registers. The ARM microprocessor has 16 general-purpose registers. THUMB has eight general-purpose registers, R0-R7, and access to the high registers, R8-R15. Note that registers R0 through R3 hold the first four words of incoming arguments. The microprocessor constructs remaining arguments in the calling function's argument build area, which does not provide space into which R0 through R3 can be spilled.

    -

    Three registers are best left for special uses. These are:

    -
      -
    • R13 for stack operations
    • -
    • R14 is the link register (it is used for storing return addresses in the construction of sub routines)
    • -
    • R15 is the program counter (PC)
    • -
    -

    In most cases, the contents of all the registers can be modified. However, when debugging applications on a target device with Application TRK, you cannot change the LR, SP, and CPSR registers.

    -

    NOTE When opening the Registers view, the list of available registers will vary depending upon the target devices being debugged.

    -

    -

    Figure 1 - ARM Registers

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +ARM Registers + + + +

    ARM Registers

    +

    Registers are the register contents of the central processing unit (CPU) of the targeted device. When debugging projects on a device, only the target device registers are visible, for example the ARM registers. The ARM microprocessor has 16 general-purpose registers. THUMB has eight general-purpose registers, R0-R7, and access to the high registers, R8-R15. Note that registers R0 through R3 hold the first four words of incoming arguments. The microprocessor constructs remaining arguments in the calling function's argument build area, which does not provide space into which R0 through R3 can be spilled.

    +

    Three registers are best left for special uses. These are:

    +
      +
    • R13 for stack operations
    • +
    • R14 is the link register (it is used for storing return addresses in the construction of sub routines)
    • +
    • R15 is the program counter (PC)
    • +
    +

    In most cases, the contents of all the registers can be modified. However, when debugging applications on a target device with Application TRK, you cannot change the LR, SP, and CPSR registers.

    +

    NOTE When opening the Registers view, the list of available registers will vary depending upon the target devices being debugged.

    +

    +

    Figure 1 - ARM Registers

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/autotargeting.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/autotargeting.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/autotargeting.htm Fri Apr 16 11:18:22 2010 -0500 @@ -18,7 +18,7 @@ - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,66 +1,66 @@ - - - - - - -Breakpoints - - - -

    Breakpoints

    -

    A breakpoint is a marker set on a specific line of source code and is designed to halt program execution when encountered by the debugger. After you set a breakpoint at a key point in the program, you can halt its execution, examine its current state, and check register and variable values. You can also change values and alter the flow of normal program execution. Setting breakpoints helps you debug your program and verify its efficiency.

    -

    A project can have multiple breakpoints set in the source code files. All breakpoints in a project are shown in the Breakpoints view. Breakpoints are enabled or disabled on the currently selected line within a source code editor by selecting the Run > Toggle Breakpoint menu option, right-clicking the marker bar in the editor and selecting Toggle Breakpoint, or by pressing CTRL-SHIFT-B.

    -

    You can set a breakpoint on any executable line of code that the debugger can resolve. Lines containing comments and other non executable code cannot be assigned a breakpoint as they are normally stripped from the compiled binary. The debugger must load the symbols for a module before it can attempt to resolve breakpoints within the module. This is most easily done using the Executables view to import a binary file, especially if the binary is not in the workspace.

    -

    When the debugger attempts to resolve a breakpoint it will result in:

    -
      -
    • resolved — the symbols for the module are loaded and the breakpoint located in the executable that’s currently being debugged, circle icon changes to flagged icon
    • -
    • resolved and moved —the breakpoint is not found in the executable at the specified point. Debugger moves breakpoint forward in the current function until a line is found that can be resolved. Breakpoint icon moved to source line matching new breakpoint location and changed to flagged icon.
    • -
    • unresolved — if the symbols for the module are not loaded or the breakpoint was not able to be set within the current function. This may indicate no executable code in the source line or a deadstripped function not present in the executable. Breakpoint icon remains in unflagged state indicating unresolved status.
    • -
    -

    Breakpoints have enabled and disabled types as well as resolved and unresolved states. Table 1 explains the different breakpoint types and states.

    -
    Table 1 Breakpoint—type and states
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TypeStateIconExplanation
    Enabled
    Unresolved
    Indicates that the breakpoint is currently enabled but not located in the executable during a debug session. Debugger cannot halt program execution.
    Enabled
    Resolved
    Indicates that the breakpoint is currently enabled and resolved for the source line. The debugger halts program execution at an enabled breakpoint.
    Disabled
    Unresolved
    Indicates that the breakpoint is currently disabled but not located in the executable during a debug session. The debugger does not halt program execution at a disabled breakpoint.
    Disabled
    Resolved
    Indicates that the breakpoint is currently disabled and resolved for the source line. The debugger does not halt program execution at a disabled breakpoint.
    -

    Other references

    - - - - - + + + + + + +Breakpoints + + + +

    Breakpoints

    +

    A breakpoint is a marker set on a specific line of source code and is designed to halt program execution when encountered by the debugger. After you set a breakpoint at a key point in the program, you can halt its execution, examine its current state, and check register and variable values. You can also change values and alter the flow of normal program execution. Setting breakpoints helps you debug your program and verify its efficiency.

    +

    A project can have multiple breakpoints set in the source code files. All breakpoints in a project are shown in the Breakpoints view. Breakpoints are enabled or disabled on the currently selected line within a source code editor by selecting the Run > Toggle Breakpoint menu option, right-clicking the marker bar in the editor and selecting Toggle Breakpoint, or by pressing CTRL-SHIFT-B.

    +

    You can set a breakpoint on any executable line of code that the debugger can resolve. Lines containing comments and other non executable code cannot be assigned a breakpoint as they are normally stripped from the compiled binary. The debugger must load the symbols for a module before it can attempt to resolve breakpoints within the module. This is most easily done using the Executables view to import a binary file, especially if the binary is not in the workspace.

    +

    When the debugger attempts to resolve a breakpoint it will result in:

    +
      +
    • resolved — the symbols for the module are loaded and the breakpoint located in the executable that’s currently being debugged, circle icon changes to flagged icon
    • +
    • resolved and moved —the breakpoint is not found in the executable at the specified point. Debugger moves breakpoint forward in the current function until a line is found that can be resolved. Breakpoint icon moved to source line matching new breakpoint location and changed to flagged icon.
    • +
    • unresolved — if the symbols for the module are not loaded or the breakpoint was not able to be set within the current function. This may indicate no executable code in the source line or a deadstripped function not present in the executable. Breakpoint icon remains in unflagged state indicating unresolved status.
    • +
    +

    Breakpoints have enabled and disabled types as well as resolved and unresolved states. Table 1 explains the different breakpoint types and states.

    +
    Table 1 Breakpoint—type and states
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TypeStateIconExplanation
    Enabled
    Unresolved
    Indicates that the breakpoint is currently enabled but not located in the executable during a debug session. Debugger cannot halt program execution.
    Enabled
    Resolved
    Indicates that the breakpoint is currently enabled and resolved for the source line. The debugger halts program execution at an enabled breakpoint.
    Disabled
    Unresolved
    Indicates that the breakpoint is currently disabled but not located in the executable during a debug session. The debugger does not halt program execution at a disabled breakpoint.
    Disabled
    Resolved
    Indicates that the breakpoint is currently disabled and resolved for the source line. The debugger does not halt program execution at a disabled breakpoint.
    +

    Other references

    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/build_system.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/build_system.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/build_system.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,36 +1,36 @@ - - - - - - -Build System Overview - - - -

    Build System Overview

    -

    The Carbide.c++ build system provides a wrapper around the standard Symbian OS build process utilizing component description files (bld.inf) and project definition files (.mmp files). Because the Carbide.++ build system provides a visual view into this system, it will be useful for new developers to the Symbian OS to become familiar with the basic Symbian OS build process. Further information on the Symbian OS build system can be found in the Symbian Developer Library under the Build Tools Guide and Build Tools Reference sections. If you are already familiar with the Symbian OS build system then you should feel right at home with the Carbide.c++ builder user interface.

    -

    In Carbide.c++, as in the Symbian OS, a project is described by a bld.inf file. Hence, all projects must start with a bld.inf file. Carbide.c++ supports either building all components of a project (including extension makefiles) or only building selected sub-components. This gives the developer the granularity to either build all of a project’s dependencies or, if you are working on very large projects, only building a small sub-component of a larger project.

    -

    Basic Build Commands

    -

    There are several methods of invoking the Symbian OS build tools on a project or source file.

    -
      -
    • Build Project - The is the default build process which invokes the call: calls 'abld build <platform> <target>'. The basic build process insures that the project definition makefiles are up to date and calls 'bldmake bldfiles' for the current platform where necessary.
    • -
    • Compile - This command simply compiles a single file for a project by calling its makefile target directly.
    • -
    • Build All Configurations - This command invokes the same command as Build Project, but on all configurations in the selected project.
    • -
    • Build Symbian Component - This is a context menu option available on .mmp and .mk files only. You can use this to build a component outside the normal build process. This command invokes: 'abld build <platform> <target>' on the selected component.
    • -
    -

    NOTE The debugger has a setting under the Run/Debug > Launching preference page which performs a full build before the start of each debug session. If you prefer to do your own target build only you will want to turn the “Build (if required) before launching” setting off.

    -

    Command Line Arguments

    -

    The Carbide build system supports the use of command-line arguments for all stages of the build system. You can add these arguments in the Arguments pane of the -Carbide Build Configurations panel in the Properties for <project> window.

    -

    For example, to generate a SYM file for UREL build you need to add the -debug argument to the abld makefile stage of the build process.

    -

    Always refer to the Symbian Developer Library to learn which arguments are supported by the SDK used by the project.

    -
    Other references
    - - - - + + + + + + +Build System Overview + + + +

    Build System Overview

    +

    The Carbide.c++ build system provides a wrapper around the standard Symbian OS build process utilizing component description files (bld.inf) and project definition files (.mmp files). Because the Carbide.++ build system provides a visual view into this system, it will be useful for new developers to the Symbian OS to become familiar with the basic Symbian OS build process. Further information on the Symbian OS build system can be found in the Symbian Developer Library under the Build Tools Guide and Build Tools Reference sections. If you are already familiar with the Symbian OS build system then you should feel right at home with the Carbide.c++ builder user interface.

    +

    In Carbide.c++, as in the Symbian OS, a project is described by a bld.inf file. Hence, all projects must start with a bld.inf file. Carbide.c++ supports either building all components of a project (including extension makefiles) or only building selected sub-components. This gives the developer the granularity to either build all of a project’s dependencies or, if you are working on very large projects, only building a small sub-component of a larger project.

    +

    Basic Build Commands

    +

    There are several methods of invoking the Symbian OS build tools on a project or source file.

    +
      +
    • Build Project - The is the default build process which invokes the call: calls 'abld build <platform> <target>'. The basic build process insures that the project definition makefiles are up to date and calls 'bldmake bldfiles' for the current platform where necessary.
    • +
    • Compile - This command simply compiles a single file for a project by calling its makefile target directly.
    • +
    • Build All Configurations - This command invokes the same command as Build Project, but on all configurations in the selected project.
    • +
    • Build Symbian Component - This is a context menu option available on .mmp and .mk files only. You can use this to build a component outside the normal build process. This command invokes: 'abld build <platform> <target>' on the selected component.
    • +
    +

    NOTE The debugger has a setting under the Run/Debug > Launching preference page which performs a full build before the start of each debug session. If you prefer to do your own target build only you will want to turn the “Build (if required) before launching” setting off.

    +

    Command Line Arguments

    +

    The Carbide build system supports the use of command-line arguments for all stages of the build system. You can add these arguments in the Arguments pane of the +Carbide Build Configurations panel in the Properties for <project> window.

    +

    For example, to generate a SYM file for UREL build you need to add the -debug argument to the abld makefile stage of the build process.

    +

    Always refer to the Symbian Developer Library to learn which arguments are supported by the SDK used by the project.

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/common_debug_actions.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/common_debug_actions.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/common_debug_actions.htm Fri Apr 16 11:18:22 2010 -0500 @@ -9,7 +9,7 @@

    Common Debugging Actions

    -

    This section explains how to perform common debugging actions within the Debug perspective to correct source-code errors, control program execution, and observe memory behavior:

    +

    This section explains how to perform common debugging actions within the Debug perspective to correct source-code errors, control program execution, and observe memory behavior:

    • Start the debugger
    • Step into, out of, or over routines
    • diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/data_viewer_plugins.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/data_viewer_plugins.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/data_viewer_plugins.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,18 +1,18 @@ - - - - - - -Data Viewer Plug-ins - - - -

      Data Viewer Plug-ins

      -

      Data Viewers are plug-ins that include an user interface to show a custom view of data. These plug-ins are often platform specific. Data editors are data viewers that also let you modify and write data.

      -

      The IDE will keep a registry of plug-ins that can view particular types. The plug-ins will register themselves with the IDE and indicate which formats and platforms they support. When a variable or memory address is selected, you can choose the plugin from the Data menu.

      -

      A Data Viewer plugin may also be designed without a custom user interface. This type of viewer would override the built in debugger methods of showing a variable value as text and parsing an edited value back into variable data.

      - - - - + + + + + + +Data Viewer Plug-ins + + + +

      Data Viewer Plug-ins

      +

      Data Viewers are plug-ins that include an user interface to show a custom view of data. These plug-ins are often platform specific. Data editors are data viewers that also let you modify and write data.

      +

      The IDE will keep a registry of plug-ins that can view particular types. The plug-ins will register themselves with the IDE and indicate which formats and platforms they support. When a variable or memory address is selected, you can choose the plugin from the Data menu.

      +

      A Data Viewer plugin may also be designed without a custom user interface. This type of viewer would override the built in debugger methods of showing a variable value as text and parsing an edited value back into variable data.

      + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/debugger_about.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/debugger_about.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/debugger_about.htm Fri Apr 16 11:18:22 2010 -0500 @@ -43,7 +43,7 @@
    • Debugger Pane
    • Debugger Preferences
    - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/dependency_tracking.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/dependency_tracking.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/dependency_tracking.htm Fri Apr 16 11:18:22 2010 -0500 @@ -26,7 +26,7 @@
  • Carbide Project Settings
  • Carbide Global Build Settings
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/fpu_registers.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/fpu_registers.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/fpu_registers.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,30 +1,30 @@ - - - - - - -FPU Registers - - - -

    FPU Registers

    -

    The FPU Registers are the register contents of the floating-point unit (FPU) of the host computer. The exact listing of these registers depends on the host FPU and current build target.

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +FPU Registers + + + +

    FPU Registers

    +

    The FPU Registers are the register contents of the floating-point unit (FPU) of the host computer. The exact listing of these registers depends on the host FPU and current build target.

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/general_registers.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/general_registers.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/general_registers.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,30 +1,30 @@ - - - - - - -General Registers - - - -

    General Registers

    -

    The General Registers are the register contents of the central processing unit (CPU) of the host computer. The exact listing of these registers depends on the host CPU and current build target.

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +General Registers + + + +

    General Registers

    +

    The General Registers are the register contents of the central processing unit (CPU) of the host computer. The exact listing of these registers depends on the host CPU and current build target.

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/host_registers.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/host_registers.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/host_registers.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,30 +1,30 @@ - - - - - - -Host Registers - - - -

    Host-specific Registers

    -

    The Registers view also lists additional register contents for registers specific to the host. The exact listing of these registers depends on the host computer and current build target.

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Host Registers + + + +

    Host-specific Registers

    +

    The Registers view also lists additional register contents for registers specific to the host. The exact listing of these registers depends on the host computer and current build target.

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/macros_carbide.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/macros_carbide.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/macros_carbide.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - - - - - - -Carbide Macros - - - -

    Carbide Macros

    -

    Carbide.c++ supports the macro _CARBIDE_CPP_ during the preprocessing of .mmp and .inf files. Use this macro in those files to include Carbide specific files during the preprocessing stage that are never recognized outside of the Carbide.c++ IDE.

    -

    For example within your .mmp or .inf file:

    -

    #ifdef _CARBIDE_CPP_
    - // Add any makmake statements that you want specific to Carbide.c++ only
    -#endif

    -
    Tasks
    - - - - - + + + + + + +Carbide Macros + + + +

    Carbide Macros

    +

    Carbide.c++ supports the macro _CARBIDE_CPP_ during the preprocessing of .mmp and .inf files. Use this macro in those files to include Carbide specific files during the preprocessing stage that are never recognized outside of the Carbide.c++ IDE.

    +

    For example within your .mmp or .inf file:

    +

    #ifdef _CARBIDE_CPP_
    + // Add any makmake statements that you want specific to Carbide.c++ only
    +#endif

    +
    Tasks
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/ngage_projects.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/ngage_projects.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/ngage_projects.htm Fri Apr 16 11:18:22 2010 -0500 @@ -95,7 +95,7 @@

    From this point you can use all of the debugger features to debug the project.

    Always refer to the N-Gage documentation for more information on creating, deploying, and debugging N-Gage projects.

    - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/precompiled_headers.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/precompiled_headers.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/precompiled_headers.htm Fri Apr 16 11:18:22 2010 -0500 @@ -30,7 +30,7 @@

    The resultant output file, pch_test.mch can be included in other source or prefix files as:

    #include pch_test.mch

    - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/symbolic_files_about.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/symbolic_files_about.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/symbolic_files_about.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - - - - - - -About Symbolics Files - - - -

    About Symbolics Files

    -

    A symbolics file contains debugging information that the IDE generates for a computer program. The debugger uses this information to control program execution. For example, the debugger uses the symbolics file to find the source code that corresponds to the executing object code of the computer program.

    -

    Symbolics files contain this information:

    -
      -
    • Routine names
    • -
    • Variables names
    • -
    • Variable locations in source code
    • -
    • Variable locations in object code
    • -
    -

    The IDE supports several types of symbolics files. Some programs generate separate symbolic files, while others do not. For example, when you use the Freescale CodeView on Windows program, the IDE places the symbolics file inside the generated binary file.

    - - - - + + + + + + +About Symbolics Files + + + +

    About Symbolics Files

    +

    A symbolics file contains debugging information that the IDE generates for a computer program. The debugger uses this information to control program execution. For example, the debugger uses the symbolics file to find the source code that corresponds to the executing object code of the computer program.

    +

    Symbolics files contain this information:

    +
      +
    • Routine names
    • +
    • Variables names
    • +
    • Variable locations in source code
    • +
    • Variable locations in object code
    • +
    +

    The IDE supports several types of symbolics files. Some programs generate separate symbolic files, while others do not. For example, when you use the Freescale CodeView on Windows program, the IDE places the symbolics file inside the generated binary file.

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/symbols_pkg.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/symbols_pkg.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/symbols_pkg.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,21 +1,21 @@ - - - - - - -Symbols, .pkg - - - -

    Symbols, .pkg

    -

    Carbide.c++ supports the following specific symbols in .pkg files:

    -
      -
    • $(EPOCROOT) — the location of the epoc32 folder but not including the epoc32 folder
    • -
    • $(PLATFORM) — platform designator, for example: ARMI, WINSC, GCCE, THUMB, etc.
    • -
    • $(TARGET) — target designator UDEB or UREL
    • -
    - - - - + + + + + + +Symbols, .pkg + + + +

    Symbols, .pkg

    +

    Carbide.c++ supports the following specific symbols in .pkg files:

    +
      +
    • $(EPOCROOT) — the location of the epoc32 folder but not including the epoc32 folder
    • +
    • $(PLATFORM) — platform designator, for example: ARMI, WINSC, GCCE, THUMB, etc.
    • +
    • $(TARGET) — target designator UDEB or UREL
    • +
    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/templates.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/templates.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/templates.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,51 +1,51 @@ - - - - - - -Project Templates - - - -

    Project Templates

    -

    Carbide.c++ provides many common templates to quickly create projects using specific SDKs or feature sets. Every template provides basic support for a specific type of project including sources, libraries, resources, etc. The type and number of templates available are controlled by the SDKs you have enabled.

    -

    Table 1. Available project templates

    - - - - - - - - - - - - - - - - - -
    Project Type Available Templates
    Generic Symbian OS
      -
    • Basic console application (EXE) - used for any SDK
    • -
    • Basic dynamically linked library (DLL) - used for any SDK
    • -
    • Basic static library (LIB) - used for any SDK
    • -
    • Empty Project for Symbian - empty project with minimal bld.inf and MMP and no sources or libraries. For advanced users only.
    • -
    S60
      -
    • GUI Application
    • -
    • GUI Application with UI Designer
    • -
    • Open C Console application - project template based on industry-standard POSIX and middleware C libraries for S60
    • -
    Tutorials
      -
    • S60 Birthday Tutorial with UI Designer
    • -
    • S60 Yahoo! Image Search Tutorial with UI Designer
    • -
    -
    Related tasks
    - - - - - + + + + + + +Project Templates + + + +

    Project Templates

    +

    Carbide.c++ provides many common templates to quickly create projects using specific SDKs or feature sets. Every template provides basic support for a specific type of project including sources, libraries, resources, etc. The type and number of templates available are controlled by the SDKs you have enabled.

    +

    Table 1. Available project templates

    + + + + + + + + + + + + + + + + + +
    Project Type Available Templates
    Generic Symbian OS
      +
    • Basic console application (EXE) - used for any SDK
    • +
    • Basic dynamically linked library (DLL) - used for any SDK
    • +
    • Basic static library (LIB) - used for any SDK
    • +
    • Empty Project for Symbian - empty project with minimal bld.inf and MMP and no sources or libraries. For advanced users only.
    • +
    S60
      +
    • GUI Application
    • +
    • GUI Application with UI Designer
    • +
    • Open C Console application - project template based on industry-standard POSIX and middleware C libraries for S60
    • +
    Tutorials
      +
    • S60 Birthday Tutorial with UI Designer
    • +
    • S60 Yahoo! Image Search Tutorial with UI Designer
    • +
    +
    Related tasks
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/thread_cond_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/thread_cond_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/thread_cond_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,17 +1,17 @@ - - - - - - -Setting a thread-specific conditional breakpoint - - - -

    Setting a Thread-specific Conditional Breakpoint

    -

    Carbide's debugger supports thread-specific breakpoints. Depending on what the protocol supports, there are several different ways it's supported. You can setup a special condition on a breakpoint. Enter mwThreadID == threadID, where mwThreadID is a keyword recognized by the core debugger and threadID is the number that represents the ID of the thread that you want to stop.
    -

    - - - - + + + + + + +Setting a thread-specific conditional breakpoint + + + +

    Setting a Thread-specific Conditional Breakpoint

    +

    Carbide's debugger supports thread-specific breakpoints. Depending on what the protocol supports, there are several different ways it's supported. You can setup a special condition on a breakpoint. Enter mwThreadID == threadID, where mwThreadID is a keyword recognized by the core debugger and threadID is the number that represents the ID of the thread that you want to stop.
    +

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/tour.html --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/tour.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/tour.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,88 +1,88 @@ - -Tour of the UI - - - -
    -

    Tour of the UI

    -
    - -

    - Eclipse and the C/C++ Development Toolkit (CDT) provides a rich - collection of views, editors, wizards and preference windows for performing C++ - development. The Symbian OS plug-ins for Eclipse extend this user interface so - that you can perform the tasks involved in Symbian OS development from the - Eclipse workbench, instead of needing to use the Symbian OS command-line - toolchain. -

    -

    - When you work with a Symbian OS C++ project, the workbench uses the Carbide C/C++ perspective, which will look - something like this:

    -
    - -

    - - -
    -

    - For more information on the standard CDT views, refer to the C/C++ - Development Toolkit documentation. -

    -

    - The Symbian OS plug-ins also add new wizards and editors. You can use - these to: -

    - -
      -
    • -

      - Create new Symbian OS projects using the New command, which is available on the File menu, and on the - pop-up menus of the C/C++ Projects and Navigator views.

      -

      - For more information, see Creating New Projects. -

      -
    • -
    • -

      - Import existing projects from Symbian OS bld.inf files using the Import command, which is - available on the File menu, and on the pop-up menus of the C/C++ Projects and Navigator views.

      -

      - For more information, see Importing Projects from a Bld.Inf File. -

      -
    • -
    • -

      - Add scalable graphics (MIF), Symbian OS bitmaps (MBM) and application information (AIF) - resources to projects, and edit these resources. You can add these using the New command, which is available on the File menu, and on the pop-up menus of the C/C++ Projects and Navigator views. MBM, MIF and AIF editors are provided to modify - the resources.

      -

      - For more information, see Creating an MBM File and Creating an AIF File. -

      -
    • -
    • -

      - Build programs for multiple SDKs and targets. The standard CDT build - commands such as Build Project and Build All Configurations, - which are available in the Project menu, are used.

      -

      - For more information, see Building Projects.

      -
    • -
    - - - - -
      -
    • -

      - Configure the SDKs that are available for use with Carbide.c++ in the SDK Preferences settings. Select Window - > Preferences, expand the Carbide.c++ group and select SDK Preferences.

      -

      - For more information, see SDK Properties.

      -
    • -
    -
    - - - + +Tour of the UI + + + +
    +

    Tour of the UI

    +
    + +

    + Eclipse and the C/C++ Development Toolkit (CDT) provides a rich + collection of views, editors, wizards and preference windows for performing C++ + development. The Symbian OS plug-ins for Eclipse extend this user interface so + that you can perform the tasks involved in Symbian OS development from the + Eclipse workbench, instead of needing to use the Symbian OS command-line + toolchain. +

    +

    + When you work with a Symbian OS C++ project, the workbench uses the Carbide C/C++ perspective, which will look + something like this:

    +
    + +

    + + +
    +

    + For more information on the standard CDT views, refer to the C/C++ + Development Toolkit documentation. +

    +

    + The Symbian OS plug-ins also add new wizards and editors. You can use + these to: +

    + +
      +
    • +

      + Create new Symbian OS projects using the New command, which is available on the File menu, and on the + pop-up menus of the C/C++ Projects and Navigator views.

      +

      + For more information, see Creating New Projects. +

      +
    • +
    • +

      + Import existing projects from Symbian OS bld.inf files using the Import command, which is + available on the File menu, and on the pop-up menus of the C/C++ Projects and Navigator views.

      +

      + For more information, see Importing Projects from a Bld.Inf File. +

      +
    • +
    • +

      + Add scalable graphics (MIF), Symbian OS bitmaps (MBM) and application information (AIF) + resources to projects, and edit these resources. You can add these using the New command, which is available on the File menu, and on the pop-up menus of the C/C++ Projects and Navigator views. MBM, MIF and AIF editors are provided to modify + the resources.

      +

      + For more information, see Creating an MBM File and Creating an AIF File. +

      +
    • +
    • +

      + Build programs for multiple SDKs and targets. The standard CDT build + commands such as Build Project and Build All Configurations, + which are available in the Project menu, are used.

      +

      + For more information, see Building Projects.

      +
    • +
    + + + + +
      +
    • +

      + Configure the SDKs that are available for use with Carbide.c++ in the SDK Preferences settings. Select Window + > Preferences, expand the Carbide.c++ group and select SDK Preferences.

      +

      + For more information, see SDK Properties.

      +
    • +
    +
    + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/trk.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/trk.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/trk.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,43 +1,43 @@ - - - - - - -On-device Debugging - - - -

    On-device Debugging

    -

    The on-device debug agent (Application TRK or System TRK) is a program that enables on-device debugging of phone prototypes, reference boards, and retail phones. An on-device debug agent is a program that is installed on a phone or reference board. It communicates with the debugger using a serial-over-Bluetooth or serial-over-USB connection. Through this serial communication, the on-device debug agent acts as the interface between the Carbide.c++ debugger and the target device. An on-device debug agent provides:

    -
      -
    • Debug agent running on Symbian OS
    • -
    • Provides a stable & integrated interface to Symbian OS
    • -
    • Used to debug applications on actual devices
    • -
    • Can be built-in to the OS image or installed as a .sis file
    • -
    -

    Using the on-device debug agent, one can use the Carbide.c++ IDE to debug programs running on phone hardware, making the debugging process much easier. The on-device debug agent works on all S60 3rd Edition devices, UIQ 3rd Edition devices, and Symbian TechView devkits.

    -

    The Application TRK debug agents are stored online and can be downloaded and installed using the On-Device Connections > New Connection Wizard > Install remote agents pane.

    -

    Some of the key benefits to using an on-device debug agent include:

    -
      -
    • Easy debugging via serial interface (Bluetooth, USB, IrDA, etc)
    • -
    • More accurate than emulator debugging
    • -
    • Can often avoid using expensive hardware debuggers
    • -
    -

    There are two variations of the on-device debug agent, they are:

    -
      -
    • Application TRK—supports application debugging only and available to developers creating applications for devices. Developers do not have access to system level routines, system ROM, other user application code, cannot modify the LR and SR registers, and must use a SIS file to debug an application.
    • -
    • System TRK— - supports both application and limited ROM debugging (includes application executables and limited ROM based components (i.e. no device drivers) and available to original equipment manufacturers (OEM) for device creation and customization
    • -
    -

    NOTE The type of on-device debug agent you have is based upon which Carbide.c++ product you have licensed. System TRK is only available with the Professional or OEM version of the product.

    -
    Related tasks
    - -
    - - -
    - - + + + + + + +On-device Debugging + + + +

    On-device Debugging

    +

    The on-device debug agent (Application TRK or System TRK) is a program that enables on-device debugging of phone prototypes, reference boards, and retail phones. An on-device debug agent is a program that is installed on a phone or reference board. It communicates with the debugger using a serial-over-Bluetooth or serial-over-USB connection. Through this serial communication, the on-device debug agent acts as the interface between the Carbide.c++ debugger and the target device. An on-device debug agent provides:

    +
      +
    • Debug agent running on Symbian OS
    • +
    • Provides a stable & integrated interface to Symbian OS
    • +
    • Used to debug applications on actual devices
    • +
    • Can be built-in to the OS image or installed as a .sis file
    • +
    +

    Using the on-device debug agent, one can use the Carbide.c++ IDE to debug programs running on phone hardware, making the debugging process much easier. The on-device debug agent works on all S60 3rd Edition devices, UIQ 3rd Edition devices, and Symbian TechView devkits.

    +

    The Application TRK debug agents are stored online and can be downloaded and installed using the On-Device Connections > New Connection Wizard > Install remote agents pane.

    +

    Some of the key benefits to using an on-device debug agent include:

    +
      +
    • Easy debugging via serial interface (Bluetooth, USB, IrDA, etc)
    • +
    • More accurate than emulator debugging
    • +
    • Can often avoid using expensive hardware debuggers
    • +
    +

    There are two variations of the on-device debug agent, they are:

    +
      +
    • Application TRK—supports application debugging only and available to developers creating applications for devices. Developers do not have access to system level routines, system ROM, other user application code, cannot modify the LR and SR registers, and must use a SIS file to debug an application.
    • +
    • System TRK— + supports both application and limited ROM debugging (includes application executables and limited ROM based components (i.e. no device drivers) and available to original equipment manufacturers (OEM) for device creation and customization
    • +
    +

    NOTE The type of on-device debug agent you have is based upon which Carbide.c++ product you have licensed. System TRK is only available with the Professional or OEM version of the product.

    +
    Related tasks
    + +
    + + +
    + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/work_mcore_debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/work_mcore_debug.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/work_mcore_debug.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,21 +1,21 @@ - - - - - - -Multi-core Debugging - - - -

    Multi-core Debugging

    -

    The IDE allows simultaneous debugging of multiple projects. This feature provides multi-core debugging capability for some embedded processors. By configuring each project to operate on a single core, the IDE can debug multiple cores by debugging multiple projects.

    -

    Configuring multi-core debugging involves these tasks

    -
      -
    • configuring specific target settings for each project
    • -
    • for some cores, specifying a configuration file for initializing multi-core debugging
    • -
    - - - - + + + + + + +Multi-core Debugging + + + +

    Multi-core Debugging

    +

    The IDE allows simultaneous debugging of multiple projects. This feature provides multi-core debugging capability for some embedded processors. By configuring each project to operate on a single core, the IDE can debug multiple cores by debugging multiple projects.

    +

    Configuring multi-core debugging involves these tasks

    +
      +
    • configuring specific target settings for each project
    • +
    • for some cores, specifying a configuration file for initializing multi-core debugging
    • +
    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_data.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_data.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_data.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,19 +1,19 @@ - - - - - - -Working with Debugger Data - - - -

    Working with Debugger Data

    -

    This section explains how to work with data that the Carbide.c++ debugger generates. The following windows show various types of debugger data.

    -
    • System Browser Window view —shows individual processes and tasks that the debugger can control
    • -
    • Console view —shows messages generated during the debugging session
    • -
    - - - - + + + + + + +Working with Debugger Data + + + +

    Working with Debugger Data

    +

    This section explains how to work with data that the Carbide.c++ debugger generates. The following windows show various types of debugger data.

    +
    • System Browser Window view —shows individual processes and tasks that the debugger can control
    • +
    • Console view —shows messages generated during the debugging session
    • +
    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_debugger.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_debugger.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_debugger.htm Fri Apr 16 11:18:22 2010 -0500 @@ -21,7 +21,7 @@
  • Restarting the debugger
  • -
  • Variable information in the Variables view—see the variables in the executing code, their values, and their types
  • +
  • Variable information in the Variables view—see the variables in the executing code, their values, and their types
  • Breakpoint information in the Breakpoints view—see the breakpoints, conditional breakpoints, and breakpoint actions
  • Source code—see the source code under debugger control
  • @@ -39,7 +39,7 @@
  • Variables View
  • Breakpoints View
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_memory.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_memory.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_memory.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,31 +1,31 @@ - - - - - - -Working with Memory - - - -

    Working with Memory

    -

    This section explains how to work with memory in a debugging session. Topics include:

    -
      -
    • Memory view —shows the memory that your project manipulates as it executes
    • -
    • Registers view—shows the register contents of a processor
    • -
    -
    Related tasks
    - -
    Related References
    - - - - - + + + + + + +Working with Memory + + + +

    Working with Memory

    +

    This section explains how to work with memory in a debugging session. Topics include:

    +
      +
    • Memory view —shows the memory that your project manipulates as it executes
    • +
    • Registers view—shows the register contents of a processor
    • +
    +
    Related tasks
    + +
    Related References
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_programs.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_programs.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_programs.htm Fri Apr 16 11:18:22 2010 -0500 @@ -14,7 +14,7 @@
  • Breakpoints—halt program execution on a line of source code that you specify. You can set a breakpoint that always halts program execution, or you can set a breakpoint that halts program execution if a condition that you specify is true.
  • Breakpoint actions—perform a task during program execution on a line of source code that you specify. Breakpoint actions can play sounds, run scripts, log data, and perform other operations.
  • -
  • Watchpoints—halt program execution after a location in memory changes +
  • Watchpoints—halt program execution after a location in memory changes value
  • After you set these items in your source code, you start a debugging session to use them. As program execution arrives at each of these items, the debugger can halt execution, perform a task, or update data.

    @@ -29,7 +29,7 @@
  • Breakpoints View
  • Breakpoint Actions Preferences
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_variables.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_variables.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/working_with_variables.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,34 +1,32 @@ - - - - - - -Working with Variables - - - - -

    Working with Variables

    -

    This section explains how to work with variables in a Carbide™ IDE debugging session. The following windows show various types of information about variables.

    -
      -
    • Variables view — shows information about global and static variables in your project
    • -
    • Expressions window— shows variable values and lets you form calculation expressions based on those values
    • -
    -
    Related references
    - - - - - + + + + + + +Working with Variables + + + + +

    Working with Variables

    +

    This section explains how to work with variables in a Carbide™ IDE debugging session. The following windows show various types of information about variables.

    +
      +
    • Variables view — shows information about global and static variables in your project
    • +
    • Expressions window— shows variable values and lets you form calculation expressions based on those values
    • +
    +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/concepts/workspaces.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/concepts/workspaces.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/concepts/workspaces.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,34 +1,34 @@ - - - - - - -Workspace Information - - - - -

    Workspace Information

    -

    A workspace is the default place to store and create resources like projects, folders, and files. These are then presented to the user in a perspective which enables the presentation and manipulation of the stored resources.

    -

    When Carbide is launched it asks for a workspace to open. As you can have multiple workspaces, all independent from each other, choosing the workspace containing the projects to work on is important. Projects within a workspace are shown in the Carbide workbench within the Project Explorer and C/C++ Project views. When you create a new project it is automatically added to the currently open workspace. You can import existing projects into a workspace from INF files.

    -

    WARNING Bld.inf imported projects are not copied, so do not delete the contents when deleting the project.

    -

    Projects in one workspace cannot refer to projects in a different workspace. Thus, large projects spanning folders outside of the workspace are not handled at all. Storing all the project files in the workspace makes managing them easier from a project management perspective. Files accessible inside the workspace, like project source and resource files, are better supported than those outside the workspace (for example, SDK headers). Local History, CVS, MMP/bld.inf editors, etc. are available for files inside the workspace but not for those outside the workspace.

    -

    NOTE Carbide automatically updates MMP and INF files as changes are made within the MMP and INF editors.

    -

    Carbide generates project support files, such as .project and .cproject and a .metadata folder, which stores preferences. Metadata files like ".project" are placed in the source tree. If adding these files to CVS causes a problem, these files may be excluded from CVS using Team > Ignored Resources preference panel to specify name patterns to exclude from version control.

    -

    Other references

    - - - - - + + + + + + +Workspace Information + + + + +

    Workspace Information

    +

    A workspace is the default place to store and create resources like projects, folders, and files. These are then presented to the user in a perspective which enables the presentation and manipulation of the stored resources.

    +

    When Carbide is launched it asks for a workspace to open. As you can have multiple workspaces, all independent from each other, choosing the workspace containing the projects to work on is important. Projects within a workspace are shown in the Carbide workbench within the Project Explorer and C/C++ Project views. When you create a new project it is automatically added to the currently open workspace. You can import existing projects into a workspace from INF files.

    +

    WARNING Bld.inf imported projects are not copied, so do not delete the contents when deleting the project.

    +

    Projects in one workspace cannot refer to projects in a different workspace. Thus, large projects spanning folders outside of the workspace are not handled at all. Storing all the project files in the workspace makes managing them easier from a project management perspective. Files accessible inside the workspace, like project source and resource files, are better supported than those outside the workspace (for example, SDK headers). Local History, CVS, MMP/bld.inf editors, etc. are available for files inside the workspace but not for those outside the workspace.

    +

    NOTE Carbide automatically updates MMP and INF files as changes are made within the MMP and INF editors.

    +

    Carbide generates project support files, such as .project and .cproject and a .metadata folder, which stores preferences. Metadata files like ".project" are placed in the source tree. If adding these files to CVS causes a problem, these files may be excluded from CVS using Team > Ignored Resources preference panel to specify name patterns to exclude from version control.

    +

    Other references

    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,34 +1,34 @@ - - - - - - -Breakpoints Overview - - - -

    Breakpoints Overview

    -

    A breakpoint is a marker set on a specific line of source code and is designed to suspend program execution. Breakpoints are shown in the UI both with the associated source code in an editor view as well as a dedicated Breakpoints view.

    -

    When a breakpoint is encountered during program execution, the debugger suspends execution and the Debug perspective appears so you can examine the executable's current state, check register and variable values, and use the stepping commands to walk line by line through the program to verify its operation. You can also change values and alter the flow of normal program execution. Setting breakpoints helps you debug your program and verify its efficiency.

    -

    The following topics cover various breakpoint concepts and actions:

    - -

    Other references

    -
      -
    • Debugging overview
    • -
    - - - + + + + + + +Breakpoints Overview + + + +

    Breakpoints Overview

    +

    A breakpoint is a marker set on a specific line of source code and is designed to suspend program execution. Breakpoints are shown in the UI both with the associated source code in an editor view as well as a dedicated Breakpoints view.

    +

    When a breakpoint is encountered during program execution, the debugger suspends execution and the Debug perspective appears so you can examine the executable's current state, check register and variable values, and use the stepping commands to walk line by line through the program to verify its operation. You can also change values and alter the flow of normal program execution. Setting breakpoints helps you debug your program and verify its efficiency.

    +

    The following topics cover various breakpoint concepts and actions:

    + +

    Other references

    +
      +
    • Debugging overview
    • +
    + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/conditional_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/conditional_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/conditional_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,35 +1,35 @@ - - - - - - -Creating Conditional Breakpoints - - - -

    Creating Conditional Breakpoints

    -

    Use the Properties for Breakpoint > Common > Conditional option to create conditional breakpoints. Where regular breakpoints suspend execution each time they are hit, a condition breakpoint evaluates an expression to determine if it is true or not. If the expression evaluates true, then program execuation is suspended and the Debug perpective shown. If the expression evaluates to false, execution continues.

    -

    -

    Figure 1. Condition field in Properties for Breakpoint window

    -

    You create a conditional breakpoint in the Conditional field by entering a valid expression. Valid expressions include:

    -
      -
    • meters == 10
    • -
    • height >= 5
    • -
    • count != 10
    • -
    -

    When creating the expression some things to consider include:

    -
      -
    • expressions must evaluate to true
    • -
    • the value being examined must be within the scope of the function
    • -
    • normal syntax rules apply when creating the expression
    • -
    • only a single expression can be evaluated within the Condition field
    • -
    • function and method calls cannot be used as part of the expression
    • -
    -

    Other references

    - - - - + + + + + + +Creating Conditional Breakpoints + + + +

    Creating Conditional Breakpoints

    +

    Use the Properties for Breakpoint > Common > Conditional option to create conditional breakpoints. Where regular breakpoints suspend execution each time they are hit, a condition breakpoint evaluates an expression to determine if it is true or not. If the expression evaluates true, then program execuation is suspended and the Debug perpective shown. If the expression evaluates to false, execution continues.

    +

    +

    Figure 1. Condition field in Properties for Breakpoint window

    +

    You create a conditional breakpoint in the Conditional field by entering a valid expression. Valid expressions include:

    +
      +
    • meters == 10
    • +
    • height >= 5
    • +
    • count != 10
    • +
    +

    When creating the expression some things to consider include:

    +
      +
    • expressions must evaluate to true
    • +
    • the value being examined must be within the scope of the function
    • +
    • normal syntax rules apply when creating the expression
    • +
    • only a single expression can be evaluated within the Condition field
    • +
    • function and method calls cannot be used as part of the expression
    • +
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/exporting_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/exporting_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/exporting_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,52 +1,52 @@ - - - - - - -Exporting Breakpoints and Watchpoints - - - -

    Exporting Breakpoints and Watchpoints

    -

    Use the Export Breakpoints command to export selected breakpoints and watchpoints to a file with a .bkpt extension. All the breakpoints set in the source files of the project and the watchpoints are listed in the Export Breakpoints dialog. Click the specific breakpoints and watchpoints to export or use Select All to include all of them. Specify the destination file name and folder, then click Finish.

    -

    -

    Figure 1 - Export Breakpoints dialog

    - - - - - - - - - - - - - - - - - - - - - - - -
    OptionDescriptionDefault
    Breakpoint ListSelect the breakpoints and watchpoints that you wish to export, and deselect those that you do not.

    not selected

    To file The file to export the breakpoints and watchpoints to, you can also click Browse... to search for a location to export.

    There can be two possible defaults:

    -
      -
    • If you have never exported breakpoints or watchpoints before it will be blank
    • -
    • If you have exported breakpoints and watchpoints before the last file name you exported to will be automatically inserted.
    • -
    Overwrite existing file without warning
    -
    When selected, if the file you wish to export to already exists, it will be overwritten automatically by the wizard.
    -
    not selected
    -

    Other references

    - - - - + + + + + + +Exporting Breakpoints and Watchpoints + + + +

    Exporting Breakpoints and Watchpoints

    +

    Use the Export Breakpoints command to export selected breakpoints and watchpoints to a file with a .bkpt extension. All the breakpoints set in the source files of the project and the watchpoints are listed in the Export Breakpoints dialog. Click the specific breakpoints and watchpoints to export or use Select All to include all of them. Specify the destination file name and folder, then click Finish.

    +

    +

    Figure 1 - Export Breakpoints dialog

    + + + + + + + + + + + + + + + + + + + + + + + +
    OptionDescriptionDefault
    Breakpoint ListSelect the breakpoints and watchpoints that you wish to export, and deselect those that you do not.

    not selected

    To file The file to export the breakpoints and watchpoints to, you can also click Browse... to search for a location to export.

    There can be two possible defaults:

    +
      +
    • If you have never exported breakpoints or watchpoints before it will be blank
    • +
    • If you have exported breakpoints and watchpoints before the last file name you exported to will be automatically inserted.
    • +
    Overwrite existing file without warning
    +
    When selected, if the file you wish to export to already exists, it will be overwritten automatically by the wizard.
    +
    not selected
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/importing_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/importing_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/importing_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,44 +1,44 @@ - - - - - - -Importing Breakpoints and Watchpoints - - - -

    Importing Breakpoints and Watchpoints

    -

    Use the Import Breakpoints command to import a .bkpt file containing breakpoint and watchpoint data and apply it to the current project. Right-click in the Breakpoints view and select Import Breakpoints... from the context menu. You have the options of updating all existing breakpoints with the stored data or simply creating a working set containing the imported data.

    -

    -

    Figure 2 - Import Breakpoints dialog

    - - - - - - - - - - - - - - - - - - - -
    OptionDescription
    From file

    Enter the file name to import or click Browse to search for a .bkpt file to import.

    Update existing breakpoints
    -
    Update all existing project breakpoints found in the imported breakpoint data file.
    -
    Create breakpoint working sets Create a new breakpoint working set containing the imported breakpoint data.
    -

    Other references

    - - - - + + + + + + +Importing Breakpoints and Watchpoints + + + +

    Importing Breakpoints and Watchpoints

    +

    Use the Import Breakpoints command to import a .bkpt file containing breakpoint and watchpoint data and apply it to the current project. Right-click in the Breakpoints view and select Import Breakpoints... from the context menu. You have the options of updating all existing breakpoints with the stored data or simply creating a working set containing the imported data.

    +

    +

    Figure 2 - Import Breakpoints dialog

    + + + + + + + + + + + + + + + + + + + +
    OptionDescription
    From file

    Enter the file name to import or click Browse to search for a .bkpt file to import.

    Update existing breakpoints
    +
    Update all existing project breakpoints found in the imported breakpoint data file.
    +
    Create breakpoint working sets Create a new breakpoint working set containing the imported breakpoint data.
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/properties_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/properties_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/properties_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,62 +1,62 @@ - - - - - - -Breakpoints Properties - - - -

    Breakpoints Properties

    -

    Use the Properties for Breakpoint window to examine and modify a specific breakpoints properties. By setting certain options its possible to create both conditional and temporary breakpoints.

    -

    The pages available include:

    -
      -
    • Actions - define one or more specific breakpoint actions like playing a sound or showing an alert message to this breakpoint
    • -
    • Common - shows common information including the class, breakpoint type, file location, and other attributes associated with the breakpoint.
    • -
    -

    -

    Figure 1 - Properties for C/C++ breakpoint window

    -
    Table 1. Breakpoint properties - common page
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    PropertyExplanation
    ClassBreakpoint class
    TypeBreakpoint type. Regular is the default software breakpoint type.
    FileThe complete path and filename of the file where the breakpoint is located.
    Line numberThe breakpoints line number in the file.
    EnabledIndicates the current status of the breakpoint. When checkmarked, the breakpoint stops program execution if its condition is met. When unchecked, the breakpoint is ignored during the debug session.
    ConditionThe conditional expression associated with the item. This conditional expression must evaluate to true in order for the item to perform its specified action. If left blank, execution is suspended each time the breakpoint is hit. If a condition is entered,like n==10, execution only stops when the condition evaluates to true.
    Ignore count

    Defines when a breakpoint should be ignored during a debug session. The default count 0 indicates that the breakpoint should suspend execution each time it is hit. A value of 1 defines this breakpoint as a temporary breakpoint, which should be ignored after the first time it is encountered.

    -
    -

    Other references

    - - - - + + + + + + +Breakpoints Properties + + + +

    Breakpoints Properties

    +

    Use the Properties for Breakpoint window to examine and modify a specific breakpoints properties. By setting certain options its possible to create both conditional and temporary breakpoints.

    +

    The pages available include:

    +
      +
    • Actions - define one or more specific breakpoint actions like playing a sound or showing an alert message to this breakpoint
    • +
    • Common - shows common information including the class, breakpoint type, file location, and other attributes associated with the breakpoint.
    • +
    +

    +

    Figure 1 - Properties for C/C++ breakpoint window

    +
    Table 1. Breakpoint properties - common page
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PropertyExplanation
    ClassBreakpoint class
    TypeBreakpoint type. Regular is the default software breakpoint type.
    FileThe complete path and filename of the file where the breakpoint is located.
    Line numberThe breakpoints line number in the file.
    EnabledIndicates the current status of the breakpoint. When checkmarked, the breakpoint stops program execution if its condition is met. When unchecked, the breakpoint is ignored during the debug session.
    ConditionThe conditional expression associated with the item. This conditional expression must evaluate to true in order for the item to perform its specified action. If left blank, execution is suspended each time the breakpoint is hit. If a condition is entered,like n==10, execution only stops when the condition evaluates to true.
    Ignore count

    Defines when a breakpoint should be ignored during a debug session. The default count 0 indicates that the breakpoint should suspend execution each time it is hit. A value of 1 defines this breakpoint as a temporary breakpoint, which should be ignored after the first time it is encountered.

    +
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/resolving_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/resolving_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/resolving_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,65 +1,65 @@ - - - - - - -Breakpoint Status Indicators - - - -

    Breakpoint Status Indicators

    -

    Breakpoints must be located and resolved by the debugger before they can be hit. When a breakpoint is hit in the module, the debugger halts program execution and displays the state of the program in the Debug perspective.

    -

    To hit a breakpoint during a debug session, the debugger must first load the symbols for an executable module and then attempt to resolve the breakpoints within the loaded module. Any module listed into the Executables view is available for loading by a debug session. If a module is not present in the Executable view you'll need to import it before the debugger to load and resolve any breakpoints within that module.

    -

    You set a breakpoint on any executable line of code that the debugger can resolve. Lines containing comments and other non executable code cannot be assigned a breakpoint as they are normally stripped from the compiled binary. Carbide helps by preventing you from setting a breakpoint on a non-compilable line of code.

    -

    When the debugger attempts to resolve a breakpoint the possible results are shown in Table 1.

    -
    Table 1 Breakpoint—type, icons, and states
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TypeIconStateExplanation
    Enabled
    Unresolved

    The breakpoint is enabled but the symbols for the module are not loaded or the breakpoint was not able to be set within the current function.Breakpoint icon remains in unflagged state indicating unresolved status.

    -

    If the breakpoint has been set in the source file but not resolved:

    -
      -
    • a debug session has not been launched to resolve the breakpoint. For example, you just set the breakpoint and have yet to launch a debug session.
    • -
    • the symbols file containing the breakpoint cannot be found. Ensure the module to debug is present in the Executable view list so the debugger can locate and load the executable for symbol resolution.
    • -
    • breakpoint is set on a source line without any executable code
    • -
    • breakpoint is located in a deadstripped function not present in the executable
    • -
    Resolved

    The breakpoint is currently enabled, the symbols for the module are loaded, and the breakpoint located in the executable being debugged. The debugger halts program execution at an enabled breakpoint.

    -
      -
    • resolved — the symbols for the module are loaded and the breakpoint located in the executable that’s currently being debugged, circle icon changes to flagged icon
    • -
    • resolved and moved —the breakpoint is not found in the executable at the specified point. Debugger moves breakpoint forward in the current function until a line is found that can be resolved. Breakpoint icon moved to source line matching new breakpoint location and changed to flagged icon
    • -
    -
    Disabled
    Unresolved
    Indicates that the breakpoint is currently disabled but not located in the executable during a debug session. The debugger does not halt program execution at a disabled breakpoint.
    Resolved
    Indicates that the breakpoint is currently disabled and resolved for the source line. The debugger does not halt program execution at a disabled breakpoint.
    -

    Other references

    - - - - + + + + + + +Breakpoint Status Indicators + + + +

    Breakpoint Status Indicators

    +

    Breakpoints must be located and resolved by the debugger before they can be hit. When a breakpoint is hit in the module, the debugger halts program execution and displays the state of the program in the Debug perspective.

    +

    To hit a breakpoint during a debug session, the debugger must first load the symbols for an executable module and then attempt to resolve the breakpoints within the loaded module. Any module listed into the Executables view is available for loading by a debug session. If a module is not present in the Executable view you'll need to import it before the debugger to load and resolve any breakpoints within that module.

    +

    You set a breakpoint on any executable line of code that the debugger can resolve. Lines containing comments and other non executable code cannot be assigned a breakpoint as they are normally stripped from the compiled binary. Carbide helps by preventing you from setting a breakpoint on a non-compilable line of code.

    +

    When the debugger attempts to resolve a breakpoint the possible results are shown in Table 1.

    +
    Table 1 Breakpoint—type, icons, and states
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TypeIconStateExplanation
    Enabled
    Unresolved

    The breakpoint is enabled but the symbols for the module are not loaded or the breakpoint was not able to be set within the current function.Breakpoint icon remains in unflagged state indicating unresolved status.

    +

    If the breakpoint has been set in the source file but not resolved:

    +
      +
    • a debug session has not been launched to resolve the breakpoint. For example, you just set the breakpoint and have yet to launch a debug session.
    • +
    • the symbols file containing the breakpoint cannot be found. Ensure the module to debug is present in the Executable view list so the debugger can locate and load the executable for symbol resolution.
    • +
    • breakpoint is set on a source line without any executable code
    • +
    • breakpoint is located in a deadstripped function not present in the executable
    • +
    Resolved

    The breakpoint is currently enabled, the symbols for the module are loaded, and the breakpoint located in the executable being debugged. The debugger halts program execution at an enabled breakpoint.

    +
      +
    • resolved — the symbols for the module are loaded and the breakpoint located in the executable that’s currently being debugged, circle icon changes to flagged icon
    • +
    • resolved and moved —the breakpoint is not found in the executable at the specified point. Debugger moves breakpoint forward in the current function until a line is found that can be resolved. Breakpoint icon moved to source line matching new breakpoint location and changed to flagged icon
    • +
    +
    Disabled
    Unresolved
    Indicates that the breakpoint is currently disabled but not located in the executable during a debug session. The debugger does not halt program execution at a disabled breakpoint.
    Resolved
    Indicates that the breakpoint is currently disabled and resolved for the source line. The debugger does not halt program execution at a disabled breakpoint.
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/temporary_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/temporary_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/temporary_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - - - - - - -Creating Temporary Breakpoints and Watchpoints - - - -

    Creating Temporary Breakpoints and Watchpoints

    -

    Use the Properties for Breakpoint > Common > Ignore Count option to create temporary breakpoints or watchpoints. Where regular breakpoints or watchpoints suspend execution each time they are hit, a temporary one is removed once it is hit. The default value is 0, which suspends program execution each time the breakpoint or watchpoint are hit.

    -

    To set a temporary breakpoint or watchpoint, change the value of Ignore count to 1. The first time the breakpoint or watchpoint is hit execution is suspended, while any subsequent hits are ignored.

    -

    -

    Figure 1. Ignore Count option in Properties for Breakpoint window

    -

    Other references

    - - - - + + + + + + +Creating Temporary Breakpoints and Watchpoints + + + +

    Creating Temporary Breakpoints and Watchpoints

    +

    Use the Properties for Breakpoint > Common > Ignore Count option to create temporary breakpoints or watchpoints. Where regular breakpoints or watchpoints suspend execution each time they are hit, a temporary one is removed once it is hit. The default value is 0, which suspends program execution each time the breakpoint or watchpoint are hit.

    +

    To set a temporary breakpoint or watchpoint, change the value of Ignore count to 1. The first time the breakpoint or watchpoint is hit execution is suspended, while any subsequent hits are ignored.

    +

    +

    Figure 1. Ignore Count option in Properties for Breakpoint window

    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/toggling_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/toggling_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/toggling_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -33,6 +33,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/viewing_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/viewing_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/breakpoints/viewing_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,140 +1,140 @@ - - - - - - -Viewing Breakpoints and Watchpoints - - - -

    Viewing Breakpoints and Watchpoints

    -

    Use the Breakpoints view (Figure 1) to examine a project's breakpoints and watchpoints, toggle individual breakpoints between enabled and disabled, set conditional breakpoints, export and import breakpoints, or remove them from one or more build configurations.

    -

    The Breakpoints view is available in the Debug perspective by default. To open it in another perspective, use the Window > Show View > Breakpoints menu option. Once open you have control over breakpoint states and how they are shown. For example:

    -
      -
    • Click a check box next to a breakpoint to toggle its state between enabled (checked) and disabled (no checkmark)
    • -
    • Double-click a breakpoint to open the associated source file at the breakpoint line number in an editor view
    • -
    • Use the Menu > Group By command to control how the breakpoints are shown in the view. For example, by file, by breakpoints, etc.
    • -
    • Use the Menu > Working Sets... command to create working sets of breakpoints to quickly switch between different breakpoint settings or groups
    • -
    • Right-click to open the Breakpoints view's context menu for additional command options
    • -
    -

    -

    Figure 1 - Breakpoints view showing context menu

    -

    Breakpoints view toolbar icons

    -

    The following commands appear on the toolbar within the Breakpoints view:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemIconExplanation
    Remove Selected Breakpoint
    Removes the selected breakpoint from the breakpoints list.
    Remove All Breakpoints
    Removes all breakpoints from the breakpoints list.
    Show Breakpoints Supported by Selected Target
    Limits the breakpoints shown to only those supported in the current target.
    Go to File for Breakpoint
    Displays the breakpoint in an editor view, opening the source file if required.
    Skip All Breakpoints
    Toggles the debugger to skip all breakpoints regardless of their current enabled or disabled state, or hit all breakpoints.
    Expand All
    Expand all matches in the hierarchical view.
    Collapse All
    Collapse all matches in the hierarchical view.
    Link with Debug View
    When enabled, the breakpoint shown in the editor view is also highlighted in the Breakpoints view. When disabled, the breakpoint selected in the Breakpoints view does not change.
    Menu

    Click to display additional Breakpoints view options for paths, grouping choices, and working sets as shown below.

    -

    -

    Breakpoints view context menu options

    -

    The following commands appear on the context menu when you right-click within the Breakpoints view:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Go to File Opens the associated file for the breakpoint in an editor, make it active and highlight the breakpoint location. If the file is already open, make it active and the highlight the breakpoint location.
    EnableEnables the selected breakpoints.
    DisableDisables the selected breakpoints.
    RemoveRemoves the selected breakpoints from the project and Breakpoints view.
    Remove All Removes all breakpoints from the project and Breakpoints view.
    Select All Selects all the breakpoints shown in the Breakpoints view.
    CopyCopies the selected breakpoint to the clipboard.
    PasteAlways disabled.
    Export Breakpoints Opens the Export Breakpoints wizard to store the project's breakpoint data.
    Import Breakpoints Opens the Import Breakpoints wizard to import stored breakpoint data (.bkpt).
    Add Watchpoint (C/C++)...  
    PropertiesOpens the Properties for Breakpoint dialog.
    -

    Other references

    - - - - + + + + + + +Viewing Breakpoints and Watchpoints + + + +

    Viewing Breakpoints and Watchpoints

    +

    Use the Breakpoints view (Figure 1) to examine a project's breakpoints and watchpoints, toggle individual breakpoints between enabled and disabled, set conditional breakpoints, export and import breakpoints, or remove them from one or more build configurations.

    +

    The Breakpoints view is available in the Debug perspective by default. To open it in another perspective, use the Window > Show View > Breakpoints menu option. Once open you have control over breakpoint states and how they are shown. For example:

    +
      +
    • Click a check box next to a breakpoint to toggle its state between enabled (checked) and disabled (no checkmark)
    • +
    • Double-click a breakpoint to open the associated source file at the breakpoint line number in an editor view
    • +
    • Use the Menu > Group By command to control how the breakpoints are shown in the view. For example, by file, by breakpoints, etc.
    • +
    • Use the Menu > Working Sets... command to create working sets of breakpoints to quickly switch between different breakpoint settings or groups
    • +
    • Right-click to open the Breakpoints view's context menu for additional command options
    • +
    +

    +

    Figure 1 - Breakpoints view showing context menu

    +

    Breakpoints view toolbar icons

    +

    The following commands appear on the toolbar within the Breakpoints view:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemIconExplanation
    Remove Selected Breakpoint
    Removes the selected breakpoint from the breakpoints list.
    Remove All Breakpoints
    Removes all breakpoints from the breakpoints list.
    Show Breakpoints Supported by Selected Target
    Limits the breakpoints shown to only those supported in the current target.
    Go to File for Breakpoint
    Displays the breakpoint in an editor view, opening the source file if required.
    Skip All Breakpoints
    Toggles the debugger to skip all breakpoints regardless of their current enabled or disabled state, or hit all breakpoints.
    Expand All
    Expand all matches in the hierarchical view.
    Collapse All
    Collapse all matches in the hierarchical view.
    Link with Debug View
    When enabled, the breakpoint shown in the editor view is also highlighted in the Breakpoints view. When disabled, the breakpoint selected in the Breakpoints view does not change.
    Menu

    Click to display additional Breakpoints view options for paths, grouping choices, and working sets as shown below.

    +

    +

    Breakpoints view context menu options

    +

    The following commands appear on the context menu when you right-click within the Breakpoints view:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Go to File Opens the associated file for the breakpoint in an editor, make it active and highlight the breakpoint location. If the file is already open, make it active and the highlight the breakpoint location.
    EnableEnables the selected breakpoints.
    DisableDisables the selected breakpoints.
    RemoveRemoves the selected breakpoints from the project and Breakpoints view.
    Remove All Removes all breakpoints from the project and Breakpoints view.
    Select All Selects all the breakpoints shown in the Breakpoints view.
    CopyCopies the selected breakpoint to the clipboard.
    PasteAlways disabled.
    Export Breakpoints Opens the Export Breakpoints wizard to store the project's breakpoint data.
    Import Breakpoints Opens the Import Breakpoints wizard to import stored breakpoint data (.bkpt).
    Add Watchpoint (C/C++)...  
    PropertiesOpens the Properties for Breakpoint dialog.
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_other.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_other.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_other.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,31 +1,31 @@ - - - - - - -Debugging Overview - - - -

    Other Useful Commands

    -

    The Debug view has a few other commands that are useful under some debugging situations:

    -

    Disconnecting from a process

    -

    Use the Disconnect command () when debugging with Application TRK or System TRK to detach the debugger from a process on the device while leaving the device running.

    -

    When debugging in stop-mode it will detach the debugger and leave the CPU running on the device.

    -
      -
    • Click the Disconnect button () in the Debug view
    • -
    • Right-click the thread in the Debug view and select Disconnect from the context menu
    • -
    -

    Instruction Stepping Mode

    -

    Activate to enable instruction stepping mode to examine a program as it steps into disassembled code.

    -

    Removing all processes

    -

    Clears all terminated processes in Debug view.

    -

    Other references

    - - - - + + + + + + +Debugging Overview + + + +

    Other Useful Commands

    +

    The Debug view has a few other commands that are useful under some debugging situations:

    +

    Disconnecting from a process

    +

    Use the Disconnect command () when debugging with Application TRK or System TRK to detach the debugger from a process on the device while leaving the device running.

    +

    When debugging in stop-mode it will detach the debugger and leave the CPU running on the device.

    +
      +
    • Click the Disconnect button () in the Debug view
    • +
    • Right-click the thread in the Debug view and select Disconnect from the context menu
    • +
    +

    Instruction Stepping Mode

    +

    Activate to enable instruction stepping mode to examine a program as it steps into disassembled code.

    +

    Removing all processes

    +

    Clears all terminated processes in Debug view.

    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_reposition_pc.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_reposition_pc.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_reposition_pc.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,41 +1,41 @@ - - - - - - -Repositioning the Program Counter - - - - -

    Repositioning the Program Counter

    -

    Once you've suspended a program debug session, the Disassembly view provides commands for move or reposition the program counter (PC). These command include:

    - -

    WARNING Use of the Move to Line and Resume at Line can leave a program in an unstable state. Use at your own risk.

    -

    Run to Line (C/C++)

    -

    Use the Run to Line command () to execute the program from the currently executed line to the selected line.

    -

    Move to Line (C/C++)

    -

    Use the Move to Line (C/C++) command () to move the program counter to the selected line, skipping all intermediate lines but not resume execution. This enables you to skip suspect code and continue stepping through your program.

    -

    Resume at Line (C/C++)

    -

    Use the Resume at Line (C/C++) command () to begin program execution at the selected line, skipping all lines between it and the currently executed line.

    -

    Other references

    - - - - + + + + + + +Repositioning the Program Counter + + + + +

    Repositioning the Program Counter

    +

    Once you've suspended a program debug session, the Disassembly view provides commands for move or reposition the program counter (PC). These command include:

    + +

    WARNING Use of the Move to Line and Resume at Line can leave a program in an unstable state. Use at your own risk.

    +

    Run to Line (C/C++)

    +

    Use the Run to Line command () to execute the program from the currently executed line to the selected line.

    +

    Move to Line (C/C++)

    +

    Use the Move to Line (C/C++) command () to move the program counter to the selected line, skipping all intermediate lines but not resume execution. This enables you to skip suspect code and continue stepping through your program.

    +

    Resume at Line (C/C++)

    +

    Use the Resume at Line (C/C++) command () to begin program execution at the selected line, skipping all lines between it and the currently executed line.

    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_resuming.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_resuming.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_resuming.htm Fri Apr 16 11:18:22 2010 -0500 @@ -37,6 +37,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_stepping.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_stepping.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/cmds_stepping.htm Fri Apr 16 11:18:22 2010 -0500 @@ -63,6 +63,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/debug.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/debug.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,28 +1,28 @@ - - - - - - -Debugging Overview - - - -

    Debugging Overview

    -

    The Debug view provides an overview of the debug session as it relates to the executing program.

    -

    The following topics cover various breakpoint concepts and actions:

    - -

    Other references

    - - - - + + + + + + +Debugging Overview + + + +

    Debugging Overview

    +

    The Debug view provides an overview of the debug session as it relates to the executing program.

    +

    The following topics cover various breakpoint concepts and actions:

    + +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/viewing_debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/viewing_debug.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/debug/viewing_debug.htm Fri Apr 16 11:18:22 2010 -0500 @@ -99,6 +99,6 @@
  • Debugging overview
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/adding_variables.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/adding_variables.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/adding_variables.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - - - - - - -Adding and Removing Global Variables - - - -

    Adding and Removing Global Variables

    -

    The Variables view can also display global variables used by the program. Right-click in the Variables view and select the Add Global Variables menu option to open the Global Variables dialog. There you can select one or more global variables to display in the Variables view, clickiing OK when done.

    -

    -

    Figure 1 - Global Variables selection dialog

    -

     

    -

    Removing Global Variables

    -

    Right-click in the Variables view and select the Add Global Variables menu option to open the Global Variables dialog. Locate and uncheckmark the global variable to stop displaying, then click OK. This removes the selected global variable from the variables list.

    -
    Other references
    - - - - + + + + + + +Adding and Removing Global Variables + + + +

    Adding and Removing Global Variables

    +

    The Variables view can also display global variables used by the program. Right-click in the Variables view and select the Add Global Variables menu option to open the Global Variables dialog. There you can select one or more global variables to display in the Variables view, clickiing OK when done.

    +

    +

    Figure 1 - Global Variables selection dialog

    +

     

    +

    Removing Global Variables

    +

    Right-click in the Variables view and select the Add Global Variables menu option to open the Global Variables dialog. Locate and uncheckmark the global variable to stop displaying, then click OK. This removes the selected global variable from the variables list.

    +
    Other references
    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/variables.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/variables.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/variables.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,30 +1,30 @@ - - - - - - -Variables and Expressions Overview - - - -

    Variables and Expressions Overview

    -

    Variables are symbols used in programs to store values or expressions that can change during the life of the program. Being able to view a variable's value is helpful when debugging a program. Expressions are the result of one or more variables being combined to produce a result based on the variable values and the way they are calculated. Variables are shown in the Variables view while expressions are shown in the Expressions view.

    -

    The following cover various variable and expression concepts and actions:

    - - - - + + + + + + +Variables and Expressions Overview + + + +

    Variables and Expressions Overview

    +

    Variables are symbols used in programs to store values or expressions that can change during the life of the program. Being able to view a variable's value is helpful when debugging a program. Expressions are the result of one or more variables being combined to produce a result based on the variable values and the way they are calculated. Variables are shown in the Variables view while expressions are shown in the Expressions view.

    +

    The following cover various variable and expression concepts and actions:

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/viewing_expressions.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/viewing_expressions.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/viewing_expressions.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,122 +1,122 @@ - - - - - - -Viewing Expressions - - - - -

    Viewing Expressions

    -

    The Expressions view allows manipulation of expressions. An expression is a snippet of code that is evaluated to produce a value. In Carbide they are defined using C/C++ expressions. Some expressions may need to be evaluated at a specific location in the program so that its variables can be referenced.

    -

    The Expressions view displays these panes:

    -
      -
    • Expressions list pane—Lists expressions and expression hierarchies. Click the hierarchical controls to expand or collapse the expression. Right-click to open the Expressions view context menu.
    • -
    • Value pane—Shows the current value of each corresponding expression. Double-click a value to change it. Right-click to set viewing options.
    • -
    -

    -

    Figure 1 - Expressions view

    -

    Expressions view toolbar icons

    -

    The following commands appear on the Expressions view toolbar:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemIconsExplanation
    Show Type Names
    Toggles the display of type names in the Expressions view.
    Show Logical Structure
    Not available in C/C++ yet.
    Collapse All
    Collapses all expanded expressions into the top level.
    Remove Selected Expression
    Click to remove all currently selected expressions from the expressions list.
    Remove All Expressions
    Click to remove all expressions from the expressions list.
    -

    Expressions view context menu options

    -

    Right-click in the Expression's pane in the Expressions view to access the context menu commands shown in Figure 2.

    -

    -

    Figure 2. Expressions view context menu commands (Expression list pane)

    -

    The commands include:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Select AllSelects all the expressions shown in the Expressions view.
    Copy ExpressionsCopies the selected expressions to the clipboard.
    RemoveRemove the selected expressions from the Expressions view list.
    Remove AllRemove all expressions from the Expressions view list.
    Find...Opens a Find dialog to search the Expressions view list.
    Change Value...

    Opens the Set Value dialog where you can modify the value assigned to the selected expressions. Change the value and click OK.

    -

    Add Watch Expression...

    Opens the Add Watch Exression dialog for creation of a new expression.

    -
    DisableDisables automatic evaluation of the selected expression and appends (disabled) to the expression name. Useful when you have lots of expressions but are concentrating on only a few. The more expressions that need evaluaton, the longer it takes to update the Expressions view.
    EnableEnables automatic evaluation of the selected expression. Enables a disabled expression so that it is evaluated during the debug session.
    Edit Watch Expression...Opens the Edit Watch Expression dialog where you can modify the expression and enable it for automatic evaluation.
    Reevaluate Watch ExpressionForces the expression to be reevaluated. Useful after the expressions has been edited or not evaluated due to being disabled.
    -
    Other references
    - - - - + + + + + + +Viewing Expressions + + + + +

    Viewing Expressions

    +

    The Expressions view allows manipulation of expressions. An expression is a snippet of code that is evaluated to produce a value. In Carbide they are defined using C/C++ expressions. Some expressions may need to be evaluated at a specific location in the program so that its variables can be referenced.

    +

    The Expressions view displays these panes:

    +
      +
    • Expressions list pane—Lists expressions and expression hierarchies. Click the hierarchical controls to expand or collapse the expression. Right-click to open the Expressions view context menu.
    • +
    • Value pane—Shows the current value of each corresponding expression. Double-click a value to change it. Right-click to set viewing options.
    • +
    +

    +

    Figure 1 - Expressions view

    +

    Expressions view toolbar icons

    +

    The following commands appear on the Expressions view toolbar:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemIconsExplanation
    Show Type Names
    Toggles the display of type names in the Expressions view.
    Show Logical Structure
    Not available in C/C++ yet.
    Collapse All
    Collapses all expanded expressions into the top level.
    Remove Selected Expression
    Click to remove all currently selected expressions from the expressions list.
    Remove All Expressions
    Click to remove all expressions from the expressions list.
    +

    Expressions view context menu options

    +

    Right-click in the Expression's pane in the Expressions view to access the context menu commands shown in Figure 2.

    +

    +

    Figure 2. Expressions view context menu commands (Expression list pane)

    +

    The commands include:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Select AllSelects all the expressions shown in the Expressions view.
    Copy ExpressionsCopies the selected expressions to the clipboard.
    RemoveRemove the selected expressions from the Expressions view list.
    Remove AllRemove all expressions from the Expressions view list.
    Find...Opens a Find dialog to search the Expressions view list.
    Change Value...

    Opens the Set Value dialog where you can modify the value assigned to the selected expressions. Change the value and click OK.

    +

    Add Watch Expression...

    Opens the Add Watch Exression dialog for creation of a new expression.

    +
    DisableDisables automatic evaluation of the selected expression and appends (disabled) to the expression name. Useful when you have lots of expressions but are concentrating on only a few. The more expressions that need evaluaton, the longer it takes to update the Expressions view.
    EnableEnables automatic evaluation of the selected expression. Enables a disabled expression so that it is evaluated during the debug session.
    Edit Watch Expression...Opens the Edit Watch Expression dialog where you can modify the expression and enable it for automatic evaluation.
    Reevaluate Watch ExpressionForces the expression to be reevaluated. Useful after the expressions has been edited or not evaluated due to being disabled.
    +
    Other references
    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/viewing_variables.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/viewing_variables.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/variables/viewing_variables.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,149 +1,149 @@ - - - - - - -Viewing Variables - - - -

    Viewing Variables

    -

    The Variables view allows manipulation of project variables and the variable hierarchy used in the source code. For example, you can change the variable format, change a variable value, add watch expressions, or add global variables.

    -

    Figure 1 shows the Variables view with Show Type Names option enabled. The default view shows the variables list and include the Name and Value for all the variables within scope. In addition, when you select a variable its value is also shown in a different pane within the view.

    -

    -

    Figure 1 - Variables view

    -

    Variables view toolbar icons

    -

    The following commands appear on the Variables view toolbar:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemIconsExplanation
    Show Type Names
    Toggles the display of type names in the Variables view.
    Show Logical Structure
    Not available in C/C++ yet.
    Collapse All
    Collapses all expanded variables into the top level.
    Add Global Variables
    Click to open the Global Variables dialog where you can select one or more global variables to display in the Variables view. Global variables appear at the top of the variables list.
    Remove Selected Global Variables
    Click to remove all currently selected global variables from the variables list.
    Remove All Global Variables
    Click to remove all global variables from the variables list.
    Menu

    Enables you to modifiy the Layout to change the view orientation between: horizontal, vertical, or variables pane only.

    -

    In addition, use Show All Variables to toggle between showing only those variables that are in scope and live or show all local variables, even if redundant. With this option on you will see all of the variables including the multiple defined variables like “i” for your loops and ones that may no longer have accurate values.

    -

    Variables view context menu options

    -

    Right-click in the Variables view to access the commands on the Variables view context menu.

    -

    -

    Figure 2. Variables view context menu commands

    -

    The commands include:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Select AllSelects all the variables shown in the Variables view.
    Copy VariablesCopies the selected variables to the clipboard.
    EnableEnables the selected variable.
    DisableDisables the selected variable.
    Display as Array... 
    Cast To Type...Opens the Cast to Type dialog where you can assign a new type to the variable.

    Restore Original Type

    Resets the selected variable to the original type assigned by the program.
    View MemoryOpens a Memory view on the selected variable so you can examine it.
    Find...Opens a Find dialog to search for variables.
    Change Value...

    Opens the Set Value dialog where you can modify the value assigned to the selected variable. Change the value and click OK.

    -

    Add Watchpoint (C/C++)...Opens the Add Watchpoint dialog enabling you to define a watchpoint on the variable.
    Add Global Variables...Select to open the Global Variables dialog where you can select one or more global variables to display in the Variables view. Global variables appear at the top of the variables list.
    Remove Global VariablesRemove the selected global variables from the Variables view.
    Remove All Global VariablesRemove all global variables from the Variables view.
    Create Watch ExpressionCreates a watchpoint on the selected variable and displays it in the Watchpoint view.
    Format

    Change the selected variable's display format. The default setting is Natural, or the format assigned when the variable is defined. For example, the decimal value of 256 would appear as:

    -
      -
    • Binary (0b100000)
    • -
    • Natural (256)
    • -
    • Decimal (256)
    • -
    • Hexadecimal (0x100)
    • -
    -
    Other references
    - - - - + + + + + + +Viewing Variables + + + +

    Viewing Variables

    +

    The Variables view allows manipulation of project variables and the variable hierarchy used in the source code. For example, you can change the variable format, change a variable value, add watch expressions, or add global variables.

    +

    Figure 1 shows the Variables view with Show Type Names option enabled. The default view shows the variables list and include the Name and Value for all the variables within scope. In addition, when you select a variable its value is also shown in a different pane within the view.

    +

    +

    Figure 1 - Variables view

    +

    Variables view toolbar icons

    +

    The following commands appear on the Variables view toolbar:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemIconsExplanation
    Show Type Names
    Toggles the display of type names in the Variables view.
    Show Logical Structure
    Not available in C/C++ yet.
    Collapse All
    Collapses all expanded variables into the top level.
    Add Global Variables
    Click to open the Global Variables dialog where you can select one or more global variables to display in the Variables view. Global variables appear at the top of the variables list.
    Remove Selected Global Variables
    Click to remove all currently selected global variables from the variables list.
    Remove All Global Variables
    Click to remove all global variables from the variables list.
    Menu

    Enables you to modifiy the Layout to change the view orientation between: horizontal, vertical, or variables pane only.

    +

    In addition, use Show All Variables to toggle between showing only those variables that are in scope and live or show all local variables, even if redundant. With this option on you will see all of the variables including the multiple defined variables like “i” for your loops and ones that may no longer have accurate values.

    +

    Variables view context menu options

    +

    Right-click in the Variables view to access the commands on the Variables view context menu.

    +

    +

    Figure 2. Variables view context menu commands

    +

    The commands include:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Select AllSelects all the variables shown in the Variables view.
    Copy VariablesCopies the selected variables to the clipboard.
    EnableEnables the selected variable.
    DisableDisables the selected variable.
    Display as Array... 
    Cast To Type...Opens the Cast to Type dialog where you can assign a new type to the variable.

    Restore Original Type

    Resets the selected variable to the original type assigned by the program.
    View MemoryOpens a Memory view on the selected variable so you can examine it.
    Find...Opens a Find dialog to search for variables.
    Change Value...

    Opens the Set Value dialog where you can modify the value assigned to the selected variable. Change the value and click OK.

    +

    Add Watchpoint (C/C++)...Opens the Add Watchpoint dialog enabling you to define a watchpoint on the variable.
    Add Global Variables...Select to open the Global Variables dialog where you can select one or more global variables to display in the Variables view. Global variables appear at the top of the variables list.
    Remove Global VariablesRemove the selected global variables from the Variables view.
    Remove All Global VariablesRemove all global variables from the Variables view.
    Create Watch ExpressionCreates a watchpoint on the selected variable and displays it in the Watchpoint view.
    Format

    Change the selected variable's display format. The default setting is Natural, or the format assigned when the variable is defined. For example, the decimal value of 256 would appear as:

    +
      +
    • Binary (0b100000)
    • +
    • Natural (256)
    • +
    • Decimal (256)
    • +
    • Hexadecimal (0x100)
    • +
    +
    Other references
    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/setting_watchpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/setting_watchpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/setting_watchpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,56 +1,56 @@ - - - - - - -Setting and Removing Watchpoints - - - -

    Setting and Removing Watchpoints

    -

    You create a watchpoint to monitor a value in a specified memory location. The debugger halts program execution on the line of source code that triggered the watchpoint. This is different than a breakpoint, which halts program execution prior to executing the line of source code on which the breakpoint is set.

    -

    Setting watchpoints

    -

    Right-click in the Breakpoints view and choose the Add Watchpoint (C/C++)... command to open the Add Watchpoint window. A watchpoint suspends program execution when the memory location that you specify is accessed with a write or read operation and it's based on the access setting. Use the Add Watchpoint window to specify the memory location, its memory size, unit size, and define whether the watchpoint triggers on a read, write, or on both operations. Watchpoints can also be added directly in the Variables, Outline, and the Memory Rendering views.

    -

    -

    Figure 1. Add Watchpoint window

    -
    Table 1. Add Watchpoint options
    - - - - - - - - - - - - - - - - - - - - - -
    NameDescription
    Expression to watch
    If not already entered, you can enter any arbitrary memory location for watching.
    Memory spaceNot supported.
    UnitsDefine the size of the units to monitor. This setting defaults to the size of the variable to watch. If an arbitrary memory address is entered, then the default unit size is set to 1 byte. Once you enable the units checkbox, you're must enter a value for it.
    Access: Write/Read

    Check the appropriate access type to trigger the watchpoint for the specified memory location. This setting is shown as a unique icon in the Breakpoints view next to the listed watchpoint. The following list shows the resolved version of the icons used to indicate the type of watchpoint set:

    -
      -
    • Read only ()
    • -
    • Write only ()
    • -
    • Read/Write ()
    • -
    -

    Removing Watchpoints

    -

    In the Breakpoints view, locate the watchpoint to remove and:

    -
      -
    • Right-click the watchpoint and choose Remove from the context menu
    • -
    -

    Other references

    - - - - + + + + + + +Setting and Removing Watchpoints + + + +

    Setting and Removing Watchpoints

    +

    You create a watchpoint to monitor a value in a specified memory location. The debugger halts program execution on the line of source code that triggered the watchpoint. This is different than a breakpoint, which halts program execution prior to executing the line of source code on which the breakpoint is set.

    +

    Setting watchpoints

    +

    Right-click in the Breakpoints view and choose the Add Watchpoint (C/C++)... command to open the Add Watchpoint window. A watchpoint suspends program execution when the memory location that you specify is accessed with a write or read operation and it's based on the access setting. Use the Add Watchpoint window to specify the memory location, its memory size, unit size, and define whether the watchpoint triggers on a read, write, or on both operations. Watchpoints can also be added directly in the Variables, Outline, and the Memory Rendering views.

    +

    +

    Figure 1. Add Watchpoint window

    +
    Table 1. Add Watchpoint options
    + + + + + + + + + + + + + + + + + + + + + +
    NameDescription
    Expression to watch
    If not already entered, you can enter any arbitrary memory location for watching.
    Memory spaceNot supported.
    UnitsDefine the size of the units to monitor. This setting defaults to the size of the variable to watch. If an arbitrary memory address is entered, then the default unit size is set to 1 byte. Once you enable the units checkbox, you're must enter a value for it.
    Access: Write/Read

    Check the appropriate access type to trigger the watchpoint for the specified memory location. This setting is shown as a unique icon in the Breakpoints view next to the listed watchpoint. The following list shows the resolved version of the icons used to indicate the type of watchpoint set:

    +
      +
    • Read only ()
    • +
    • Write only ()
    • +
    • Read/Write ()
    • +
    +

    Removing Watchpoints

    +

    In the Breakpoints view, locate the watchpoint to remove and:

    +
      +
    • Right-click the watchpoint and choose Remove from the context menu
    • +
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/status_watchpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/status_watchpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/status_watchpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,99 +1,99 @@ - - - - - - -Watchpoint Status Indicators - - - -

    Watchpoint Status Indicators

    -

    Use watchpoints (sometimes referred to as access breakpoints) to halt program execution when a specific global location is accessed. After you set a watchpoint at a key point in memory, you can halt program execution whenever that point in memory is written to or read from. You can then examine the call chain, check register and variable values, and step through your code. You can also change values and alter the flow of normal program execution.

    -

    A watchpoint must be both enabled and resolved during a debug session in order to halt program execution. The Breakpoints view indicates the status of any watchpoint using a set of common icons and checkmark status badge. These include:

    -
      -
    • An enabled watchpoint has a non-gray icon () indicating that program execution halts when encountered.
    • -
    • A disabled watchpoint displays a gray icon () indicating that program execution will not stop when encountered.
    • -
    • A resolved watchpoint has a small checkmark badge ( ) indicating that the debugger has located it in memory during program launch. When resolved, the debugger can halt program execution if the watchpoint is encountered.
    • -
    -

    In effect, a watchpoint that is enabled by the user and resolved by the debugger during program launch can halt program execution. The table below shows the various states that cause the debugger to halt program execution:

    -
    Table 1 Watchpoint—stop execution chart
    - - - - - - - - - - - - - - - - -
    Watchpoint
    Resolved
    Unresolved
    Enabled
    Stops execution
    No
    Disabled
    No
    No
    -

     

    -

     

    -

     

    -

    In addition, you can use these types of watchpoints:

    -
      -
    • regular watchpoints—halt program execution
    • -
    • conditional watchpoints—halt program execution after meeting a condition that you specify (same as for breakpoints)
    • -
    -

    A watchpoint is equivalent to a memory breakpoint.

    -

    Unlike a breakpoint, a watchpoint can detect when any part of your program affects memory. For example, if a write or write/read watchpoint is set, when the program writes a new value to the address or area of memory that has the watchpoint, the debugger suspends program execution.

    -

    NOTE You cannot set a watchpoint on a local variable, because the debugger cannot detect watchpoints for variables stored on the stack or in registers.

    -
    Table 2 Watchpoint—types and states
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TypeStateIconExplanation
    Writeenabled

    The watchpoint is activated for write access operations on the specific memory location and if resolved, will halt program execution on a write operation at the watchpoint.

    disabled

    Watchpoint is disabled for the source line, debugger does not halt program execution on a write operation.

    Readenabled

    The watchpoint is activated for read access operations on the specific memory location and if resolved, will halt program execution on a read operation at the watchpoint.

    disabled

    Watchpoint is disabled for the source line, debugger does not halt program execution on a read operation.

    Write/Readenabled

    The watchpoint is activated for both read and write access operations on the specific memory location and if resolved, will halt program execution on any read or write operation at the watchpoint.

    disabled

    Watchpoint is disabled for the source line, debugger does not halt program execution on a read or write operation.

    -

    A project can have a different maximum number of watchpoints, depending on the build target. The IDE generally limits the acceptable range for watchpoints to memory that it can write-protect. This range also depends on the host and on the application.

    -

    All set watchpoints appear in the Breakpoints view list.

    -

    Other references

    - - - - + + + + + + +Watchpoint Status Indicators + + + +

    Watchpoint Status Indicators

    +

    Use watchpoints (sometimes referred to as access breakpoints) to halt program execution when a specific global location is accessed. After you set a watchpoint at a key point in memory, you can halt program execution whenever that point in memory is written to or read from. You can then examine the call chain, check register and variable values, and step through your code. You can also change values and alter the flow of normal program execution.

    +

    A watchpoint must be both enabled and resolved during a debug session in order to halt program execution. The Breakpoints view indicates the status of any watchpoint using a set of common icons and checkmark status badge. These include:

    +
      +
    • An enabled watchpoint has a non-gray icon () indicating that program execution halts when encountered.
    • +
    • A disabled watchpoint displays a gray icon () indicating that program execution will not stop when encountered.
    • +
    • A resolved watchpoint has a small checkmark badge ( ) indicating that the debugger has located it in memory during program launch. When resolved, the debugger can halt program execution if the watchpoint is encountered.
    • +
    +

    In effect, a watchpoint that is enabled by the user and resolved by the debugger during program launch can halt program execution. The table below shows the various states that cause the debugger to halt program execution:

    +
    Table 1 Watchpoint—stop execution chart
    + + + + + + + + + + + + + + + + +
    Watchpoint
    Resolved
    Unresolved
    Enabled
    Stops execution
    No
    Disabled
    No
    No
    +

     

    +

     

    +

     

    +

    In addition, you can use these types of watchpoints:

    +
      +
    • regular watchpoints—halt program execution
    • +
    • conditional watchpoints—halt program execution after meeting a condition that you specify (same as for breakpoints)
    • +
    +

    A watchpoint is equivalent to a memory breakpoint.

    +

    Unlike a breakpoint, a watchpoint can detect when any part of your program affects memory. For example, if a write or write/read watchpoint is set, when the program writes a new value to the address or area of memory that has the watchpoint, the debugger suspends program execution.

    +

    NOTE You cannot set a watchpoint on a local variable, because the debugger cannot detect watchpoints for variables stored on the stack or in registers.

    +
    Table 2 Watchpoint—types and states
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TypeStateIconExplanation
    Writeenabled

    The watchpoint is activated for write access operations on the specific memory location and if resolved, will halt program execution on a write operation at the watchpoint.

    disabled

    Watchpoint is disabled for the source line, debugger does not halt program execution on a write operation.

    Readenabled

    The watchpoint is activated for read access operations on the specific memory location and if resolved, will halt program execution on a read operation at the watchpoint.

    disabled

    Watchpoint is disabled for the source line, debugger does not halt program execution on a read operation.

    Write/Readenabled

    The watchpoint is activated for both read and write access operations on the specific memory location and if resolved, will halt program execution on any read or write operation at the watchpoint.

    disabled

    Watchpoint is disabled for the source line, debugger does not halt program execution on a read or write operation.

    +

    A project can have a different maximum number of watchpoints, depending on the build target. The IDE generally limits the acceptable range for watchpoints to memory that it can write-protect. This range also depends on the host and on the application.

    +

    All set watchpoints appear in the Breakpoints view list.

    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/toggling_watchpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/toggling_watchpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/toggling_watchpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,39 +1,39 @@ - - - - - - -Enabling and Disabling Watchpoints - - - -

    Enabling and Disabling Watchpoints

    -

    In the Breakpoints view use the checkboxes that appear next to a watchpoint to enable or disable that watchpoint. When enabled, if the value in the watchpoint location changes per the read/write condition, then program execution is suspended. If the watchpoint is disabled and the value changes, no action is taken by the debugger.

    -

    Enabling Watchpoints

    -

    In the Breakpoints view, locate the watchpoint to enable and:

    -
      -
    • -

      Click the checkbox next to the watchpoint in the Breakpoints view list

      -
    • -
    -
      -

      A checkmark in the checkbox () next to the watchpoint indicates the watchpoint is enabled.

      -
    -

    Disabling Watchpoints

    -

    In the Breakpoints view, locate the watchpoint to disable and:

    -
      -
    • Click the checkbox next to the watchpoint in the Breakpoints view list
    • -
    -
      -

      An empty checkbox () next to the watchpoint indicates the watchpoint is disabled.

      -
    -

    See Saving and importing breakpoints for information on storing breakpoint and watchpoint data sets for sharing or re-use.

    -

    Other references

    - - -
     
    - - + + + + + + +Enabling and Disabling Watchpoints + + + +

    Enabling and Disabling Watchpoints

    +

    In the Breakpoints view use the checkboxes that appear next to a watchpoint to enable or disable that watchpoint. When enabled, if the value in the watchpoint location changes per the read/write condition, then program execution is suspended. If the watchpoint is disabled and the value changes, no action is taken by the debugger.

    +

    Enabling Watchpoints

    +

    In the Breakpoints view, locate the watchpoint to enable and:

    +
      +
    • +

      Click the checkbox next to the watchpoint in the Breakpoints view list

      +
    • +
    +
      +

      A checkmark in the checkbox () next to the watchpoint indicates the watchpoint is enabled.

      +
    +

    Disabling Watchpoints

    +

    In the Breakpoints view, locate the watchpoint to disable and:

    +
      +
    • Click the checkbox next to the watchpoint in the Breakpoints view list
    • +
    +
      +

      An empty checkbox () next to the watchpoint indicates the watchpoint is disabled.

      +
    +

    See Saving and importing breakpoints for information on storing breakpoint and watchpoint data sets for sharing or re-use.

    +

    Other references

    + + +
     
    + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/watchpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/watchpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/debugger/watchpoints/watchpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - - - - - - -Watchpoints Overview - - - -

    Watchpoints Overview

    -

    A watchpoint is a marker set on a specific memory location which is designed to suspend program execution when the value at that location changes. Watchpoints are closely related to breakpoints and are shown in the Breakpoints view.

    -

    When a watchpoint is encountered during program execution, the debugger suspends execution and the Debug perspective appears so you can examine the executable's current state, check register and variable values, and use the stepping commands to walk line by line through the program to verify its operation. You can also change values and alter the flow of normal program execution. Setting watchpoints helps you debug your program and verify its efficiency.

    -

    The following topics cover various breakpoint concepts and actions:

    - - - - + + + + + + +Watchpoints Overview + + + +

    Watchpoints Overview

    +

    A watchpoint is a marker set on a specific memory location which is designed to suspend program execution when the value at that location changes. Watchpoints are closely related to breakpoints and are shown in the Breakpoints view.

    +

    When a watchpoint is encountered during program execution, the debugger suspends execution and the Debug perspective appears so you can examine the executable's current state, check register and variable values, and use the stepping commands to walk line by line through the program to verify its operation. You can also change values and alter the flow of normal program execution. Setting watchpoints helps you debug your program and verify its efficiency.

    +

    The following topics cover various breakpoint concepts and actions:

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/legal.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/legal.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/legal.htm Fri Apr 16 11:18:22 2010 -0500 @@ -10,7 +10,7 @@

    License Information

    COPYRIGHTS
    -

    Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. This component and the accompanying materials are made available under the terms of the License "Symbian Foundation License v1.0" which accompanies this distribution, and is available at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".

    +

    Copyright © 2010 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. This component and the accompanying materials are made available under the terms of the License "Symbian Foundation License v1.0" which accompanies this distribution, and is available at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".

    Initial Contributors:

    Nokia Corporation - initial contribution

    NOTICES
    diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/applications.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/applications.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/applications.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,19 +1,19 @@ - - - - -Applications Launch Configuration - - - - -

    Applications Launch Configuration

    -

    Use the Symbian OS Applications launch configuration to launch projects using the best launch configuration match. When chosen, Carbide examines the project and determines which specific launch configuration works best for the project, then launches it with the selected launch configuration. It is essentially identical to clicking the Debug icon () in the toolbar.

    -

    Other references

    - - - - + + + + +Applications Launch Configuration + + + + +

    Applications Launch Configuration

    +

    Use the Symbian OS Applications launch configuration to launch projects using the best launch configuration match. When chosen, Carbide examines the project and determines which specific launch configuration works best for the project, then launches it with the selected launch configuration. It is essentially identical to clicking the Debug icon () in the toolbar.

    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/attach_process.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/attach_process.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/attach_process.htm Fri Apr 16 11:18:22 2010 -0500 @@ -21,7 +21,7 @@
  • The Debugger tab defines debug configurations, such as entry point to begin debugging, target options, and instruction set.
  • The ROM Log tab allows you to specify where the ROM log file is stored and the Epoc32 directory.
  • The Executables tab allows you to specify which executables that you want to debug that are part of the project.
  • -
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • +
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • The Common tab (standard CDT page) defines general information about the launch configuration. You may choose to store the launch configuration in a specific file.
  • Other references

    diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/customizing_launch_configs.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/customizing_launch_configs.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/customizing_launch_configs.htm Fri Apr 16 11:18:22 2010 -0500 @@ -70,6 +70,6 @@ - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/emulation.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/emulation.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/emulation.htm Fri Apr 16 11:18:22 2010 -0500 @@ -21,7 +21,7 @@
  • The Debugger tab provides common debugger options for the project.
  • The Executables tab allows you to specify which executables are debugged by your project.
  • The x86 Exceptions tab lists all the x86 exceptions that the debugger can catch.
  • -
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • +
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • The Common tab (standard CDT page) defines general information about the launch configuration. You may choose to store the launch configuration in a specific file and specify which perspectives become active when the launch configuration is launched.
  • Other references

    diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/launch_configuration_filter.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/launch_configuration_filter.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/launch_configuration_filter.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,29 +1,29 @@ - - - - - - -Launch Configuration Filtering - - - -

    Launch Configuration Filtering

    -

    Use the Launch Configuration preference panel to filter the launch configurations that appear in the configurations list in the Run or Debug dialog. This allows you to manage which configuration types are shown. For example, enable the Filter checked launch configuration types option and check the configuration types that you do not want to appear in the Run and Debug dialogs. As shown in Figure 1, all the configurations related to TRK have been enabled and won't appear in the configurations list.

    -

    -

    Figure 1 - Launch Configurations preference panel

    -
    Related references
    - -
    Related tasks
    - -
    - -
    - - + + + + + + +Launch Configuration Filtering + + + +

    Launch Configuration Filtering

    +

    Use the Launch Configuration preference panel to filter the launch configurations that appear in the configurations list in the Run or Debug dialog. This allows you to manage which configuration types are shown. For example, enable the Filter checked launch configuration types option and check the configuration types that you do not want to appear in the Run and Debug dialogs. As shown in Figure 1, all the configurations related to TRK have been enabled and won't appear in the configurations list.

    +

    +

    Figure 1 - Launch Configurations preference panel

    +
    Related references
    + +
    Related tasks
    + +
    + +
    + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_connection.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_connection.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_connection.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,54 +1,54 @@ - - - - - - -Carbide Connection page - - - -

    Connection page

    -

    The Connection page specifies the method used to transfer files to the target device. Once a Serial Port type is chosen, the remaining options contain default values for the specific connection type. Users can change these remaining options to match the target device's communication specifications.

    -

    -

    Figure 1. Connection page

    -
    Table 1. Connection page —items
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Serial Port

    Select the serial port option to use for this launch or launch configuration. Once set, this port will be used for all subsequent launch configurations until it is set again. Note that for USB and BT can be dynamically assigned, so its critical that the port ID assigned here matches the one the system is using to communicate with the target device.

    -

    If you are using a USB connection, the connected phone's name should appear in the menu to help identify which port is being used.

    Baud Rate Use the Baud Rate option to select the baud rate for communication. The default baud rate value is 115200 bits per second (bps).
    Data Bits Use the Data Bits option to select a common data bits size (4, 5, 6, 7, and 8). The default data bits value is 8.
    ParityUse the Parity option to select the parity setting (None, Odd, or Even). The default parity value is None.
    Stop Bits Use the Stop Bits option to select the stop bits setting (1, 1.5, 2). The default stop bits value is 1.
    Flow Control Use the Flow Control option to select the flow control setting (None, Hardware (RTS/CTS), and Software (XON/XOFF)). The default flow control value is None.
    - -

    Other references

    - - - - + + + + + + +Carbide Connection page + + + +

    Connection page

    +

    The Connection page specifies the method used to transfer files to the target device. Once a Serial Port type is chosen, the remaining options contain default values for the specific connection type. Users can change these remaining options to match the target device's communication specifications.

    +

    +

    Figure 1. Connection page

    +
    Table 1. Connection page —items
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Serial Port

    Select the serial port option to use for this launch or launch configuration. Once set, this port will be used for all subsequent launch configurations until it is set again. Note that for USB and BT can be dynamically assigned, so its critical that the port ID assigned here matches the one the system is using to communicate with the target device.

    +

    If you are using a USB connection, the connected phone's name should appear in the menu to help identify which port is being used.

    Baud Rate Use the Baud Rate option to select the baud rate for communication. The default baud rate value is 115200 bits per second (bps).
    Data Bits Use the Data Bits option to select a common data bits size (4, 5, 6, 7, and 8). The default data bits value is 8.
    ParityUse the Parity option to select the parity setting (None, Odd, or Even). The default parity value is None.
    Stop Bits Use the Stop Bits option to select the stop bits setting (1, 1.5, 2). The default stop bits value is 1.
    Flow Control Use the Flow Control option to select the flow control setting (None, Hardware (RTS/CTS), and Software (XON/XOFF)). The default flow control value is None.
    + +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_exceptions.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_exceptions.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_exceptions.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,41 +1,41 @@ - - - - - - -Carbide x86 Exceptions page - - - -

    x86 Exceptions page

    -

    Use the x86 Exceptions page in the Emulation launch configuration to set the x86 exceptions the debugger should catch. If you want the debugger to catch all the exceptions, enable all of the options in this page. However, if you prefer to handle only certain exceptions, enable only those options that reflect the exceptions you want to handle.

    -

    -

    Figure 1 - x86 Exceptions page

    -
    Table 1. x86 Exceptions page —items
    - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Exceptions to catch Click to enable by exception which x86 exceptions the debugger should catch.
    Check All Enables catching all exceptions.
    Clear All Disables catching all exceptions.
    -

    Other references

    - - -
     
    - - + + + + + + +Carbide x86 Exceptions page + + + +

    x86 Exceptions page

    +

    Use the x86 Exceptions page in the Emulation launch configuration to set the x86 exceptions the debugger should catch. If you want the debugger to catch all the exceptions, enable all of the options in this page. However, if you prefer to handle only certain exceptions, enable only those options that reflect the exceptions you want to handle.

    +

    +

    Figure 1 - x86 Exceptions page

    +
    Table 1. x86 Exceptions page —items
    + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Exceptions to catch Click to enable by exception which x86 exceptions the debugger should catch.
    Check All Enables catching all exceptions.
    Clear All Disables catching all exceptions.
    +

    Other references

    + + +
     
    + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_executables.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_executables.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_executables.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,54 +1,54 @@ - - - - -Carbide Executables page - - - - -

    Executables page

    -

    The Executables page specifies the executables available to debug with your project based on the chosen rule. The Executables page gives you project level control over the executables associated with it. The page shows all the executables in the workspace or those imported into the Executables view from outside the workspace that can be debugged by this project. See the Executables view for information on controlling executables from the workspace.

    -

    -

    Figure 1 - Executables page (System TRK example)

    -
    Table 1. Executable page —items
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Load symbols for these executables and target them for debugging

    Select the rule which governs the executable support used by this project for debugging. The options include:

    -
      -
    • Executables in the workspace from this SDK — shows all executables in the workspace built using the specified SDK. This is the default setting.
    • -
    • Executables built by this project — shows only the executables built by this project using the specified SDK
    • -
    • Executables selected below — shows only the executables chosen by the user. Initial list display uses the All Executables listing.
    • -
    • All executables (slows launch) — shows all the executables in the workspace regardless of which SDK created them. Selecting this option will slow down Carbide launches as the list is populated.
    • -
    Executables list Shows all the executables associated with this project.
    Add...Opens the Select an executable file dialog which can locate and select executable files and add them to the project's executables list.
    Select All Enables all the executables in the list for debugging.
    Unselect All Disables all the executables in the list from debugging.
    -

    Other references

    - - - - + + + + +Carbide Executables page + + + + +

    Executables page

    +

    The Executables page specifies the executables available to debug with your project based on the chosen rule. The Executables page gives you project level control over the executables associated with it. The page shows all the executables in the workspace or those imported into the Executables view from outside the workspace that can be debugged by this project. See the Executables view for information on controlling executables from the workspace.

    +

    +

    Figure 1 - Executables page (System TRK example)

    +
    Table 1. Executable page —items
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Load symbols for these executables and target them for debugging

    Select the rule which governs the executable support used by this project for debugging. The options include:

    +
      +
    • Executables in the workspace from this SDK — shows all executables in the workspace built using the specified SDK. This is the default setting.
    • +
    • Executables built by this project — shows only the executables built by this project using the specified SDK
    • +
    • Executables selected below — shows only the executables chosen by the user. Initial list display uses the All Executables listing.
    • +
    • All executables (slows launch) — shows all the executables in the workspace regardless of which SDK created them. Selecting this option will slow down Carbide launches as the list is populated.
    • +
    Executables list Shows all the executables associated with this project.
    Add...Opens the Select an executable file dialog which can locate and select executable files and add them to the project's executables list.
    Select All Enables all the executables in the list for debugging.
    Unselect All Disables all the executables in the list from debugging.
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_file_transfer.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_file_transfer.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_file_transfer.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,59 +1,59 @@ - - - - - - -Carbide File Transfer page - - - -

    File Transfer page

    -

    The File Transfer page displays an auto-populated list of files for System TRK that the IDE transfers to the target device at the start of each launch. For RnD device images, the target location for files is normally c:\sys\bin or another protected area. For production device images Application TRK does not support the transfer of files to c:\sys\bin or other protected areas.

    -

    Users can add, edit, or delete files in the list and sort by clicking on a column header. By default, any file added is automatically checked for downloading to the device. Users can uncheck a file to remove it from the download list without removing the file itself. System TRK users can use this panel to download any type of file, like bitmaps, HTML, sounds, and more, to the phone and applicable to Application TRK for transfering any files outside of the installation file.

    -

    -

    Figure 1. File Transfer page

    -
    Table 1. File Transfer page —items
    - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    File transfer list

    The File transfer list displays the project files that are moved to the target device for launch and debugging purposes. It contains these columns:

    -
      -
    • Enabled—a checkmark indicates that the IDE should transfer the specified file to the target directory. If unchecked, do not transfer the file.
    • -
    • File to transfer—the path and filename to a file on the host machine to be transfered
    • -
    • Target directory—the path to the target directory where transfered files are placed on the device.
    • -
    -
    -

    The target directories where files can be installed depends upon the type of device image you have on the device and which version of TRK you are using.

    -
      -
    • Application TRK - public folders only on production device images
    • -
    • System TRK - public and protected folders, like c:\sys\bin, on RnD device images
    • -
    -
    AddClick to add a file to the file transfer list.
    Edit...Click to edit the selected file in the file transfer list.
    RemoveClick to remove the selected file from the file transfer list.
    - -

    Other references

    - - -
     
    - + + + + + + +Carbide File Transfer page + + + +

    File Transfer page

    +

    The File Transfer page displays an auto-populated list of files for System TRK that the IDE transfers to the target device at the start of each launch. For RnD device images, the target location for files is normally c:\sys\bin or another protected area. For production device images Application TRK does not support the transfer of files to c:\sys\bin or other protected areas.

    +

    Users can add, edit, or delete files in the list and sort by clicking on a column header. By default, any file added is automatically checked for downloading to the device. Users can uncheck a file to remove it from the download list without removing the file itself. System TRK users can use this panel to download any type of file, like bitmaps, HTML, sounds, and more, to the phone and applicable to Application TRK for transfering any files outside of the installation file.

    +

    +

    Figure 1. File Transfer page

    +
    Table 1. File Transfer page —items
    + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    File transfer list

    The File transfer list displays the project files that are moved to the target device for launch and debugging purposes. It contains these columns:

    +
      +
    • Enabled—a checkmark indicates that the IDE should transfer the specified file to the target directory. If unchecked, do not transfer the file.
    • +
    • File to transfer—the path and filename to a file on the host machine to be transfered
    • +
    • Target directory—the path to the target directory where transfered files are placed on the device.
    • +
    +
    +

    The target directories where files can be installed depends upon the type of device image you have on the device and which version of TRK you are using.

    +
      +
    • Application TRK - public folders only on production device images
    • +
    • System TRK - public and protected folders, like c:\sys\bin, on RnD device images
    • +
    +
    AddClick to add a file to the file transfer list.
    Edit...Click to edit the selected file in the file transfer list.
    RemoveClick to remove the selected file from the file transfer list.
    + +

    Other references

    + + +
     
    + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_installation.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_installation.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_installation.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,59 +1,59 @@ - - - - - - -Installation page - - - -

    Installation page

    -

    The Installation page specifies the .sis file to install on the target device when using Application TRK. This is required when using the TRK debug agent with 9.x based SDK’s.

    -

    -

    Figure 1. Installation page

    -
    Table 1. Installation page —items
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation

    Installation file

    -

     

    Enter the complete path to the .sis or .pkg file to install on the target device or click Browse to use the standard file selection dialog.

    Download directory The directory on the target device to download the file into before installing it. The default directory value is C:\data\.
    Install each launch even if installer file has not changed Enable this option to force an update of the installed file even if no changes have been detected. This ensures a clean program install for each debug session.
    Do not show installer UI on the phone Use this option to specify if the installer UI on the target device is shown when installing the file. Disabling this option may require interaction with the installer UI on the target device, slowing down the install process. The default setting is on.
    Install to drive A list of common drives where files may be installed to. The default drive setting is C.
    Partial upgrade sis/sisx pathShows the path to the partial upgrade SIS file once it has been created.
    Open SIS Builder settings...Click to open the SIS Builder page of the Carbide Build Configurations properties panel where you can enable the partial upgrade feature for subsequent builds.
    - -

    Other references

    - - -

     

    - - + + + + + + +Installation page + + + +

    Installation page

    +

    The Installation page specifies the .sis file to install on the target device when using Application TRK. This is required when using the TRK debug agent with 9.x based SDK’s.

    +

    +

    Figure 1. Installation page

    +
    Table 1. Installation page —items
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation

    Installation file

    +

     

    Enter the complete path to the .sis or .pkg file to install on the target device or click Browse to use the standard file selection dialog.

    Download directory The directory on the target device to download the file into before installing it. The default directory value is C:\data\.
    Install each launch even if installer file has not changed Enable this option to force an update of the installed file even if no changes have been detected. This ensures a clean program install for each debug session.
    Do not show installer UI on the phone Use this option to specify if the installer UI on the target device is shown when installing the file. Disabling this option may require interaction with the installer UI on the target device, slowing down the install process. The default setting is on.
    Install to drive A list of common drives where files may be installed to. The default drive setting is C.
    Partial upgrade sis/sisx pathShows the path to the partial upgrade SIS file once it has been created.
    Open SIS Builder settings...Click to open the SIS Builder page of the Carbide Build Configurations properties panel where you can enable the partial upgrade feature for subsequent builds.
    + +

    Other references

    + + +

     

    + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_rom_image.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_rom_image.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_rom_image.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,70 +1,70 @@ - - - - - - -Carbide ROM Image page - - - -

    ROM Image page

    -

    Use the ROM Image page in a System TRK launch configuration to define startup options and ROM image download information.

    -

    -

    Figure 1 - ROM Image page in launch configuration

    -
    Table 4. Launch configuration window—ROM Image tab items
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Parse Rom Log FileCheck this option to parse the ROM log file.
    Symbian Rom Log FileEnter or browse to the Rom log file that is generated when the Symbian OS image is built. This is necessary for debugging any Symbian OS module.
    Symbian Epoc32 Directory

    Enter or browse to the epoc32 directory for the Symbian OS kit that is being targeted for debugging. This is necessary for the debugger to resolve the full paths for each module in the log file since the log file does not contain the full paths.

    Log unresolved modulesCheck this option to log unresolved modules. If the actual binary in the log file doesn’t exist on the PC, then a warning message will be logged in a Rom Log console window.
    Debug non-XIP executablesCheck this option to target non-XIP executables. This allows the debugger to target a non-XIP module whenever it’s loaded.
    Download Rom Image Check this box to enable downloading.
    Symbian Rom ImageEnter or browse to the Symbian OS image (.img file) that will be downloaded onto the target at the specified download address.
    Download Address (hex)

    Specify the address where the image is to be downloaded. This address is target-specific. The address should be in hexadecimal format with the 0x prefix.

    Same as start addressCheck this option to make the download address the same as the start address.
    Ask for download at the start of each debug sessionSelect this option to prompt you to download the image at the start of the debug session.
    -

    Other references

    - - -
     
    - + + + + + + +Carbide ROM Image page + + + +

    ROM Image page

    +

    Use the ROM Image page in a System TRK launch configuration to define startup options and ROM image download information.

    +

    +

    Figure 1 - ROM Image page in launch configuration

    +
    Table 4. Launch configuration window—ROM Image tab items
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Parse Rom Log FileCheck this option to parse the ROM log file.
    Symbian Rom Log FileEnter or browse to the Rom log file that is generated when the Symbian OS image is built. This is necessary for debugging any Symbian OS module.
    Symbian Epoc32 Directory

    Enter or browse to the epoc32 directory for the Symbian OS kit that is being targeted for debugging. This is necessary for the debugger to resolve the full paths for each module in the log file since the log file does not contain the full paths.

    Log unresolved modulesCheck this option to log unresolved modules. If the actual binary in the log file doesn’t exist on the PC, then a warning message will be logged in a Rom Log console window.
    Debug non-XIP executablesCheck this option to target non-XIP executables. This allows the debugger to target a non-XIP module whenever it’s loaded.
    Download Rom Image Check this box to enable downloading.
    Symbian Rom ImageEnter or browse to the Symbian OS image (.img file) that will be downloaded onto the target at the specified download address.
    Download Address (hex)

    Specify the address where the image is to be downloaded. This address is target-specific. The address should be in hexadecimal format with the 0x prefix.

    Same as start addressCheck this option to make the download address the same as the start address.
    Ask for download at the start of each debug sessionSelect this option to prompt you to download the image at the start of the debug session.
    +

    Other references

    + + +
     
    + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_rom_log.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_rom_log.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/page_rom_log.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,46 +1,46 @@ - - - - - -Carbide ROM Log page - - - -

    ROM Log page

    -

    Use the ROM Log page ina Sysem TRK launch configuration to specify where the ROM log file is stored and the Epoc32 directory.

    -

    -

    Figure 1. ROM Log page

    -
    Table 1. ROM Log page—items
    - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Parse Rom Log File Activate the Parse ROM Log File option and specify the information that the debugger needs in order to show detailed stack information, set breakpoints, and show source level debugging information for ROM images.
    Symbian Rom Log File In the Symbian Rom Log File text field, browse to or enter the full path and name of the log file that corresponds to the ROM image on the target device. This log file is generated by default when the ROM image is built.
    Symbian Epoc32 Directory

    Specifies the epoc32 directory in which the ROM image and log files are stored. Since the log file may not contain full paths to the ROM components on the host PC, you need to enter this epoc32 directory.

    -

    NOTE Always include the epoc32 folder in this path.

    Log unresolved modules

    Activate the Log unresolved modules option to have the debugger output a list of components from the specified ROMBUILD log file that do not have debugger symbolic information. The list is displayed in the debugger console window at the beginning of the debug session.

    -

    NOTE You cannot perform source-level debugging on components that do not include symbolic information.

    -

    Other references

    - - -
     
    - - + + + + + +Carbide ROM Log page + + + +

    ROM Log page

    +

    Use the ROM Log page ina Sysem TRK launch configuration to specify where the ROM log file is stored and the Epoc32 directory.

    +

    +

    Figure 1. ROM Log page

    +
    Table 1. ROM Log page—items
    + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Parse Rom Log File Activate the Parse ROM Log File option and specify the information that the debugger needs in order to show detailed stack information, set breakpoints, and show source level debugging information for ROM images.
    Symbian Rom Log File In the Symbian Rom Log File text field, browse to or enter the full path and name of the log file that corresponds to the ROM image on the target device. This log file is generated by default when the ROM image is built.
    Symbian Epoc32 Directory

    Specifies the epoc32 directory in which the ROM image and log files are stored. Since the log file may not contain full paths to the ROM components on the host PC, you need to enter this epoc32 directory.

    +

    NOTE Always include the epoc32 folder in this path.

    Log unresolved modules

    Activate the Log unresolved modules option to have the debugger output a list of components from the specified ROMBUILD log file that do not have debugger symbolic information. The list is displayed in the debugger console window at the beginning of the debug session.

    +

    NOTE You cannot perform source-level debugging on components that do not include symbolic information.

    +

    Other references

    + + +
     
    + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/pages_overview.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/pages_overview.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/pages_overview.htm Fri Apr 16 11:18:22 2010 -0500 @@ -20,9 +20,9 @@
  • ROM Image
  • ROM Log
  • x86 Exceptions
  • -
  • Source (standard CDT page)
  • +
  • Source (standard CDT page)
  • Common (standard CDT page)
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/run_mode.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/run_mode.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/run_mode.htm Fri Apr 16 11:18:22 2010 -0500 @@ -21,7 +21,7 @@
  • The File Transfer tab displays an auto-populated list of files that the IDE transfers to the target device at the start of each launch.
  • The Installation tab specifies the .sis file(s) to install on the target device.
  • The Executables tab allows you to specify which executables that you want to debug that are part of the project.
  • -
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • +
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • The Common tab (standard CDT page) defines general information about the launch configuration. You may choose to store the launch configuration in a specific file
  • Other references

    diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/stop_mode.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/stop_mode.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/stop_mode.htm Fri Apr 16 11:18:22 2010 -0500 @@ -19,7 +19,7 @@
  • The Debugger tab defines debug configurations, such as entry point to begin debugging and target options.
  • The ROM Image tab allows you to define startup options and ROM image download information.
  • The Executables tab allows you to specify which executables that you want to debug that are part of the project.
  • -
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • +
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • The Common tab (standard CDT page) defines general information about the launch configuration. You may choose to store the launch configuration in a specific file.
  • Other references

    diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/trace32.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/trace32.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/trace32.htm Fri Apr 16 11:18:22 2010 -0500 @@ -20,7 +20,7 @@
  • The Debugger tab defines debug configurations, such as entry point to begin debugging and target options.
  • The ROM Image tab allows you to define startup options and ROM image download information.
  • The Executables tab allows you to specify which executables that you want to debug that are part of the project.
  • -
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • +
  • The Source tab (standard CDT page) defines the location of source files used to display source when debugging an application. By default, these settings are derived from the associated project's build path. You may override these settings here.
  • The Common tab (standard CDT page) defines general information about the launch configuration. You may choose to store the launch configuration in a specific file.
  • Other references

    diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/projects/launch/wnd_debug_configuration.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/wnd_debug_configuration.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/projects/launch/wnd_debug_configuration.htm Fri Apr 16 11:18:22 2010 -0500 @@ -61,6 +61,6 @@
  • Launch Configuration Overview
  • Configuration Pages
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_01.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_01.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_01.htm Fri Apr 16 11:18:22 2010 -0500 @@ -27,6 +27,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_02.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_02.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_02.htm Fri Apr 16 11:18:22 2010 -0500 @@ -27,6 +27,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_03.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_03.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_03.htm Fri Apr 16 11:18:22 2010 -0500 @@ -46,6 +46,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_04.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_04.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_04.htm Fri Apr 16 11:18:22 2010 -0500 @@ -43,6 +43,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_05.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_05.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_05.htm Fri Apr 16 11:18:22 2010 -0500 @@ -28,6 +28,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_06.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_06.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_creating_projs_06.htm Fri Apr 16 11:18:22 2010 -0500 @@ -37,6 +37,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_01.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_01.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_01.htm Fri Apr 16 11:18:22 2010 -0500 @@ -23,6 +23,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_02.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_02.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_02.htm Fri Apr 16 11:18:22 2010 -0500 @@ -25,6 +25,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_03.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_03.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_03.htm Fri Apr 16 11:18:22 2010 -0500 @@ -35,6 +35,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_04.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_04.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_importing_projs_04.htm Fri Apr 16 11:18:22 2010 -0500 @@ -42,6 +42,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_overview.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_overview.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_overview.htm Fri Apr 16 11:18:22 2010 -0500 @@ -26,6 +26,6 @@
  • Qt SDK help — look in the qt_sdk_install/doc/html directory of the Qt SDK
  • Qt information — visit Forum Nokia Qt wiki topic for more information
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_perspectives.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_perspectives.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_perspectives.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,30 +1,30 @@ - - - - - - -Qt Projects Overview - - - -

    Qt Perspective

    -

    The Qt C/C++ perspective defines a set of common views that make developing Qt programs faster and easier. It is essentially the same as the Carbide C/C++ perspective except that the Symbian Project Navigator view is removed, and the following views added:

    -
      -
    • Qt C/C++ Action Editor
    • -
    • Qt C/C++ Object Inspector
    • -
    • Qt C/C++ Property Editor
    • -
    • Qt C/C++ Signal Slot Editor
    • -
    • Qt C/C++ Widget Box
    • -
    -

    See the Qt SDK documentation for more information on these views.

    -

    -

    Figure 1. Qt C/C++ perspective

    -

    The Qt perspective watches the .pro file associated with the project and will update the derived project bld.inf and .mmp files to match. You can control this behavior with the Run qmake when .pro file changes option in the Qt Properties panel.

    -

    Other references

    - - - - + + + + + + +Qt Projects Overview + + + +

    Qt Perspective

    +

    The Qt C/C++ perspective defines a set of common views that make developing Qt programs faster and easier. It is essentially the same as the Carbide C/C++ perspective except that the Symbian Project Navigator view is removed, and the following views added:

    +
      +
    • Qt C/C++ Action Editor
    • +
    • Qt C/C++ Object Inspector
    • +
    • Qt C/C++ Property Editor
    • +
    • Qt C/C++ Signal Slot Editor
    • +
    • Qt C/C++ Widget Box
    • +
    +

    See the Qt SDK documentation for more information on these views.

    +

    +

    Figure 1. Qt C/C++ perspective

    +

    The Qt perspective watches the .pro file associated with the project and will update the derived project bld.inf and .mmp files to match. You can control this behavior with the Run qmake when .pro file changes option in the Qt Properties panel.

    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_pref_panel.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_pref_panel.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_pref_panel.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,60 +1,60 @@ - - - - - - -Qt Preference Panel - - - -

    Qt Preference Panel

    -

    The Qt preference panel provides global settings for Qt-based projects. Use it to add, edit, remove, and assign the default Qt version for projects.

    -

    -

    Figure 1. Qt preference panel

    -

    The following commands appear on the toolbar within the Qt preference panel:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Qt VersionsShows a list of installed Qt versions installed and available for Qt projects.

    Add...

    Click Add to open the Add new Qt version dialog where you can specify a Qt SDK by name and location.

    -

    -

    Figure 2. Add new Qt version dialog

    Edit...

    Click Edit to open the Edit Qt Version dialog where you can modify the Qt SDK information for the selected Qt version.

    -

    -

    Figure 3. Edit Qt Version dialog

    RemoveClick Remove to delete the selected Qt SDK from the Qt version list.
    DefaultClick Default to identify the selected Qt SDK as the default SDK to use for Qt projects.
    Auto update QMAKESPEC when applying changesEnable to automatically update QMAKESPEC when any changes are made to a Qt version. The default setting is enabled.
    Auto update make command when applying changesEnable to automatically update make when any changes are made to a Qt version. The default setting is enabled.
    -

    Other references

    - - - - + + + + + + +Qt Preference Panel + + + +

    Qt Preference Panel

    +

    The Qt preference panel provides global settings for Qt-based projects. Use it to add, edit, remove, and assign the default Qt version for projects.

    +

    +

    Figure 1. Qt preference panel

    +

    The following commands appear on the toolbar within the Qt preference panel:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Qt VersionsShows a list of installed Qt versions installed and available for Qt projects.

    Add...

    Click Add to open the Add new Qt version dialog where you can specify a Qt SDK by name and location.

    +

    +

    Figure 2. Add new Qt version dialog

    Edit...

    Click Edit to open the Edit Qt Version dialog where you can modify the Qt SDK information for the selected Qt version.

    +

    +

    Figure 3. Edit Qt Version dialog

    RemoveClick Remove to delete the selected Qt SDK from the Qt version list.
    DefaultClick Default to identify the selected Qt SDK as the default SDK to use for Qt projects.
    Auto update QMAKESPEC when applying changesEnable to automatically update QMAKESPEC when any changes are made to a Qt version. The default setting is enabled.
    Auto update make command when applying changesEnable to automatically update make when any changes are made to a Qt version. The default setting is enabled.
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_project_properties.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_project_properties.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_project_properties.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,35 +1,35 @@ - - - - - - -Qt Project Properties - - - -

    Qt Project Properties

    -

    The Qt Properties panel provides project-level settings for Qt projects. Qmake will be invoked whenever the .pro file changes so that the bld.inf and .mmp file will always be in sync.

    -

    -

    Figure 1. Qt Properties panel

    - - - - - - - - - - - - - -
    ItemExplanation
    Use Qt versionSelect the Qt version to associate with this project. Choose Default to always use the default Qt version as set in the Qt preference panel or select from any Qt version listed.
    Run qmake when .pro file changesEnable to keep the Carbide project and .pro file in sync during development. Qmake will be invoked whenever the .pro file changes so that the bld.inf and .mmp file will always be in sync. The default setting is enabled.
    -

    Other references

    - - - - + + + + + + +Qt Project Properties + + + +

    Qt Project Properties

    +

    The Qt Properties panel provides project-level settings for Qt projects. Qmake will be invoked whenever the .pro file changes so that the bld.inf and .mmp file will always be in sync.

    +

    +

    Figure 1. Qt Properties panel

    + + + + + + + + + + + + + +
    ItemExplanation
    Use Qt versionSelect the Qt version to associate with this project. Choose Default to always use the default Qt version as set in the Qt preference panel or select from any Qt version listed.
    Run qmake when .pro file changesEnable to keep the Carbide project and .pro file in sync during development. Qmake will be invoked whenever the .pro file changes so that the bld.inf and .mmp file will always be in sync. The default setting is enabled.
    +

    Other references

    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_project_setup.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_project_setup.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/qt_help/qt_project_setup.htm Fri Apr 16 11:18:22 2010 -0500 @@ -30,6 +30,6 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/AIFEditor.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/AIFEditor.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/AIFEditor.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,98 +1,98 @@ - - -AIF Editor in AIF Definition File - - - -

    AIF Editor

    - -

    - The AIF Editor allows you to specify the Symbian OS - resource file and bitmaps that should be included in a Symbian OS application - information (AIF) file. Use of AIF files is restricted to using .bmp files and works for versions 2.x and later releases of the Symbian OS SDKs. For more information, see AIF File.

    -

    - The AIF Editor is shown when a new AIF file is created or an existing file is edited in the Resources group of the MMP editor's Sources tab. Refer to Creating an AIF File for more information.

    - -

    -
    Table 1. AIF Editor —Items
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Target File

    Specifies the filename of the compiled AIF file, relative to the target path. Click the untitled.aif button to set the target file based on the SDK and project name.

    Resource File Path Choose a resource file from the current project, browse the file system or enter the path. For relative paths use the Carbide project as the reference point, not the MMP file location.
    UpSelect an image in the list and click Up to move the selection one position up in the list.
    Down

    Select an image in the list and click Down to move the selection one position down in the list.

    Pair Image and Mask Select two adjacent unpaired BMP image entries in the list and click this button to combine the images together into image/mask pairs.
    Split Image and Mask Select a paired BMP image in the list and click this button to split the image into image and mask entries.
    Swap Image and Mask Select a paired BMP image in the list and click this button to swap the image and mask files and format information in paired image entries.
    Add From Project Click this button to open an Add Images from Project dialog to reference available images in the project.
    Add From FilesystemClick this button to open an Add Images From Filesystem dialog to locate and reference existing images in the filesystem or copy images to the project.
    RemoveSelect an image and click Remove to remove image entry from the list. This does not delete file from directory.
    Color depth Select the bit depth used to encode the image at build time.
    Mask depth

    Select the bit depth used to encode the mask at build time. Options include:

    -
      -
    • n/a - Do not apply mask depth to images
    • -
    • 1 - A 1-bit mask treats pixels as "on/off" bits, where black is opaque and white is transparent.
    • -
    • 8 - An 8-bit mask is treated as alpha values, where black is transparent and white is opaque.
    • -
    Color format Select Color to encode the image(s) as color or select Grayscale to encode the image(s) as grayscale.
    PreviewA preview of the image as it will appear at runtime.
    -

     

    -
    Related concepts
    - -
    Related tasks
    - - - - - + + +AIF Editor in AIF Definition File + + + +

    AIF Editor

    + +

    + The AIF Editor allows you to specify the Symbian OS + resource file and bitmaps that should be included in a Symbian OS application + information (AIF) file. Use of AIF files is restricted to using .bmp files and works for versions 2.x and later releases of the Symbian OS SDKs. For more information, see AIF File.

    +

    + The AIF Editor is shown when a new AIF file is created or an existing file is edited in the Resources group of the MMP editor's Sources tab. Refer to Creating an AIF File for more information.

    + +

    +
    Table 1. AIF Editor —Items
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Target File

    Specifies the filename of the compiled AIF file, relative to the target path. Click the untitled.aif button to set the target file based on the SDK and project name.

    Resource File Path Choose a resource file from the current project, browse the file system or enter the path. For relative paths use the Carbide project as the reference point, not the MMP file location.
    UpSelect an image in the list and click Up to move the selection one position up in the list.
    Down

    Select an image in the list and click Down to move the selection one position down in the list.

    Pair Image and Mask Select two adjacent unpaired BMP image entries in the list and click this button to combine the images together into image/mask pairs.
    Split Image and Mask Select a paired BMP image in the list and click this button to split the image into image and mask entries.
    Swap Image and Mask Select a paired BMP image in the list and click this button to swap the image and mask files and format information in paired image entries.
    Add From Project Click this button to open an Add Images from Project dialog to reference available images in the project.
    Add From FilesystemClick this button to open an Add Images From Filesystem dialog to locate and reference existing images in the filesystem or copy images to the project.
    RemoveSelect an image and click Remove to remove image entry from the list. This does not delete file from directory.
    Color depth Select the bit depth used to encode the image at build time.
    Mask depth

    Select the bit depth used to encode the mask at build time. Options include:

    +
      +
    • n/a - Do not apply mask depth to images
    • +
    • 1 - A 1-bit mask treats pixels as "on/off" bits, where black is opaque and white is transparent.
    • +
    • 8 - An 8-bit mask is treated as alpha values, where black is transparent and white is opaque.
    • +
    Color format Select Color to encode the image(s) as color or select Grayscale to encode the image(s) as grayscale.
    PreviewA preview of the image as it will appear at runtime.
    +

     

    +
    Related concepts
    + +
    Related tasks
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,80 +1,80 @@ - - -MMP Editor - - - -

    MMP Editor

    - -

    - The MMP Editor allows you to view and modify your project definitions. Changes made in the MMP editor are automatically written to the project's .MMP file. You can view the .mmp file by selecting the project_name.mmp tab located along the bottom of the MMP editor.

    -

    - The MMP Editor is shown when an MMP file is - opened from the Project Explorer, C/C++ Projects, or Symbian Project Navigator views. The MMP Editor is shown in Figure 1. MMP editor fields are validated for existing or correct entries. For example, if the UID 2 field is blank the label is highlighted in red. If an error exists in the mmp file, the line where the error occurs is marked and also displayed in the Problems view.

    -

    -

    Figure 1 - MMP Editor

    - - -
    NameFunction
    -

    - Target name

    -

    - Enter the name of the target file. -

    -

    - Target type -

    -

    - Select the type of target file from the dropdown list.

    -

    - Target path -

    -

    - Enter the path to the target file. -

    -

    - UID 2 -

    -

    UID 2 is a unique identifier number that identifies the type of interface that the project implements. The values are defined by Symbian:

    -
      -
    • For GUI applications, it is always 0x100039CE
    • -
    • For static interface DLLs, the UID 2 is always 0x1000008d
    • -
    • For polymorphic DLLs, the UID2 is defined by the framework which is being implemented
    • -
    -
    -

    - UID 3 -

    -

    - Application UID (or UID3) is used to uniquely identify the binary (EXE or DLL) within the system. The purpose of UID 3 is to prevent one executable from interfering the operation of another executable.

    -

    - Project definition -

    -

    - The Project definition group provides links to the Sources, Libraries, and Options windows. You can also select the Sources, Libraries, and Options tabs to open the related window.

    -

    - Common tasks -

    -

    - This group provides links to the User and System include path options located in the Options window. -

    -

    Any changes made to the MMP file either in Carbide or using an external editor are detected. If the build is for emulation, these changes are detected and used automatically.

    -

    For other build types like GCCE you are presented with the Modified MMP Files Detected dialog (Figure 2) and asked which build action to take for each MMP file that has changed. Set the build option for each listed MMP file and click OK.

    -

    -

    Figure 2 - Modified MMP Files Detected dialog

    -

    The options are identical to the workspace setting Default action to take when MMP files are modified option in the Build preference panel. Click the Configure Workspace Settings... to open the Build preference panel to set the default build options for the workspace. The options can also be modified at the project level in the Properties for <project> > Carbide Project Settings panel.

    -
    Related references
    - - - - - - - + + +MMP Editor + + + +

    MMP Editor

    + +

    + The MMP Editor allows you to view and modify your project definitions. Changes made in the MMP editor are automatically written to the project's .MMP file. You can view the .mmp file by selecting the project_name.mmp tab located along the bottom of the MMP editor.

    +

    + The MMP Editor is shown when an MMP file is + opened from the Project Explorer, C/C++ Projects, or Symbian Project Navigator views. The MMP Editor is shown in Figure 1. MMP editor fields are validated for existing or correct entries. For example, if the UID 2 field is blank the label is highlighted in red. If an error exists in the mmp file, the line where the error occurs is marked and also displayed in the Problems view.

    +

    +

    Figure 1 - MMP Editor

    + + +
    NameFunction
    +

    + Target name

    +

    + Enter the name of the target file. +

    +

    + Target type +

    +

    + Select the type of target file from the dropdown list.

    +

    + Target path +

    +

    + Enter the path to the target file. +

    +

    + UID 2 +

    +

    UID 2 is a unique identifier number that identifies the type of interface that the project implements. The values are defined by Symbian:

    +
      +
    • For GUI applications, it is always 0x100039CE
    • +
    • For static interface DLLs, the UID 2 is always 0x1000008d
    • +
    • For polymorphic DLLs, the UID2 is defined by the framework which is being implemented
    • +
    +
    +

    + UID 3 +

    +

    + Application UID (or UID3) is used to uniquely identify the binary (EXE or DLL) within the system. The purpose of UID 3 is to prevent one executable from interfering the operation of another executable.

    +

    + Project definition +

    +

    + The Project definition group provides links to the Sources, Libraries, and Options windows. You can also select the Sources, Libraries, and Options tabs to open the related window.

    +

    + Common tasks +

    +

    + This group provides links to the User and System include path options located in the Options window. +

    +

    Any changes made to the MMP file either in Carbide or using an external editor are detected. If the build is for emulation, these changes are detected and used automatically.

    +

    For other build types like GCCE you are presented with the Modified MMP Files Detected dialog (Figure 2) and asked which build action to take for each MMP file that has changed. Set the build option for each listed MMP file and click OK.

    +

    +

    Figure 2 - Modified MMP Files Detected dialog

    +

    The options are identical to the workspace setting Default action to take when MMP files are modified option in the Build preference panel. Click the Configure Workspace Settings... to open the Build preference panel to set the default build options for the workspace. The options can also be modified at the project level in the Properties for <project> > Carbide Project Settings panel.

    +
    Related references
    + + + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_libraries.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_libraries.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_libraries.html Fri Apr 16 11:18:22 2010 -0500 @@ -44,7 +44,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_mmp_tab.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_mmp_tab.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_mmp_tab.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,27 +1,27 @@ - - -MMP Editor MMP File - - - -

    MMP File Window

    - -

    - The MMP file tab in the MMP editor window shows the source text of the mmp file. Changes made directly in the mmp file are reflected in related tabs of the MMP editor and changes made in editor tabs are written to the mmp file. Errors are identified in red and markers are placed in mmp files at the locations errors exist.

    -

    -

    Figure 1 - MMP Editor MMP File

    -

    -
    Related references
    - - - - - - - + + +MMP Editor MMP File + + + +

    MMP File Window

    + +

    + The MMP file tab in the MMP editor window shows the source text of the mmp file. Changes made directly in the mmp file are reflected in related tabs of the MMP editor and changes made in editor tabs are written to the mmp file. Errors are identified in red and markers are placed in mmp files at the locations errors exist.

    +

    +

    Figure 1 - MMP Editor MMP File

    +

    +
    Related references
    + + + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_options.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_options.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_options.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,77 +1,77 @@ - - -MMP Editor Options - - - -

    MMP Editor Options Window

    - -

    - The MMP editor options window allows you to edit compiler, linker, and runtime settings. The MMP editor options window is shown in Figure 1.

    -

    -

    Figure 1 - MMP Editor Options window

    -

    - - - - - - - - - - - - -
    NameFunction
    -

    - Runtime

    -

    - This group allows you to define various runtime options.

    -

    Capabilities - Click the Choose... button to select Capabilities. A capability is an access token that corresponds to permission to access sensitive system resources. Platform security permits access to sensitive APIs according to capabilities. Capabilities are used to specify what functionality an application is trusted to use; they are allocated to the application at build time and are policed at run time. Once the capabilities are assigned to the application, they cannot be changed. Thus an application has a set of unalterable capabilities that describe what access the application has to the APIs.

    -

    There are three suggested ways to establish which capabilities an application requires.

    -
      -
    • The first method is initially to allocate capabilities based on the general operations that the application performs. For example, an instant messaging application would probably require NetworkServices to access the Internet and ReadUserData to read the user’s contacts.
    • -
    • The second method is to use the Symbian Developer Library, which lists the capabilities required by each API. Note that some APIs may be marked as “Dependent”, meaning that the need for the capability depends on the parameters being passed. For example, accessing a file in an application’s private data area requires no capabilities, but accessing a file in \sys\bin requires the AllFiles capability.
    • -
    • The third method is to run the application in the emulator, analyzing the debug file (in the system temporary directory) for capability violations. The output will state the API that caused the violation and what capability was expected.
    • -
    -

    Minimum heap size - Set the heap size that you need.

    -

    Maximum heap size - Set the heap size that you need.

    -

    Stack size - Set the stack size that you need.

    -

    Process priority - Select the process priority from the dropdown list.

    -

    Secure ID - Enter the Secure ID. The SID is used to determine which private directory a process can access. It is also used to identify the caller applications. An application's SID is defined within its .mmp file, and is used to uniquely identify the application. SID values are requested from the Symbian Signed Web site (www.symbiansigned.com). The Software Installer (SWI) is responsible for ensuring that SIDs are locally unique, i.e., that no two applications have the same SID value on a particular target device.

    -

    Vendor ID - Enter the Vendor ID. This ID uniquely identifies the source of the application. If an application needs a VID, it must be certified. Noncertified applications must use a VID of 0 (KNullUid), which is the value applied by default.

    -

    Enable debugging (Symbian OS 9.4+) - Activate to enable on-device debugging for Symbian OS 9.4 and later. When activated, the DEBUGGABLE_UDEBONLY flag is added to the project .MMP file.

    -

    Paging Mode (Symbian OS 9.3+) - specify the paging mode to: not specified, paged, or unpaged.

    -

    - Compiler Settings

    -

    - User includes - Use the Add, Edit, and Remove buttons to add, edit, or remove the paths to the user header files used to compile source files. Use the Up and Down buttons to arrange the list of paths.

    -

    System includes - Use the Add, Edit, and Remove buttons to add, edit, or remove the paths to the system header files used to compile source files. Use the Up and Down buttons to arrange the list of paths.

    -

    Macros - Use the Add, Edit, and Remove buttons to add, edit, or remove a macro identifier. Use the Up and Down buttons to arrange the list of macro identifiers.

    -

    Compiler options - Use the Add, Edit, and Remove buttons to add, edit, or remove compiler options. In the Edit Compiler Options dialog, select the tool chain (for example: ARMCC, CW, GCC, GCCE, or MSVC) and enter your custom options.

    -

    Linker options - Use the Add, Edit, and Remove buttons to add, edit, or remove linker options. In the Edit Linker Options dialog, select the tool chain (for example: ARMCC, CW, GCC, GCCE, or MSVC) and enter your custom options.

    -

    Per-variant include dependencies - Check this option to include dependencies for a specific variant when building a target. For example build a release variant with optimized code, a debug variant with debugging info and a profiling variant with timing hooks.

    -

    Disable optimizations in debug builds - Check this option to disable optimizations when building a debug version of your application. Since optimization changes the code created by the compiler, it is best to optimize your code after you have fully tested and debugged it. If a program works in a debug build, but fails in a release build, it is likely that one of the compiler optimizations is exposing a defect in your source code. To isolate the problem, you should disable selected optimizations for each source code file, until you locate the file and the optimization that is causing the problem.

    Linker

    Linker definition file - Select a linker definition file or click Browse... to locate a definition file.

    -

    Export unfrozen - Check this option to tell the build process that exports are not yet frozen.

    -

    Don't export library - Check this option to not export a copy of the library.

    -

    No strict .def file - Check this option to specify no strict linker definition file.

    -

    Compress target executable - Check this option to compress the target executable.

    -

    Link as internal name - Specify an internal name.

    -

    Win32 base address - Specify the Win32 base address.

    Kernel

    ASSP ABI - Check this option to build the ASSP application binary interface.

    -

    ASSP exports - Check this option to enable ASSP exports.

    -
    Related references
    - - - - - - - + + +MMP Editor Options + + + +

    MMP Editor Options Window

    + +

    + The MMP editor options window allows you to edit compiler, linker, and runtime settings. The MMP editor options window is shown in Figure 1.

    +

    +

    Figure 1 - MMP Editor Options window

    +

    + + + + + + + + + + + + +
    NameFunction
    +

    + Runtime

    +

    + This group allows you to define various runtime options.

    +

    Capabilities - Click the Choose... button to select Capabilities. A capability is an access token that corresponds to permission to access sensitive system resources. Platform security permits access to sensitive APIs according to capabilities. Capabilities are used to specify what functionality an application is trusted to use; they are allocated to the application at build time and are policed at run time. Once the capabilities are assigned to the application, they cannot be changed. Thus an application has a set of unalterable capabilities that describe what access the application has to the APIs.

    +

    There are three suggested ways to establish which capabilities an application requires.

    +
      +
    • The first method is initially to allocate capabilities based on the general operations that the application performs. For example, an instant messaging application would probably require NetworkServices to access the Internet and ReadUserData to read the user’s contacts.
    • +
    • The second method is to use the Symbian Developer Library, which lists the capabilities required by each API. Note that some APIs may be marked as “Dependent”, meaning that the need for the capability depends on the parameters being passed. For example, accessing a file in an application’s private data area requires no capabilities, but accessing a file in \sys\bin requires the AllFiles capability.
    • +
    • The third method is to run the application in the emulator, analyzing the debug file (in the system temporary directory) for capability violations. The output will state the API that caused the violation and what capability was expected.
    • +
    +

    Minimum heap size - Set the heap size that you need.

    +

    Maximum heap size - Set the heap size that you need.

    +

    Stack size - Set the stack size that you need.

    +

    Process priority - Select the process priority from the dropdown list.

    +

    Secure ID - Enter the Secure ID. The SID is used to determine which private directory a process can access. It is also used to identify the caller applications. An application's SID is defined within its .mmp file, and is used to uniquely identify the application. SID values are requested from the Symbian Signed Web site (www.symbiansigned.com). The Software Installer (SWI) is responsible for ensuring that SIDs are locally unique, i.e., that no two applications have the same SID value on a particular target device.

    +

    Vendor ID - Enter the Vendor ID. This ID uniquely identifies the source of the application. If an application needs a VID, it must be certified. Noncertified applications must use a VID of 0 (KNullUid), which is the value applied by default.

    +

    Enable debugging (Symbian OS 9.4+) - Activate to enable on-device debugging for Symbian OS 9.4 and later. When activated, the DEBUGGABLE_UDEBONLY flag is added to the project .MMP file.

    +

    Paging Mode (Symbian OS 9.3+) - specify the paging mode to: not specified, paged, or unpaged.

    +

    + Compiler Settings

    +

    + User includes - Use the Add, Edit, and Remove buttons to add, edit, or remove the paths to the user header files used to compile source files. Use the Up and Down buttons to arrange the list of paths.

    +

    System includes - Use the Add, Edit, and Remove buttons to add, edit, or remove the paths to the system header files used to compile source files. Use the Up and Down buttons to arrange the list of paths.

    +

    Macros - Use the Add, Edit, and Remove buttons to add, edit, or remove a macro identifier. Use the Up and Down buttons to arrange the list of macro identifiers.

    +

    Compiler options - Use the Add, Edit, and Remove buttons to add, edit, or remove compiler options. In the Edit Compiler Options dialog, select the tool chain (for example: ARMCC, CW, GCC, GCCE, or MSVC) and enter your custom options.

    +

    Linker options - Use the Add, Edit, and Remove buttons to add, edit, or remove linker options. In the Edit Linker Options dialog, select the tool chain (for example: ARMCC, CW, GCC, GCCE, or MSVC) and enter your custom options.

    +

    Per-variant include dependencies - Check this option to include dependencies for a specific variant when building a target. For example build a release variant with optimized code, a debug variant with debugging info and a profiling variant with timing hooks.

    +

    Disable optimizations in debug builds - Check this option to disable optimizations when building a debug version of your application. Since optimization changes the code created by the compiler, it is best to optimize your code after you have fully tested and debugged it. If a program works in a debug build, but fails in a release build, it is likely that one of the compiler optimizations is exposing a defect in your source code. To isolate the problem, you should disable selected optimizations for each source code file, until you locate the file and the optimization that is causing the problem.

    Linker

    Linker definition file - Select a linker definition file or click Browse... to locate a definition file.

    +

    Export unfrozen - Check this option to tell the build process that exports are not yet frozen.

    +

    Don't export library - Check this option to not export a copy of the library.

    +

    No strict .def file - Check this option to specify no strict linker definition file.

    +

    Compress target executable - Check this option to compress the target executable.

    +

    Link as internal name - Specify an internal name.

    +

    Win32 base address - Specify the Win32 base address.

    Kernel

    ASSP ABI - Check this option to build the ASSP application binary interface.

    +

    ASSP exports - Check this option to enable ASSP exports.

    +
    Related references
    + + + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_resource_block.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_resource_block.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_resource_block.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,60 +1,60 @@ - - -MMP Editor Resource Block - - - -

    MMP Editor Resource Block

    - -

    - The MMP editor resource block dialog allows you to add or remove resource files to your project. The Edit Resource Block dialog is shown in Figure 1. You can add, remove or edit resource files to be included with your project.

    -

    -

    Figure 1 - MMP Editor Resource Block Dialog

    -

    - - - - - - - - - - - - - - - - - - - - - - -
    NameFunction
    -

    - Project RSS files

    -

    - Select or browse to the resource file to be included in all builds.

    -

    - RSS file path

    -

    - Enter the path to the resource file.

    Target file nameEnter the target file name.
    Target file pathSelect the target file path, such as the executable directory or /resource directory on the target device.
    UID 2Enter the unique identifier. UID2 may need to be a specific value for some kinds of DLLs, especially those used by plug-in frameworks.
    UID 3

    Enter the unique identifier. In the current implementation of platform security, UID3 is used as the Secure ID if SECUREID is not specified in the .mmp file. If it is specified, UID3 will be used to identify the application as its original purpose.

    -

    However, the SID is used to determine which private directory a process can access as well as to identify the caller applications, whereas the UID is used to uniquely identify an application. It is theoretically possible that these two identifiers could have different values, but to avoid confusion Symbian recommends that a SECUREID not be specified in the application's MMP file; UID3 should always be specified instead.

    Generate header fileCheck this option to generate a header file for the resource files.
    -
    Related references
    - - - - - - - + + +MMP Editor Resource Block + + + +

    MMP Editor Resource Block

    + +

    + The MMP editor resource block dialog allows you to add or remove resource files to your project. The Edit Resource Block dialog is shown in Figure 1. You can add, remove or edit resource files to be included with your project.

    +

    +

    Figure 1 - MMP Editor Resource Block Dialog

    +

    + + + + + + + + + + + + + + + + + + + + + + +
    NameFunction
    +

    + Project RSS files

    +

    + Select or browse to the resource file to be included in all builds.

    +

    + RSS file path

    +

    + Enter the path to the resource file.

    Target file nameEnter the target file name.
    Target file pathSelect the target file path, such as the executable directory or /resource directory on the target device.
    UID 2Enter the unique identifier. UID2 may need to be a specific value for some kinds of DLLs, especially those used by plug-in frameworks.
    UID 3

    Enter the unique identifier. In the current implementation of platform security, UID3 is used as the Secure ID if SECUREID is not specified in the .mmp file. If it is specified, UID3 will be used to identify the application as its original purpose.

    +

    However, the SID is used to determine which private directory a process can access as well as to identify the caller applications, whereas the UID is used to uniquely identify an application. It is theoretically possible that these two identifiers could have different values, but to avoid confusion Symbian recommends that a SECUREID not be specified in the application's MMP file; UID3 should always be specified instead.

    Generate header fileCheck this option to generate a header file for the resource files.
    +
    Related references
    + + + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_sources.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_sources.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_Editor_sources.html Fri Apr 16 11:18:22 2010 -0500 @@ -36,7 +36,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_selection.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_selection.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MMP_selection.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,18 +1,18 @@ - - -MMP Selection - - - -

    MMP Selection

    - -

    - The MMP Selection dialog displays a list of mmp project files that your source files should be added to for debugging specific components.

    -

    -

    Figure 1 - MMP Selection Dialog

    -

    - - - - + + +MMP Selection + + + +

    MMP Selection

    + +

    + The MMP Selection dialog displays a list of mmp project files that your source files should be added to for debugging specific components.

    +

    +

    Figure 1 - MMP Selection Dialog

    +

    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/MenusToc.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/MenusToc.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/MenusToc.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,23 +1,23 @@ - -References - - - -

    References

    -

    The topics include:

    - - - - - + +References + + + +

    References

    +

    The topics include:

    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/NewClassWizard.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/NewClassWizard.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/NewClassWizard.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,101 +1,101 @@ - -New Class Wizard in Reference - - - -
    - - - -
    -

    New Class Wizard

    -
    - -

    - The New Class wizard allows a developer to add a new C++ class to - existing or new header and source files. This wizard is supplied by the C/C++ - Development Toolkit (CDT), and is not customised for Symbian OS development. - However, as it is not currently described in the C/C++ Development Toolkit User - Guide, you may find this extra information about it useful.

    -

    See Adding a Symbian OS Class for information on adding Symbian-based classes to a project.

    -

    - To invoke the wizard, click File > New > Class from the menu bar. The New Class wizard appears.

    -
    - -

    - - -
    - - - - - - -
    NameFunction
    -

    - Source Folder -

    -

    - Specifies the source folder where the header and source files are - to be created. -

    -

    - Namespace -

    -

    - Select the checkbox to specify whether you want to add the new - class under a namespace or not. If yes, click Browse to select an existing - namespace or type a new namespace. -

    -

    - Class Name -

    -

    - Specifies the name of new C++ class. -

    -

    - Base Classes -

    -

    - Lists all the base types from which the new C++ class is derived. -

    -

    - Method Stubs -

    -

    - Specifies whether to generate stubs for constructor and destructors - of the class. -

    -

    - Use Default -

    -

    - Specifies whether the class declaration and definition are added to - default header and source files or not. -

    -

    - Header -

    -

    - Specifies the header file which contains the class declaration. -

    -

    - Source -

    -

    - Specifies the source file which contains the class definition. -

    Use Default Disable to select different Header and Source files to use as the template for the new class.
    - -
    -
    Related tasks
    - - - - - + +New Class Wizard in Reference + + + +
    + + + +
    +

    New Class Wizard

    +
    + +

    + The New Class wizard allows a developer to add a new C++ class to + existing or new header and source files. This wizard is supplied by the C/C++ + Development Toolkit (CDT), and is not customised for Symbian OS development. + However, as it is not currently described in the C/C++ Development Toolkit User + Guide, you may find this extra information about it useful.

    +

    See Adding a Symbian OS Class for information on adding Symbian-based classes to a project.

    +

    + To invoke the wizard, click File > New > Class from the menu bar. The New Class wizard appears.

    +
    + +

    + + +
    + + + + + + +
    NameFunction
    +

    + Source Folder +

    +

    + Specifies the source folder where the header and source files are + to be created. +

    +

    + Namespace +

    +

    + Select the checkbox to specify whether you want to add the new + class under a namespace or not. If yes, click Browse to select an existing + namespace or type a new namespace. +

    +

    + Class Name +

    +

    + Specifies the name of new C++ class. +

    +

    + Base Classes +

    +

    + Lists all the base types from which the new C++ class is derived. +

    +

    + Method Stubs +

    +

    + Specifies whether to generate stubs for constructor and destructors + of the class. +

    +

    + Use Default +

    +

    + Specifies whether the class declaration and definition are added to + default header and source files or not. +

    +

    + Header +

    +

    + Specifies the header file which contains the class declaration. +

    +

    + Source +

    +

    + Specifies the source file which contains the class definition. +

    Use Default Disable to select different Header and Source files to use as the template for the new class.
    + +
    +
    Related tasks
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_build_config.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_build_config.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_build_config.htm Fri Apr 16 11:18:22 2010 -0500 @@ -60,7 +60,7 @@
  • Building Projects
  • Creating a .PKG file
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_build_config_args.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_build_config_args.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_build_config_args.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,44 +1,44 @@ - - - - - - - -Arguments page - - - -

    Arguments page

    -

    The Arguments pane allows you to add arguments to the bldmake and abld processes for the project. Carbide passes the arguments entered here to the command line tools during the build process. By default, the majority of arguments are left blank.

    -

    NOTE Always refer to the Symbian Developer Library to learn which arguments are supported by the project's SDK.

    -

    -

    Figure 1 - Arguments pane

    -
    Table 1 Environment variable items
    - - - - - - - - - - - - - -
    ItemExplanation
    BldMake Arguments

    Enter arguments into the various text boxes to customize the bldmake process. See the Symbian OS documentation for a complete list of arguments for these commands.

    -
    Abld Arguments

    Enter arguments into the various text boxes to customize the abld process. See the Symbian OS documentation for a complete list of arguments for these commands.

    -

    NOTE To create a SYM file for UREL builds, enter -debug into the makefile text box in the Abld Arguments group.

    -
    Other references
    - - - - + + + + + + + +Arguments page + + + +

    Arguments page

    +

    The Arguments pane allows you to add arguments to the bldmake and abld processes for the project. Carbide passes the arguments entered here to the command line tools during the build process. By default, the majority of arguments are left blank.

    +

    NOTE Always refer to the Symbian Developer Library to learn which arguments are supported by the project's SDK.

    +

    +

    Figure 1 - Arguments pane

    +
    Table 1 Environment variable items
    + + + + + + + + + + + + + +
    ItemExplanation
    BldMake Arguments

    Enter arguments into the various text boxes to customize the bldmake process. See the Symbian OS documentation for a complete list of arguments for these commands.

    +
    Abld Arguments

    Enter arguments into the various text boxes to customize the abld process. See the Symbian OS documentation for a complete list of arguments for these commands.

    +

    NOTE To create a SYM file for UREL builds, enter -debug into the makefile text box in the Abld Arguments group.

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_macro_settings.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_macro_settings.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_macro_settings.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,43 +1,43 @@ - - - - - - -Carbide Macro Settings - - - -

    Carbide Macro Settings

    -

    The Carbide Macro Settings properties page allows you to specify a file containing macros that CDT will use when parsing the source code.

    -

    -

    Figure 1 - Carbide Macros Settings panel

    -
    Table 1 Carbide Macros Settings items
    - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Macro File Enter the macro file path and name into the text box or click Browse to locate a macro file.
    Use preprocessor symbols from mmp MACRO statements for parsers Your code will be parsed by the CDT indexer. Enable this option to use MMP macros during parsing.
    Show paths and symbols page...

    Click to open the Paths and Symbols page under Carbide Build Configuration.

    -
    Related references
    - - - - + + + + + + +Carbide Macro Settings + + + +

    Carbide Macro Settings

    +

    The Carbide Macro Settings properties page allows you to specify a file containing macros that CDT will use when parsing the source code.

    +

    +

    Figure 1 - Carbide Macros Settings panel

    +
    Table 1 Carbide Macros Settings items
    + + + + + + + + + + + + + + + + + +
    ItemExplanation
    Macro File Enter the macro file path and name into the text box or click Browse to locate a macro file.
    Use preprocessor symbols from mmp MACRO statements for parsers Your code will be parsed by the CDT indexer. Enable this option to use MMP macros during parsing.
    Show paths and symbols page...

    Click to open the Paths and Symbols page under Carbide Build Configuration.

    +
    Related references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_pkg_config.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_pkg_config.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/build_properties/pane_pkg_config.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,53 +1,53 @@ - - - - - - -PKG File Settings - - - -

    Set PKG File for Build Configuration

    -

    The Set PKG File for Build Configuration dialog appears when an Application TRK build configuration does not include a PKG file. Use it to assign a PKG file to the project's current build configuration that will be used to create a project's SIS installation file. If you define a launch configuration used for on-device debugging with the TRK debug agent, you will need to specify a PKG file for the project. A PKG file primarily provides a list of program and resource files to install on the device.

    -

    -

    Figure 1 - Set PKG File for Build Configuration

    -
    Table 1 Items
    - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    PKG File Choose a PKG file relative to the project's file system or click Browse to locate a PKG file that will be used to create the SIS file. The default option is “none”, which indicates to not build a PKG file.
    Signed SIS File NameFinal output signed file name. Default is PKG filename with ‘sisx’ extension.
    Certificate

    Enter or browse to certificate.

    -

    NOTE On Symbian OS 9.x builds, if the key/cert pair are not defined, makekeys will be called and temporary ones will be generated for you to "self-sign" the application. Self-signed applications should be in the - 0xE0000000-0xEFFFFFFF range.

    Key

    Enter or browse to key.

    -
    -
    Related tasks
    - -
    Related reference
    - - - - + + + + + + +PKG File Settings + + + +

    Set PKG File for Build Configuration

    +

    The Set PKG File for Build Configuration dialog appears when an Application TRK build configuration does not include a PKG file. Use it to assign a PKG file to the project's current build configuration that will be used to create a project's SIS installation file. If you define a launch configuration used for on-device debugging with the TRK debug agent, you will need to specify a PKG file for the project. A PKG file primarily provides a list of program and resource files to install on the device.

    +

    +

    Figure 1 - Set PKG File for Build Configuration

    +
    Table 1 Items
    + + + + + + + + + + + + + + + + + + + + + +
    ItemExplanation
    PKG File Choose a PKG file relative to the project's file system or click Browse to locate a PKG file that will be used to create the SIS file. The default option is “none”, which indicates to not build a PKG file.
    Signed SIS File NameFinal output signed file name. Default is PKG filename with ‘sisx’ extension.
    Certificate

    Enter or browse to certificate.

    +

    NOTE On Symbian OS 9.x builds, if the key/cert pair are not defined, makekeys will be called and temporary ones will be generated for you to "self-sign" the application. Self-signed applications should be in the + 0xE0000000-0xEFFFFFFF range.

    Key

    Enter or browse to key.

    +
    +
    Related tasks
    + +
    Related reference
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/leavescan_pref.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/leavescan_pref.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/leavescan_pref.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,36 +1,36 @@ - -Leavescan Preferences - - - - -

    Leavescan Preferences

    -

    Use the -Leavescan Preferences page in the Preferences window to define the location where the leavescan.exe program exists on the file system. Symbian OS has a standard convention for functions that may Leave. Therefore, any function that Leaves, or calls a function that Leaves (other than in a TRAP harness), must have a name ending in "L". Leavescan verifies that your code satisfies this convention.

    -

    Leavescan preferences panel

    -

    Figure 1. Leavescan preference page

    -
    Table 1. Leavescan Preferences —items
    -
    - - - - - - - - - - -
    NameFunction
    Leavescan Directory

    Enter or Browse to the directory where leavescan.exe resides. Leavescan.exe is normally found in the ${EPOCROOT}\epoc32\tools directory.

    -

    NOTE The path to the Leavescan directory should not contain space characters.

    Very noisy output

    If enabled, the -N option is passed to leavescan.exe and produces verbose output. If unchecked, minimal output is produced.

    -
    -
    Related Tasks
    - - - - - + +Leavescan Preferences + + + + +

    Leavescan Preferences

    +

    Use the +Leavescan Preferences page in the Preferences window to define the location where the leavescan.exe program exists on the file system. Symbian OS has a standard convention for functions that may Leave. Therefore, any function that Leaves, or calls a function that Leaves (other than in a TRAP harness), must have a name ending in "L". Leavescan verifies that your code satisfies this convention.

    +

    Leavescan preferences panel

    +

    Figure 1. Leavescan preference page

    +
    Table 1. Leavescan Preferences —items
    +
    + + + + + + + + + + +
    NameFunction
    Leavescan Directory

    Enter or Browse to the directory where leavescan.exe resides. Leavescan.exe is normally found in the ${EPOCROOT}\epoc32\tools directory.

    +

    NOTE The path to the Leavescan directory should not contain space characters.

    Very noisy output

    If enabled, the -N option is passed to leavescan.exe and produces verbose output. If unchecked, minimal output is produced.

    +
    +
    Related Tasks
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/memory_rendering_options.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/memory_rendering_options.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/memory_rendering_options.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,85 +1,85 @@ - - - - - - -Memory Rendering Options - - - -

    Memory Rendering Options

    -

    You can configure the Memory Rendering pane to display data in the memory location in a variety of ways. The following options are visible on the context menu for the Memory Rendering pane.

    -

    Right-click to select an option shown in Table 1.

    -
    Table 1. Memory Rendering context menu options
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    OptionExplanation
    Panes

    Specifies how the memory space is rendered in the pane:

    -
      -
    • Address
    • -
    • Binary
    • -
    • Text
    • -
    Endian

    Choose one of the following:

    -
      -
    • Big
    • -
    • Little
    • -
    Text

    Choose one of the following:

    -
      -
    • ISO-8859-1
    • -
    • US-ASCII
    • -
    • UTF-8
    • -
    Cell size

    Specifies the byte size of the memory rendering. The choices include:

    -
      -
    • 1 byte
    • -
    • 2 bytes
    • -
    • 4 bytes
    • -
    • 8 bytes
    • -
    Radix

    Choose one of the following:

    -
      -
    • Hex
    • -
    • Decimal Signed
    • -
    • Decimal Unsigned
    • -
    • Octal
    • -
    • Binary
    • -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related References
    - - - - + + + + + + +Memory Rendering Options + + + +

    Memory Rendering Options

    +

    You can configure the Memory Rendering pane to display data in the memory location in a variety of ways. The following options are visible on the context menu for the Memory Rendering pane.

    +

    Right-click to select an option shown in Table 1.

    +
    Table 1. Memory Rendering context menu options
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    OptionExplanation
    Panes

    Specifies how the memory space is rendered in the pane:

    +
      +
    • Address
    • +
    • Binary
    • +
    • Text
    • +
    Endian

    Choose one of the following:

    +
      +
    • Big
    • +
    • Little
    • +
    Text

    Choose one of the following:

    +
      +
    • ISO-8859-1
    • +
    • US-ASCII
    • +
    • UTF-8
    • +
    Cell size

    Specifies the byte size of the memory rendering. The choices include:

    +
      +
    • 1 byte
    • +
    • 2 bytes
    • +
    • 4 bytes
    • +
    • 8 bytes
    • +
    Radix

    Choose one of the following:

    +
      +
    • Hex
    • +
    • Decimal Signed
    • +
    • Decimal Unsigned
    • +
    • Octal
    • +
    • Binary
    • +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related References
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_all_targets.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_all_targets.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_all_targets.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,22 +1,22 @@ - - - - - - -Build All Configurations - - - -

    Build All Configurations

    -

    Select a project in the Project Explorer, C/C++ Projects, or Symbian Project Navigator view and use the Project menu or right-click to display the context menu. Select Build All Configurations (CTRL+ALT+A) to build all target build configurations enabled for the current project.

    -

    -

    Figure 1. Build All Configurations context menu

    -
    Other references
    - - - - + + + + + + +Build All Configurations + + + +

    Build All Configurations

    +

    Select a project in the Project Explorer, C/C++ Projects, or Symbian Project Navigator view and use the Project menu or right-click to display the context menu. Select Build All Configurations (CTRL+ALT+A) to build all target build configurations enabled for the current project.

    +

    +

    Figure 1. Build All Configurations context menu

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_pkg_file.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_pkg_file.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_pkg_file.htm Fri Apr 16 11:18:22 2010 -0500 @@ -19,7 +19,7 @@
  • Setting an Active Configuration
  • Carbide Build Configurations
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_symbian_comp.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_symbian_comp.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/build_symbian_comp.htm Fri Apr 16 11:18:22 2010 -0500 @@ -17,7 +17,7 @@
  • Carbide Menus
  • Clean Symbian Component
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/clean_symbian_comp.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/clean_symbian_comp.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/clean_symbian_comp.htm Fri Apr 16 11:18:22 2010 -0500 @@ -17,7 +17,7 @@
  • Carbide Menus
  • Build Symbian Component
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/compile_source.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/compile_source.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/compile_source.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,22 +1,22 @@ - - - - - - -Compile - - - -

    Compile

    -

    Select a .c, .cpp, or .cia source file in the Project Explorer, C/C++ Projects, or Symbian Project Navigator view, right-click the file and choose Compile (CTRL+ALT+C) to compile it. This is also available from within a C/C++ editor view. You can use the shift or control key to select one or more of these file types across the same or different projects. The build progress is displayed in the Console view.

    -

    -

    Figure 1 - Right-click to compile a source file

    -
    Other references
    - - - - - + + + + + + +Compile + + + +

    Compile

    +

    Select a .c, .cpp, or .cia source file in the Project Explorer, C/C++ Projects, or Symbian Project Navigator view, right-click the file and choose Compile (CTRL+ALT+C) to compile it. This is also available from within a C/C++ editor view. You can use the shift or control key to select one or more of these file types across the same or different projects. The build progress is displayed in the Console view.

    +

    +

    Figure 1 - Right-click to compile a source file

    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/freeze_exports.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/freeze_exports.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/freeze_exports.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,23 +1,23 @@ - - - - - - -Freeze Exports - - - -

    Freeze Exports

    -

    Right click a project in the Project Explorer, or Symbian Project Navigator view, then choose Freeze Exports. This command calls the appropriate abld command and a .def file is generated. This enables released versions of DLLs to freeze their exports, ensuring backward compatibility of a library.

    -

    -

    Figure 1. Choosing Freeze Exports on a project

    -
    Other references
    - - - - - + + + + + + +Freeze Exports + + + +

    Freeze Exports

    +

    Right click a project in the Project Explorer, or Symbian Project Navigator view, then choose Freeze Exports. This command calls the appropriate abld command and a .def file is generated. This enables released versions of DLLs to freeze their exports, ensuring backward compatibility of a library.

    +

    +

    Figure 1. Choosing Freeze Exports on a project

    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/freeze_symbian_comp.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/freeze_symbian_comp.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/freeze_symbian_comp.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,23 +1,23 @@ - - - - - - -Freeze Symbian Component - - - -

    Freeze Symbian Component

    -

    Right-click a Symbian OS MMP file in the Project Explorer, or Symbian Project Navigator view, then choose Freeze Symbian Component (CTRL+ALT+F). This command only freezes the selected MMP file and not the entire project.

    -

    -

    Figure 1. Choosing Freeze Symbian Component on a file

    -
    Other references
    - - - - - + + + + + + +Freeze Symbian Component + + + +

    Freeze Symbian Component

    +

    Right-click a Symbian OS MMP file in the Project Explorer, or Symbian Project Navigator view, then choose Freeze Symbian Component (CTRL+ALT+F). This command only freezes the selected MMP file and not the entire project.

    +

    +

    Figure 1. Choosing Freeze Symbian Component on a file

    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/hardware_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/hardware_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/hardware_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,30 +1,30 @@ - - - - - - -Toggle HW Breakpoint - - - -

    Toggle HW Breakpoint

    -

    Use the Toggle HW Breakpoint command in stop-mode debugging to set or unset a hardware breakpoint on a device that supports hardware breakpoints. The debugger treats hardware breakpoints exactly like software breakpoints for purposes of debugging. If the device does not support hardware breakpoints, toggling the command will do nothing.

    -
    -

    Setting a Hardware Breakpoint in an Editor View

    -
      -
    • Right-click in the marker bar and select Toggle HW Breakpoint
    • -
    -
      -

      The active breakpoint dot appears () in the marker bar. If the breakpoint is resolved during the debug session, the debugger halts program execution at the line with the resolved breakpoint ().

      -
    -
    -
    Other references
    - - - - - + + + + + + +Toggle HW Breakpoint + + + +

    Toggle HW Breakpoint

    +

    Use the Toggle HW Breakpoint command in stop-mode debugging to set or unset a hardware breakpoint on a device that supports hardware breakpoints. The debugger treats hardware breakpoints exactly like software breakpoints for purposes of debugging. If the device does not support hardware breakpoints, toggling the command will do nothing.

    +
    +

    Setting a Hardware Breakpoint in an Editor View

    +
      +
    • Right-click in the marker bar and select Toggle HW Breakpoint
    • +
    +
      +

      The active breakpoint dot appears () in the marker bar. If the breakpoint is resolved during the debug session, the debugger halts program execution at the line with the resolved breakpoint ().

      +
    +
    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/menus.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/menus.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/menus.htm Fri Apr 16 11:18:22 2010 -0500 @@ -31,7 +31,7 @@
  • Symbian OS MMP File
  • Toggle HW Breakpoint
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_class.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_class.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_class.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,20 +1,20 @@ - - - - - - -Symbian OS C++ Class - - - -

    Symbian OS C++ Class

    -

    Click File > New > Symbian OS C++ Class to launch the Symbian OS C++ Class wizard.

    -
    Other references
    - - - - + + + + + + +Symbian OS C++ Class + + + +

    Symbian OS C++ Class

    +

    Click File > New > Symbian OS C++ Class to launch the Symbian OS C++ Class wizard.

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_mmp_file.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_mmp_file.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_mmp_file.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,22 +1,22 @@ - - - - - - -Symbian OS MMP File - - - -

    Symbian OS MMP File

    -

    Click File > New > Symbian OS MMP File to launch the Symbian OS MMP File wizard.

    -
    Other references
    - - - - + + + + + + +Symbian OS MMP File + + + +

    Symbian OS MMP File

    +

    Click File > New > Symbian OS MMP File to launch the Symbian OS MMP File wizard.

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_project.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_project.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/new_symbian_project.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,20 +1,20 @@ - - - - - - -Symbian OS C++ Project - - - -

    Symbian OS C++ Project

    -

    Click File > New > New Symbian OS C++ Project to launch the New Symbian OS C++ Project wizard.

    -
    Other references
    - - - - + + + + + + +Symbian OS C++ Project + + + +

    Symbian OS C++ Project

    +

    Click File > New > New Symbian OS C++ Project to launch the New Symbian OS C++ Project wizard.

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/on_device_setup.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/on_device_setup.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/on_device_setup.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,21 +1,21 @@ - - - - - - - -On-Device Setup menu - - - -

    On-Device Setup

    -

    Use the On-Device Setup menu option to open the On-Device Setup dialog for the downloading and installation of Carbide software to a device.

    -
    Other references
    - - - - + + + + + + + +On-Device Setup menu + + + +

    On-Device Setup

    +

    Use the On-Device Setup menu option to open the On-Device Setup dialog for the downloading and installation of Carbide software to a device.

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/open_cmd_window.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/open_cmd_window.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/open_cmd_window.htm Fri Apr 16 11:18:22 2010 -0500 @@ -14,7 +14,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/open_explorer_window.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/open_explorer_window.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/open_explorer_window.htm Fri Apr 16 11:18:22 2010 -0500 @@ -14,7 +14,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/preprocess_source.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/preprocess_source.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/preprocess_source.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,20 +1,20 @@ - - - - - - -Preprocess - - - -

    Preprocess

    -

    Right-click to select a .c, .cpp, or .cia source file in the Project Explorer or Symbian Project Navigator view, and choose Preprocess to preprocess the file. You define the preprocess command in the Preprocess preference panel. This is also available from within a C/C++ editor view. You can use the shift or control key to select one or more of these file types across the same or different projects. The preprocess progress is displayed in the Console view.

    -
    Other references
    - - - - - + + + + + + +Preprocess + + + +

    Preprocess

    +

    Right-click to select a .c, .cpp, or .cia source file in the Project Explorer or Symbian Project Navigator view, and choose Preprocess to preprocess the file. You define the preprocess command in the Preprocess preference panel. This is also available from within a C/C++ editor view. You can use the shift or control key to select one or more of these file types across the same or different projects. The preprocess progress is displayed in the Console view.

    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/run_codescanner.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/run_codescanner.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/run_codescanner.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,25 +1,25 @@ - - - - - - -Run CodeScanner - - - -

    Run CodeScanner

    -

    CodeScanner is a static source code analysis tool for Symbian OS™ programs written in C++. Use Run CodeScanner to examine your project code and report any issues.

    -

    Static analysis tools delve deep into code, exploring line by line for the sources of defects. CodeScanner is specifically for use with Symbian OS™ code. As well as identifying C++ coding convention deviations, CodeScanner identifies incorrect descriptor usage, cleanup stack errors, UID clashes, and other subtle problems that are hard to track down.

    -

    -

    Figure 1. Invoking Run CodeScanner on a project
    -

    -
    Other references
    - - - + + + + + + +Run CodeScanner + + + +

    Run CodeScanner

    +

    CodeScanner is a static source code analysis tool for Symbian OS™ programs written in C++. Use Run CodeScanner to examine your project code and report any issues.

    +

    Static analysis tools delve deep into code, exploring line by line for the sources of defects. CodeScanner is specifically for use with Symbian OS™ code. As well as identifying C++ coding convention deviations, CodeScanner identifies incorrect descriptor usage, cleanup stack errors, UID clashes, and other subtle problems that are hard to track down.

    +

    +

    Figure 1. Invoking Run CodeScanner on a project
    +

    +
    Other references
    + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/run_leavescan.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/run_leavescan.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/run_leavescan.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,34 +1,34 @@ - - - - - - -Leavescan - - - -

    Run Leavescan

    -

    Symbian OS has a standard convention for functions that may Leave. Therefore, any function that Leaves, or calls a function that Leaves (other than in a TRAP harness), must have a name ending in L. Leavescan verifies that your code satisfies this convention. LeaveScan ignores calls in trapped functions, commented out code, ( // and /* and */). It also checks for calls to LD, LC and LX functions as well as normal L functions. It also checks for User::Leave(), ELeave, and User::LeaveIfError().

    -

    To start, define where the path to the leavescan.exe program using the Leavescan preference panel.

    -

    Next, to run Leavescan:

    -
      -
    • on a source file — right-click a .cpp source file in the C/C++ Projects or Symbian Project Navigator view and select Run Leavescan
    • -
    • on all source files in the Active Build Configuration — right-click a .mmp file and select Run Leavescan on Project MMP. The source statements in the .mmp file are scanned to obtain a list of source files to be processed by leavescan.
    • -
    • from the command line — scan whole directories and output to a file. For example,
    • -
    -
    -

    for /R %i in (*.cpp) do leavescan %i >> leavescan.out

    -

    This will scan all cpp files in or below the current directory, placing the result in leavescan.out.

    -
    -

    -

    Figure 1. Invoking Run Leavescan on a single source file

    -
    Other references
    - - - + + + + + + +Leavescan + + + +

    Run Leavescan

    +

    Symbian OS has a standard convention for functions that may Leave. Therefore, any function that Leaves, or calls a function that Leaves (other than in a TRAP harness), must have a name ending in L. Leavescan verifies that your code satisfies this convention. LeaveScan ignores calls in trapped functions, commented out code, ( // and /* and */). It also checks for calls to LD, LC and LX functions as well as normal L functions. It also checks for User::Leave(), ELeave, and User::LeaveIfError().

    +

    To start, define where the path to the leavescan.exe program using the Leavescan preference panel.

    +

    Next, to run Leavescan:

    +
      +
    • on a source file — right-click a .cpp source file in the C/C++ Projects or Symbian Project Navigator view and select Run Leavescan
    • +
    • on all source files in the Active Build Configuration — right-click a .mmp file and select Run Leavescan on Project MMP. The source statements in the .mmp file are scanned to obtain a list of source files to be processed by leavescan.
    • +
    • from the command line — scan whole directories and output to a file. For example,
    • +
    +
    +

    for /R %i in (*.cpp) do leavescan %i >> leavescan.out

    +

    This will scan all cpp files in or below the current directory, placing the result in leavescan.out.

    +
    +

    +

    Figure 1. Invoking Run Leavescan on a single source file

    +
    Other references
    + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/menus/s60_ui_designer.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/s60_ui_designer.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/menus/s60_ui_designer.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,20 +1,20 @@ - - - - - - -S60 UI Designer - - - -

    S60 UI Designer

    -

    Click File > New > S60 UI Design to launch the S60 UI Design wizard to add a new design to a project.

    -
    Other references
    - - - - - + + + + + + +S60 UI Designer + + + +

    S60 UI Designer

    +

    Click File > New > S60 UI Design to launch the S60 UI Design wizard to add a new design to a project.

    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/olderproject_updater.html --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/olderproject_updater.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/olderproject_updater.html Fri Apr 16 11:18:22 2010 -0500 @@ -21,7 +21,7 @@

    Figure 3 - Carbide.c++ Files Updater window

    Changes to be performed by the updater are shown in the Text Compare area. You can use the yellow up and down arrows to move to the next or previous change to be performed. Click cancel if you do not want the change to be made. Click Finish to accept the changes.

    - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/perspective_debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/perspective_debug.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/perspective_debug.htm Fri Apr 16 11:18:22 2010 -0500 @@ -46,7 +46,7 @@
  • Memory view
  • Symbian OS Data view
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/prefs_carbide_news.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/prefs_carbide_news.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/prefs_carbide_news.htm Fri Apr 16 11:18:22 2010 -0500 @@ -36,7 +36,7 @@ -
    Related concepts

     

    - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/panel_trk_overview.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/panel_trk_overview.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/panel_trk_overview.htm Fri Apr 16 11:18:22 2010 -0500 @@ -20,7 +20,7 @@
  • Source—specifies the location of source files used when debugging a C or C++ application
  • Common—specifies the location to store your run configuration, how to access it and what perspective to open when running an application
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/view_remote_connection.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/view_remote_connection.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/view_remote_connection.htm Fri Apr 16 11:18:22 2010 -0500 @@ -164,7 +164,6 @@ diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_install_tab.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_install_tab.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_install_tab.htm Fri Apr 16 11:18:22 2010 -0500 @@ -11,7 +11,7 @@

    Install Remote Agents

    -

    Use the Install Remote Agents pane to select the latest remote agent version to download and install to the device.

    +

    Use the New Conection > Install Remote Agents page to select the latest remote agent version to download and install to the device.

    Figure 2 - New Connection wizard Install remote agents page

    Table 1. Install Remote Agents pane

    @@ -41,7 +41,7 @@ diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_settings_pane.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_settings_pane.htm Fri Apr 16 11:16:33 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,47 +0,0 @@ - - - - - - -Install Remote Agents pane - - - - -

    Install Remote Agents pane

    -

    Use the Install remote agents pane to select the latest remote agent version to download and install to the device.

    -

    -

    Figure 2 - New Connection wizard Serial Connection Settings page

    -

    Table 3. Serial Connection Setting page - Install Remote Agents tab

    - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Install remote agents

    A list of the most current versions of remote agents sorted by SDK and version. Select the version most compatable with the device. For example, a device running S60 3.1.0 needs a version of the TRK software compiled for that SDK, which in the image above is Application TRK 2.8.7.

    -

    Additional information about the selected entry is displayed to the right to help you choose the correct version of TRK for the target device.

    SaveClick Save to store a local copy of the currently selected TRK to disk. You can then manually install the file to your devices using the method of your choice.
    Install

    Click Install to download and install the TRK selected in the Install latest TRK list. A progress bar is shown if the install operation requires more than a few seconds to complete.

    -

    NOTE The SIS and SISX file types must be associated with an installer application like Nokia PC Suite in order to install them onto the device. Use the Save command above to perform a manual install to the device if you don't have an installer application.

    -

    -
    Related references
    - - - - - diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_wiz_add.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_wiz_add.htm Fri Apr 16 11:16:33 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,122 +0,0 @@ - - - - - - -Adding, Editing, and Deleting Connections - - - - -

    Adding, Editing, and Deleting Connections

    -

    Use the Remote Connections view to monitor, create, edit, or remove common remote connection settings.

    - -

    Edit connection name and type

    -

    Use the Edit connection name and type page to assign a name and connection type to the new connection setup.

    -

    -

    Figure 1 - New Connection wizard Edit connection name and type page

    -

    Table 1. Edit connection name and type page - options

    - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Connetion Name

    Enter a name for the connection.

    Conection TypeSelect the type of connection this setup will use.
    Supported Services

    Shows a list of services supported by the connection type chosen.

    -

    Set Connection Settings pane

    -

    Use the Set Connection Settings pane to compare the version of remote agent installed on the device with the latest version available for Carbide. In this pane you can:

    -
      -
    • Set the device OS used by the device and supported by the selected remote agent
    • -
    • Allow easy serial port selection when connecting to a device
    • -
    • Verify that you have the latest remote agent installed on a device
    • -
    -

    -

    Figure 2 - New Connection wizard Serial Connection Settings page

    -

    Table 2. Serial Connection Setting page - Set Connection Settings tab

    - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Serial Port A dropdown list of serial ports with known identifiers for selecting the communication port used by the PC to communicate with the device. A named COM port (COM4 - BthModem0) indicates an active port. Unnamed port numbers have usually not been opened and assigned by the PC.
    Baud Ratea dropdown list of baud rates common to serial connections.
    Device OS

    A dropdown list of device OSes that are supported by the remote agent software. Select the OS used by the device before running a check.

    Select a service to testClick to select a listed service for testing.
    Test Service Status

    Click Test Service Status to query the remote agent software on the device for its version number. It then compares the version number found with the latest version available for Carbide. A progress bar will appear should the Check TRK version operation requires more than a few seconds.

    -

    NOTE The PC must have an internet connection to perform a remote agent version check.

    -

    Once the comparison is complete the Status text is updated with the result and further instructions as required.

    -

    -

    If a connection fails, the errors normally fall into these two categories:

    -
      -
    • connection failure - this usually indicates the chosen COM port is not open. Try selecting a different COM port, specifically one with a name attached to it (COM4 - BthModem0) for the type of connection you are using (USB or Bluetooth). Repeat as necessary until you get a successful response.
    • -
    • TRK not responding - this indicates that the COM port is open but TRK is not responding. First, verify that TRK is up and running on the device. Second, TRK may be listening on a different COM port, so choose another named COM port and try again.
    • -
    -

     

    -

    Install Remote Agents pane

    -

    Use the Install Remote Agents pane to select the latest remote agent version to download and install to the device.

    -

    -

    Figure 2 - New Connection wizard Serial Connection Settings page

    -

    Table 3. Serial Connection Setting page - Install Remote Agents tab

    - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Install remote agents

    A list of the most current versions of remote agents sorted by SDK and version. Select the version most compatable with the device. For example, a device running S60 3.1.0 needs a version of the TRK software compiled for that SDK, which in the image above is Application TRK 2.8.7.

    -

    Additional information about the selected entry is displayed to the right to help you choose the correct version of TRK for the target device.

    SaveClick Save to store a local copy of the currently selected TRK to disk. You can then manually install the file to your devices using the method of your choice.
    Install

    Click Install to download and install the TRK selected in the Install latest TRK list. A progress bar is shown if the install operation requires more than a few seconds to complete.

    -

    NOTE The SIS and SISX file types must be associated with an installer application like Nokia PC Suite in order to install them onto the device. Use the Save command above to perform a manual install to the device if you don't have an installer application.

    -

     

    -
    Related references
    - - - - - diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_wiz_edit.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_conn_wiz_edit.htm Fri Apr 16 11:16:33 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,122 +0,0 @@ - - - - - - -Editing connections - - - - -

    Editing connections

    -

    Use the Remote Connections view to monitor, create, edit, or remove common remote connection settings.

    - -

    Edit connection name and type

    -

    Use the Edit connection name and type page to assign a name and connection type to the new connection setup.

    -

    -

    Figure 1 - New Connection wizard Edit connection name and type page

    -

    Table 1. Edit connection name and type page - options

    - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Connetion Name

    Enter a name for the connection.

    Conection TypeSelect the type of connection this setup will use.
    Supported Services

    Shows a list of services supported by the connection type chosen.

    -

    Set Connection Settings pane

    -

    Use the Set Connection Settings pane to compare the version of remote agent installed on the device with the latest version available for Carbide. In this pane you can:

    -
      -
    • Set the device OS used by the device and supported by the selected remote agent
    • -
    • Allow easy serial port selection when connecting to a device
    • -
    • Verify that you have the latest remote agent installed on a device
    • -
    -

    -

    Figure 2 - New Connection wizard Set Connection Settings tab

    -

    Table 2. Bluetooth Setting page - Set Connection Settings tab

    - - - - - - - - - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Serial Port A dropdown list of serial ports with known identifiers for selecting the communication port used by the PC to communicate with the device. A named COM port (COM4 - BthModem0) indicates an active port. Unnamed port numbers have usually not been opened and assigned by the PC.
    Baud Ratea dropdown list of baud rates common to serial connections.
    Device OS

    A dropdown list of device OSes that are supported by the remote agent software. Select the OS used by the device before running a check.

    Select a service to testClick to select a listed service for testing.
    Test Service Status

    Click Initiate service testing to query the remote agent software on the device for its version number. It then compares the version number found with the latest version available for Carbide. A progress bar will appear should the Check TRK version operation requires more than a few seconds.

    -

    NOTE The PC must have an internet connection to perform a remote agent version check.

    -

    Once the comparison is complete the Status text is updated with the result and further instructions as required.

    -

    -

    If a connection fails, the errors normally fall into these two categories:

    -
      -
    • connection failure - this usually indicates the chosen COM port is not open. Try selecting a different COM port, specifically one with a name attached to it (COM4 - BthModem0) for the type of connection you are using (USB or Bluetooth). Repeat as necessary until you get a successful response.
    • -
    • TRK not responding - this indicates that the COM port is open but TRK is not responding. First, verify that TRK is up and running on the device. Second, TRK may be listening on a different COM port, so choose another named COM port and try again.
    • -
    -

     

    -

    Install Remote Agents pane

    -

    Use the Install Remote Agents pane to select the latest remote agent version to download and install to the device.

    -

    -

    Figure 2 - New Connection wizard Install remote agents tab

    -

    Table 3. Bluetooth Setting page - Install Remote Agents tab

    - - - - - - - - - - - - - - - - - -
    ItemExplanation
    Install remote agents

    A list of the most current versions of remote agents sorted by SDK and version. Select the version most compatable with the device. For example, a device running S60 3.1.0 needs a version of the TRK software compiled for that SDK, which in the image above is Application TRK 2.8.7.

    -

    Additional information about the selected entry is displayed to the right to help you choose the correct version of TRK for the target device.

    SaveClick Save to store a local copy of the currently selected TRK to disk. You can then manually install the file to your devices using the method of your choice.
    Install

    Click Install to download and install the TRK selected in the Install latest TRK list. A progress bar is shown if the install operation requires more than a few seconds to complete.

    -

    NOTE The SIS and SISX file types must be associated with an installer application like Nokia PC Suite in order to install them onto the device. Use the Save command above to perform a manual install to the device if you don't have an installer application.

    -

     

    -
    Related references
    - - - - - diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_connection_wizard.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_connection_wizard.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_new_connection_wizard.htm Fri Apr 16 11:18:22 2010 -0500 @@ -11,7 +11,7 @@

    Setup Connection

    -

    Use the Edit Connection page to assign a connection type, name, and connection settings to the new connection setup.

    +

    Use the New Conection > Setup Connection page to assign a connection type, name, and connection settings to the new connection setup.

    Figure 1 - New Connection wizard Setup Connection tab

    Table 1. Setup Connection page - options

    @@ -41,19 +41,21 @@ Connection Settings -

    Shows a list of services supported by the connection type chosen.

    -
      -
    • Bluetooth - serial port connection through Bluetooth
    • -
    • Serial - serial port connection through a COM serial port
    • -
    • USB - serial port connection through USB that supports TRK 3.x
    • +

      Displays COM Port, Baud Rate, IP Addresss, Channel and Port settings according to the chosen connection type.

      +
      • Bluetooth - select which COM port to use
      • +
      • PlatSim - shows what IP address it will use
      • +
      • Serial - select which COM port and baud rate to use.
      • +
      • TPC IP - enter your IP address
      • +
      • TCP IP Musti - enter your IP address, Musti channel, Port number
      • +
      • USB - select which COM port to use
      Related references
      diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_on_device_check_tab.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_on_device_check_tab.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_on_device_check_tab.htm Fri Apr 16 11:18:22 2010 -0500 @@ -11,7 +11,7 @@

      Test Connection

      -

      Use the Set Connection Settings pane to compare the version of remote service installed on the device with the latest version available for Carbide. A remote service is any software on the device that can communicate with Carbide. This includes TRK, Trace, Performance Investigator, and other services. In this pane you can:

      +

      Use the New Conection > Test Connection page to compare the version of remote service installed on the device with the latest version available for Carbide. A remote service is any software on the device that can communicate with Carbide. This includes TRK, Trace, Performance Investigator, and other services. In this pane you can:

      • Set the device OS used by the device and supported by the remote service
      • Verify that Carbide can communicate with the remote service via the chosen connection setting
      • Verify that you have the latest version of the remote service installed on the device
      • @@ -50,7 +50,7 @@ diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_on_device_setup.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_on_device_setup.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/trk/wnd_on_device_setup.htm Fri Apr 16 11:18:22 2010 -0500 @@ -14,16 +14,16 @@

        Use the New Connection wizard to verify and update Carbide software services on a device. Click the Help > On-Device Connections... menu option to open. Current services available include TRK, Tracing, and others. The following tabs are present:

        Figure 1 - New Connection dialog

        Related references
        diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/view_breakpoints.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/view_breakpoints.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/view_breakpoints.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,80 +1,80 @@ - - - - - - -Breakpoints View - - - -

        Breakpoints View

        -

        Use the Breakpoints view to set, examine, enable, disable, and remove breakpoints and watchpoints in one or more build configurations. Table 1 explains items in the view.

        -

        -

        Figure 1 - Breakpoints view

        -
        Table 1. Breakpoints view—items
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        ItemIconExplanation
        Remove Selected Breakpoint
        Removes the selected breakpoint from the breakpoints list.
        Remove All Breakpoints
        Removes all breakpoints from the breakpoints list.
        Show Breakpoints Supported by Selected Target
        Limits the breakpoints shown to only those supported in the current target.
        Go to File for Breakpoint
        Displays the breakpoint in an editor view, opening the source file if required.
        Skip All Breakpoints
        Toggles the debugger to skip all breakpoints regardless of their current enabled or disabled state, or hit all breakpoints.
        Expand All
        Expand all matches in the hierarchical view.
        Collapse All
        Collapse all matches in the hierarchical view.
        Link with Debug View
        When enabled, the breakpoint shown in the editor view is also highlighted in the Breakpoints view. When disabled, the breakpoint selected in the Breakpoints view does not change.
        Menu
        Click to display additional Breakpoint view options for paths and working sets.
        -
        Other references
        - - - - - + + + + + + +Breakpoints View + + + +

        Breakpoints View

        +

        Use the Breakpoints view to set, examine, enable, disable, and remove breakpoints and watchpoints in one or more build configurations. Table 1 explains items in the view.

        +

        +

        Figure 1 - Breakpoints view

        +
        Table 1. Breakpoints view—items
        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        ItemIconExplanation
        Remove Selected Breakpoint
        Removes the selected breakpoint from the breakpoints list.
        Remove All Breakpoints
        Removes all breakpoints from the breakpoints list.
        Show Breakpoints Supported by Selected Target
        Limits the breakpoints shown to only those supported in the current target.
        Go to File for Breakpoint
        Displays the breakpoint in an editor view, opening the source file if required.
        Skip All Breakpoints
        Toggles the debugger to skip all breakpoints regardless of their current enabled or disabled state, or hit all breakpoints.
        Expand All
        Expand all matches in the hierarchical view.
        Collapse All
        Collapse all matches in the hierarchical view.
        Link with Debug View
        When enabled, the breakpoint shown in the editor view is also highlighted in the Breakpoints view. When disabled, the breakpoint selected in the Breakpoints view does not change.
        Menu
        Click to display additional Breakpoint view options for paths and working sets.
        +
        Other references
        + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/view_carbide_news.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/view_carbide_news.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/view_carbide_news.htm Fri Apr 16 11:18:22 2010 -0500 @@ -54,7 +54,7 @@ -
      - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/reference/wnd_preprocess_prefs.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/reference/wnd_preprocess_prefs.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/reference/wnd_preprocess_prefs.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,46 +1,46 @@ - - - - - - -Preprocess preferences - - - - -

      Preprocess preferences

      -

      The Carbide.c++ > Preprocess page in the Preferences window provides global settings for the Carbide preprocessor.

      -

      -

      Figure 1 - Preprocess preferences page

      -
      Table 1 Preprocess p references —items
      - - - - - - - - - - - - - - - - - -
      ItemExplanation
      Send output to the build console

      Enable to direct preprocessor output to a console view.

      -
      Send output to the editor

      Enable to direct preprocessor output to an editor.

      -
      CPP arguments

      Enter the preprocessor arguments used by the preprocessor.

      -
      -
      Other references
      - -

       

      - - - - + + + + + + +Preprocess preferences + + + + +

      Preprocess preferences

      +

      The Carbide.c++ > Preprocess page in the Preferences window provides global settings for the Carbide preprocessor.

      +

      +

      Figure 1 - Preprocess preferences page

      +
      Table 1 Preprocess p references —items
      + + + + + + + + + + + + + + + + + +
      ItemExplanation
      Send output to the build console

      Enable to direct preprocessor output to a console view.

      +
      Send output to the editor

      Enable to direct preprocessor output to an editor.

      +
      CPP arguments

      Enter the preprocessor arguments used by the preprocessor.

      +
      +
      Other references
      + +

       

      + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/ClassesToc.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/ClassesToc.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/ClassesToc.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,17 +1,17 @@ - -Classes - - - -

      Classes

      -

      The topics include:

      - - - - - + +Classes + + + +

      Classes

      +

      The topics include:

      + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/ExportingtoMMP_BLDinf.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/ExportingtoMMP_BLDinf.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/ExportingtoMMP_BLDinf.html Fri Apr 16 11:18:22 2010 -0500 @@ -264,7 +264,7 @@ LIBRARY euser.lib apparc.lib cone.lib eikcore.lib avkon.lib commonengine.lib
      LIBRARY efsrv.lib estor.lib
      /*& END_LINKAGE_INFORMATION &*/

      - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/ImportingProjects.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/ImportingProjects.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/ImportingProjects.html Fri Apr 16 11:18:22 2010 -0500 @@ -121,7 +121,7 @@
    • Project Preferences
    • Project Types
    - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/ModifyingResources.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/ModifyingResources.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/ModifyingResources.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,32 +1,32 @@ - -Modifying Resources in Tasks - - - -
    -

    Modifying Resources

    -
    - - -

    - This section describes the steps for adding and modifying resources of an - existing project. The resources may be a bitmap resource (MBM) or an - application information file (AIF) definition file. -

    -

    - Note that the Symbian OS plug-ins do not provide a graphical editor for the - Symbian OS resource (.rss) file format. Files of this type though - can be created and edited as text files. Any .rss files in a project are built using the Symbian OS - resource compiler.

    - - - -
    - - - - + +Modifying Resources in Tasks + + + +
    +

    Modifying Resources

    +
    + + +

    + This section describes the steps for adding and modifying resources of an + existing project. The resources may be a bitmap resource (MBM) or an + application information file (AIF) definition file. +

    +

    + Note that the Symbian OS plug-ins do not provide a graphical editor for the + Symbian OS resource (.rss) file format. Files of this type though + can be created and edited as text files. Any .rss files in a project are built using the Symbian OS + resource compiler.

    + + + +
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/Multi-BitmapFile.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/Multi-BitmapFile.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/Multi-BitmapFile.html Fri Apr 16 11:18:22 2010 -0500 @@ -36,7 +36,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/RmvngandVwngPropsosSDK.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/RmvngandVwngPropsosSDK.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/RmvngandVwngPropsosSDK.html Fri Apr 16 11:18:22 2010 -0500 @@ -41,7 +41,7 @@
  • Working with SDKs
  • SDK Properties
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/RunModeToc.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/RunModeToc.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/RunModeToc.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,16 +1,16 @@ - -Run Mode Projects - - - -

    Run Mode Projects

    -

    The topics include:

    - - - - - + +Run Mode Projects + + + +

    Run Mode Projects

    +

    The topics include:

    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/StopModeToc.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/StopModeToc.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/StopModeToc.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,18 +1,18 @@ - -Stop Mode Projects - - - -

    Stop Mode Projects

    -

    The topics include:

    - - - - - + +Stop Mode Projects + + + +

    Stop Mode Projects

    +

    The topics include:

    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/WorkingwithSDKs.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/WorkingwithSDKs.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/WorkingwithSDKs.html Fri Apr 16 11:18:22 2010 -0500 @@ -21,7 +21,7 @@
  • Editing SDK Properties
  • Adding Symbian Custom Kits
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/WritingCode.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/WritingCode.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/WritingCode.html Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - -Writing Code in Tasks - - - -

    Writing Code

    -
    - - -

    - This section explains how to work with Symbian OS C++ projects with the - help of the tools provided. -

    - - -
    - - - - - + +Writing Code in Tasks + + + +

    Writing Code

    +
    + + +

    + This section explains how to work with Symbian OS C++ projects with the + help of the tools provided. +

    + + +
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_clearing.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_clearing.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_clearing.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,74 +1,74 @@ - - - - - - -Removing Breakpoints - - - -

    Removing Breakpoints

    -

    You can remove one or more breakpoints set for a debug session using the Breakpoints, Disassembly, or editor views.

    -
    -

    Removing a Breakpoint

    -
      -
    1. To remove a breakpoint in the Breakpoints view: -
        -
      • Right-click the breakpoint, click Remove
      • -
      -
    2. -
        -

        OR

        -
      • Click the Remove Selected Breakpoints () button
      • -
      -
    3. To remove a breakpoint in an editor or Disassembly views:
    4. -
        -
      • Double-click the breakpoint dot in the marker bar
      • -

        - OR

        -
      • Select the source line with the breakpoint, click Run > Toggle Line Breakpoint
      • -

        OR

        -
      • Right-click the breakpoint dot in the marker bar and select Toggle Breakpoint
      • -
      -

      The breakpoint disappears in the Breakpoints view.

      -
    - -

    Removing all Breakpoints

    -
      -
    1. To remove all breakpoints in the Breakpoints view: -
        -
      • Right-click a breakpoint, click Remove All
      • -
      -
    2. -
        -

        OR

        -
      • Click the Remove All Breakpoints () button
      • -
      -
    3. To remove all breakpoint in an editor or Disassembly views: -
        -
      • Click the Run > Remove all Breakpoints menu item
      • -
      -
    4. -

      All the breakpoints disappear in the Breakpoints, Disassembly, and editor views.

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - - + + + + + + +Removing Breakpoints + + + +

    Removing Breakpoints

    +

    You can remove one or more breakpoints set for a debug session using the Breakpoints, Disassembly, or editor views.

    +
    +

    Removing a Breakpoint

    +
      +
    1. To remove a breakpoint in the Breakpoints view: +
        +
      • Right-click the breakpoint, click Remove
      • +
      +
    2. +
        +

        OR

        +
      • Click the Remove Selected Breakpoints () button
      • +
      +
    3. To remove a breakpoint in an editor or Disassembly views:
    4. +
        +
      • Double-click the breakpoint dot in the marker bar
      • +

        + OR

        +
      • Select the source line with the breakpoint, click Run > Toggle Line Breakpoint
      • +

        OR

        +
      • Right-click the breakpoint dot in the marker bar and select Toggle Breakpoint
      • +
      +

      The breakpoint disappears in the Breakpoints view.

      +
    + +

    Removing all Breakpoints

    +
      +
    1. To remove all breakpoints in the Breakpoints view: +
        +
      • Right-click a breakpoint, click Remove All
      • +
      +
    2. +
        +

        OR

        +
      • Click the Remove All Breakpoints () button
      • +
      +
    3. To remove all breakpoint in an editor or Disassembly views: +
        +
      • Click the Run > Remove all Breakpoints menu item
      • +
      +
    4. +

      All the breakpoints disappear in the Breakpoints, Disassembly, and editor views.

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_conditional.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_conditional.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_conditional.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,57 +1,57 @@ - - - - - - -Setting Conditional Breakpoints - - - -

    Setting Conditional Breakpoints or Watchpoints

    -

    You create a conditional (temporary) breakpoint or watchpoint in the Properties for C/C++ breakpoint dialog. Right-click a breakpoint or watchpoint in the Breakpoints view, then select Properties from the context menu. A conditional breakpoint or watchpoint has an associated conditional expression. The debugger evaluates the expression to determine whether to halt program execution at that breakpoint.

    -

    A conditional breakpoint or watchpoint behaves in two different ways:

    -
      -
    • If the expression evaluates to true (a non-zero value), the debugger halts program execution.
    • -
    • If the expression evaluates to false (a zero value), program execution continues without stopping.
    • -
    -

    -

    Figure 1 Properties for C/C++ - breakpoint window

    -
    -

    To set a conditional breakpoint

    -
      -
    1. Find the breakpoint or watchpoint in the Breakpoints view -
        -
      • If the breakpoint is already set, then continue
      • -
      • If the breakpoint is not set, set it in the source code now
      • -
      -
    2. -
    3. Right-click the breakpoint and select Properties on the context menu
    4. -

      The Properties for C/C++ - breakpoint dialog appears (Figure 1). The Common panel is shown by default.

      -
    5. Enter an condition in the Condition text box
    6. -

      When entering a condition use the format: Variable <operator> value. For example, iCount == 5.

      -
    7. Enter an ignore count value in the Ignore count text box (optional)
    8. -

      The Ignore count specifies how many times the breakpoint or watchpoint hits the condition before execution stops. The default setting is zero, which means the first time the breakpoint is hit, execution halts. For example, to stop at the breakpoint on the second time it is hit, enter an Ignore count of 1.

      -
    9. Click OK
    10. -

      During subsequent debugging sessions, the debugger evaluates the expression to determine whether to halt program execution at the conditional breakpoint.

      -
    -
    -

    For more information on marker bar icons, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - - + + + + + + +Setting Conditional Breakpoints + + + +

    Setting Conditional Breakpoints or Watchpoints

    +

    You create a conditional (temporary) breakpoint or watchpoint in the Properties for C/C++ breakpoint dialog. Right-click a breakpoint or watchpoint in the Breakpoints view, then select Properties from the context menu. A conditional breakpoint or watchpoint has an associated conditional expression. The debugger evaluates the expression to determine whether to halt program execution at that breakpoint.

    +

    A conditional breakpoint or watchpoint behaves in two different ways:

    +
      +
    • If the expression evaluates to true (a non-zero value), the debugger halts program execution.
    • +
    • If the expression evaluates to false (a zero value), program execution continues without stopping.
    • +
    +

    +

    Figure 1 Properties for C/C++ - breakpoint window

    +
    +

    To set a conditional breakpoint

    +
      +
    1. Find the breakpoint or watchpoint in the Breakpoints view +
        +
      • If the breakpoint is already set, then continue
      • +
      • If the breakpoint is not set, set it in the source code now
      • +
      +
    2. +
    3. Right-click the breakpoint and select Properties on the context menu
    4. +

      The Properties for C/C++ - breakpoint dialog appears (Figure 1). The Common panel is shown by default.

      +
    5. Enter an condition in the Condition text box
    6. +

      When entering a condition use the format: Variable <operator> value. For example, iCount == 5.

      +
    7. Enter an ignore count value in the Ignore count text box (optional)
    8. +

      The Ignore count specifies how many times the breakpoint or watchpoint hits the condition before execution stops. The default setting is zero, which means the first time the breakpoint is hit, execution halts. For example, to stop at the breakpoint on the second time it is hit, enter an Ignore count of 1.

      +
    9. Click OK
    10. +

      During subsequent debugging sessions, the debugger evaluates the expression to determine whether to halt program execution at the conditional breakpoint.

      +
    +
    +

    For more information on marker bar icons, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_disable.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_disable.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_disable.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,48 +1,48 @@ - - - - - - -Disabling Breakpoints - - - -

    Disabling Breakpoints

    -

    Disable a breakpoint to prevent it from affecting program execution. The disabled breakpoint remains at the source-code line at which you set it, so that you can enable it later. Disabling the breakpoint is easier than clearing it and re-creating it from scratch.

    -

    Figure 1 shows some source code and the selected line shows the breakpoint icon that appears in the marker bar when a breakpoint is disabled.

    -

    -

    Figure 1 - Disabling breakpoints

    -
    -

    Disabling a Breakpoint

    -
      -
    • In the Breakpoints view, uncheck the checkbox next to the breakpoint
    • -
    -
    -

    or

    -
    -
      -
    • In an editor or Disassembly view, right-click the breakpoint in the marker bar and select Disable Breakpoint
    • -
    -

      The enabled breakpoint dot () changes to a disabled breakpoint dot (). The disabled breakpoint dot indicates that the breakpoint does not halt program execution.

      -
    -
    -

    For more information on breakpoints, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Disabling Breakpoints + + + +

    Disabling Breakpoints

    +

    Disable a breakpoint to prevent it from affecting program execution. The disabled breakpoint remains at the source-code line at which you set it, so that you can enable it later. Disabling the breakpoint is easier than clearing it and re-creating it from scratch.

    +

    Figure 1 shows some source code and the selected line shows the breakpoint icon that appears in the marker bar when a breakpoint is disabled.

    +

    +

    Figure 1 - Disabling breakpoints

    +
    +

    Disabling a Breakpoint

    +
      +
    • In the Breakpoints view, uncheck the checkbox next to the breakpoint
    • +
    +
    +

    or

    +
    +
      +
    • In an editor or Disassembly view, right-click the breakpoint in the marker bar and select Disable Breakpoint
    • +
    +

      The enabled breakpoint dot () changes to a disabled breakpoint dot (). The disabled breakpoint dot indicates that the breakpoint does not halt program execution.

      +
    +
    +

    For more information on breakpoints, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_enable.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_enable.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_enable.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,49 +1,49 @@ - - - - - - -Enabling Breakpoints - - - -

    Enabling Breakpoints

    -

    Enable a breakpoint to have it halt program execution at the specific line in the source file. You can set a breakpoint using the Breakpoints, Disassembly, or editor views. An enabled breakpoint must still be resolved during a debug session before it can halt program execution. Enabling a breakpoint that you previously disabled is easier than clearing it and re-creating it from scratch.

    -Figure 1 shows some source code and the selected line shows the breakpoint icon that appears in the marker bar when a breakpoint is enabled. -

    -

    Figure 1 - Enabling breakpoint

    -
    -

    Enabling a Breakpoint

    -
      -
    • In the Breakpoints view, place a check in the checkbox next to the breakpoint
    • -
    -
    -

    or

    -
    -
      -
    • In an editor view, right-click the breakpoint in the marker bar and select Enable Breakpoint
    • -
    -
    -

    If the source line has a breakpoint, the disabled breakpoint dot () changes to an enabled breakpoint dot (). The enabled breakpoint indicates that the breakpoint, if resolved, will halt program execution.

    -
    -
    -

    For more information on breakpoints, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Enabling Breakpoints + + + +

    Enabling Breakpoints

    +

    Enable a breakpoint to have it halt program execution at the specific line in the source file. You can set a breakpoint using the Breakpoints, Disassembly, or editor views. An enabled breakpoint must still be resolved during a debug session before it can halt program execution. Enabling a breakpoint that you previously disabled is easier than clearing it and re-creating it from scratch.

    +Figure 1 shows some source code and the selected line shows the breakpoint icon that appears in the marker bar when a breakpoint is enabled. +

    +

    Figure 1 - Enabling breakpoint

    +
    +

    Enabling a Breakpoint

    +
      +
    • In the Breakpoints view, place a check in the checkbox next to the breakpoint
    • +
    +
    +

    or

    +
    +
      +
    • In an editor view, right-click the breakpoint in the marker bar and select Enable Breakpoint
    • +
    +
    +

    If the source line has a breakpoint, the disabled breakpoint dot () changes to an enabled breakpoint dot (). The enabled breakpoint indicates that the breakpoint, if resolved, will halt program execution.

    +
    +
    +

    For more information on breakpoints, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_exporting.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_exporting.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_exporting.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,74 +1,74 @@ - - - - - - -Exporting Breakpoints - - - -

    Exporting Breakpoints

    -

    Use the Export Breakpoints command to export selected breakpoints to a breakpoints file with a .bkpt extension. All breakpoints set in the source files of all projects in your current workspace will be listed in the Export Breakpoints window.

    -

    The Export Breakpoints wizard shown in Figure 1 helps you to export breakpoints from your project's source files.

    -

    -

    Figure 1 - Export Breakpoints window

    - - - - - - - - - - - - - - - - - - - - - - - -
    OptionDescriptionDefault
    Breakpoint ListSelect the breakpoints that you wish to export, and deselect those that you do not.

    not selected

    -
    To file The file to export the breakpoints to, you can also click Browse... to search for a location to export.

    There can be two possible defaults:

    -

    If you have never exported breakpoints before it will be blank

    -

    If you have exported breakpoints before the last file name you exported to will be automatically inserted.

    Overwrite existing file without warning
    -
    When selected, if the file you wish to export to already exists, it will be overwritten automatically by the wizard.
    -
    not selected
    -
    -

    Exporting Breakpoints

    -
      -
    • Select File > Export... then select Breakpoints from the General group
    • -
    -
    -

    or

    -
    -
      -
    • Right-click in the Breakpoints view and select Export Breakpoints...
    • -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Exporting Breakpoints + + + +

    Exporting Breakpoints

    +

    Use the Export Breakpoints command to export selected breakpoints to a breakpoints file with a .bkpt extension. All breakpoints set in the source files of all projects in your current workspace will be listed in the Export Breakpoints window.

    +

    The Export Breakpoints wizard shown in Figure 1 helps you to export breakpoints from your project's source files.

    +

    +

    Figure 1 - Export Breakpoints window

    + + + + + + + + + + + + + + + + + + + + + + + +
    OptionDescriptionDefault
    Breakpoint ListSelect the breakpoints that you wish to export, and deselect those that you do not.

    not selected

    +
    To file The file to export the breakpoints to, you can also click Browse... to search for a location to export.

    There can be two possible defaults:

    +

    If you have never exported breakpoints before it will be blank

    +

    If you have exported breakpoints before the last file name you exported to will be automatically inserted.

    Overwrite existing file without warning
    +
    When selected, if the file you wish to export to already exists, it will be overwritten automatically by the wizard.
    +
    not selected
    +
    +

    Exporting Breakpoints

    +
      +
    • Select File > Export... then select Breakpoints from the General group
    • +
    +
    +

    or

    +
    +
      +
    • Right-click in the Breakpoints view and select Export Breakpoints...
    • +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_importing.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_importing.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_importing.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,72 +1,72 @@ - - - - - - -Importing Breakpoints - - - -

    Importing Breakpoints

    -

    Use the Import Breakpoints command to import breakpoints previously exported and saved to a breakpoints file (.bkpt). The Import Breakpoints wizard helps you to import breakpoints from a file.

    -

    Figure 1 shows the Import Breakpoints window.

    -

    -

    Figure 1 - Importing Breakpoints

    -

     

    - - - - - - - - - - - - - - - - - - - -
    OptionDescription
    From file Type the name of the file to import from, or click the Browse... button to search for a breakpoints file.
    Automatically update existing breakpoints
    -
    When selected, any breakpoints that already exist in your workspace will be overwritten by those being imported from the file.
    -
    -
    Automatically create breakpoint working sets
    -
    When selected, if an imported breakpoint indicates it belongs to a working set that does not exist in your workspace, the working set will be created for you and the breakpoint added to it.
    -
    -
    -
    -

    Importing Breakpoints

    -
      -
    • Select File > Import... and then select Breakpoints in the General group
    • -
    -
    -

    or

    -
    -
      -
    • Right-click in the Breakpoints view and select Import Breakpoints...
    • -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Importing Breakpoints + + + +

    Importing Breakpoints

    +

    Use the Import Breakpoints command to import breakpoints previously exported and saved to a breakpoints file (.bkpt). The Import Breakpoints wizard helps you to import breakpoints from a file.

    +

    Figure 1 shows the Import Breakpoints window.

    +

    +

    Figure 1 - Importing Breakpoints

    +

     

    + + + + + + + + + + + + + + + + + + + +
    OptionDescription
    From file Type the name of the file to import from, or click the Browse... button to search for a breakpoints file.
    Automatically update existing breakpoints
    +
    When selected, any breakpoints that already exist in your workspace will be overwritten by those being imported from the file.
    +
    +
    Automatically create breakpoint working sets
    +
    When selected, if an imported breakpoint indicates it belongs to a working set that does not exist in your workspace, the working set will be created for you and the breakpoint added to it.
    +
    +
    +
    +

    Importing Breakpoints

    +
      +
    • Select File > Import... and then select Breakpoints in the General group
    • +
    +
    +

    or

    +
    +
      +
    • Right-click in the Breakpoints view and select Import Breakpoints...
    • +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_setting.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_setting.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_setting.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,62 +1,62 @@ - - - - - - -Setting Breakpoints - - - -

    Setting Breakpoints

    -

    Use the Set Breakpoint command (Ctrl+Shift+B) to set a breakpoint. A regular breakpoint suspends program execution. The debugger executes the line of source code that contains the regular breakpoint.

    -

    TIP If you find that a breakpoint is not being hit, verify that the EXE or DLL is listed in the Executables view.

    -

    TIP If debugging a server launched by a client, you must attach to the server process using the Symbian OS Data view in order to hit the breakpoints in the server. Alternately, you can launch the server and client as two independent EXEs using the same COM port and debug them that way.

    -

    Figure 1 shows some source code and the marker bar to the left of the source code. The selected line shows the breakpoint dot that appears in the marker bar when a breakpoint is set.

    -

    -

    Figure 1 - Setting Breakpoints in an editor view

    -
    -

    Setting a Breakpoint in Editor or Disassembly Views

    -
      -
    • Double-click the marker bar to the left of the line of code where you want to place a breakpoint
    • -
    -
    -

    or

    -
    -
      -
    • Right-click in the marker bar and select Toggle Breakpoint
    • -
    -
    -

    or

    -
    -
      -
    • Click on the line of code and select Run > Toggle Breakpoint from the program menu bar
    • -
    -
    -

    or

    -
    -
      -
    • While selecting a line, press Ctrl+Shift+B
    • -

      The active breakpoint dot appears () in the marker bar. If the breakpoint is resolved during the debug session, the debugger halts program execution at the line with the resolved breakpoint ().

      -

      NOTE Setting a breakpoint in a file affects execution of all build targets that include that file.

      -
    -
    -

    For more information on breakpoints, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Setting Breakpoints + + + +

    Setting Breakpoints

    +

    Use the Set Breakpoint command (Ctrl+Shift+B) to set a breakpoint. A regular breakpoint suspends program execution. The debugger executes the line of source code that contains the regular breakpoint.

    +

    TIP If you find that a breakpoint is not being hit, verify that the EXE or DLL is listed in the Executables view.

    +

    TIP If debugging a server launched by a client, you must attach to the server process using the Symbian OS Data view in order to hit the breakpoints in the server. Alternately, you can launch the server and client as two independent EXEs using the same COM port and debug them that way.

    +

    Figure 1 shows some source code and the marker bar to the left of the source code. The selected line shows the breakpoint dot that appears in the marker bar when a breakpoint is set.

    +

    +

    Figure 1 - Setting Breakpoints in an editor view

    +
    +

    Setting a Breakpoint in Editor or Disassembly Views

    +
      +
    • Double-click the marker bar to the left of the line of code where you want to place a breakpoint
    • +
    +
    +

    or

    +
    +
      +
    • Right-click in the marker bar and select Toggle Breakpoint
    • +
    +
    +

    or

    +
    +
      +
    • Click on the line of code and select Run > Toggle Breakpoint from the program menu bar
    • +
    +
    +

    or

    +
    +
      +
    • While selecting a line, press Ctrl+Shift+B
    • +

      The active breakpoint dot appears () in the marker bar. If the breakpoint is resolved during the debug session, the debugger halts program execution at the line with the resolved breakpoint ().

      +

      NOTE Setting a breakpoint in a file affects execution of all build targets that include that file.

      +
    +
    +

    For more information on breakpoints, see C/C++ Development User Guide > Concepts > Debug > Breakpoints.

    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_temporary.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_temporary.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_temporary.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,47 +1,47 @@ - - - - - - -Setting a Temporary Breakpoint - - - -

    Setting a Temporary Breakpoint

    -

    Use the Temporary Breakpoint command to set temporary breakpoints. Unlike a regular breakpoint that halts execution each time you debug a project, a temporary breakpoint halts execution only once. The debugger removes the temporary breakpoint after halting program execution.

    -
    -

    To set a temporary breakpoint at a line of source code

    -
      -
    1. Set a breakpoint on the source line
    2. -
    3. Right-click breakpoint and select Breakpoint Properties in the context menu
    4. -

      The Properties for C/C++ breakpoint window appears (Figure 1).

      -

      -

      Figure 1 Properties for C/C++ breakpoint window

      -
    5. Enter the value "1" into the Ignore count field
    6. -
    7. Click OK
    8. -
    -
      -

      The dash icon changes to an active breakpoint icon. After you debug the project, the debugger halts program execution at the line that has the active breakpoint icon. After execution halts, the active breakpoint icon reverts to a dash icon. -

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - + + + + + + +Setting a Temporary Breakpoint + + + +

    Setting a Temporary Breakpoint

    +

    Use the Temporary Breakpoint command to set temporary breakpoints. Unlike a regular breakpoint that halts execution each time you debug a project, a temporary breakpoint halts execution only once. The debugger removes the temporary breakpoint after halting program execution.

    +
    +

    To set a temporary breakpoint at a line of source code

    +
      +
    1. Set a breakpoint on the source line
    2. +
    3. Right-click breakpoint and select Breakpoint Properties in the context menu
    4. +

      The Properties for C/C++ breakpoint window appears (Figure 1).

      +

      +

      Figure 1 Properties for C/C++ breakpoint window

      +
    5. Enter the value "1" into the Ignore count field
    6. +
    7. Click OK
    8. +
    +
      +

      The dash icon changes to an active breakpoint icon. After you debug the project, the debugger halts program execution at the line that has the active breakpoint icon. After execution halts, the active breakpoint icon reverts to a dash icon. +

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_view_props.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_view_props.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/pgm_bp_view_props.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,58 +1,58 @@ - - - - - - -Viewing Breakpoint Properties - - - -

    Viewing Breakpoint Properties

    -

    After you set a breakpoint, you can view and modify its Actions, Common, and Filtering properties. Table 1 explains breakpoint properties for the Common panel.

    -

    -

    Figure 1 - Properties for C/C++ breakpoint window

    -
    Table 1. Breakpoint properties
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    PropertyExplanation
    TypeThe type of item, such as Auto Breakpoint.
    FileThe path to the file that contains the item.
    Line numberLine number in file breakpoint applies to.
    EnabledIndicates the current status of the breakpoint. When checkmarked, the breakpoint stops program execution if its condition is met. When unchecked, the breakpoint is ignored during the debug session.
    ConditionThe conditional expression associated with the item. This conditional expression must evaluate to true in order for the item to perform its specified action.
    Ignore countDisplays the number of times that program execution arrived at the breakpoint before the program stopped.
    -
    -

    To view properties for a breakpoint

    -
      -
    1. Right-click the breakpoint in the Breakpoints view and select Properties...
      -

      The Properties for C/C++ breakpoint window appears.

      -
    2. -
    3. Click Actions, Common, or Filtering to view specific breakpoint property information
    4. -
    -
    - - - - + + + + + + +Viewing Breakpoint Properties + + + +

    Viewing Breakpoint Properties

    +

    After you set a breakpoint, you can view and modify its Actions, Common, and Filtering properties. Table 1 explains breakpoint properties for the Common panel.

    +

    +

    Figure 1 - Properties for C/C++ breakpoint window

    +
    Table 1. Breakpoint properties
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PropertyExplanation
    TypeThe type of item, such as Auto Breakpoint.
    FileThe path to the file that contains the item.
    Line numberLine number in file breakpoint applies to.
    EnabledIndicates the current status of the breakpoint. When checkmarked, the breakpoint stops program execution if its condition is met. When unchecked, the breakpoint is ignored during the debug session.
    ConditionThe conditional expression associated with the item. This conditional expression must evaluate to true in order for the item to perform its specified action.
    Ignore countDisplays the number of times that program execution arrived at the breakpoint before the program stopped.
    +
    +

    To view properties for a breakpoint

    +
      +
    1. Right-click the breakpoint in the Breakpoints view and select Properties...
      +

      The Properties for C/C++ breakpoint window appears.

      +
    2. +
    3. Click Actions, Common, or Filtering to view specific breakpoint property information
    4. +
    +
    + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/save_breakpoints_view.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/save_breakpoints_view.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/save_breakpoints_view.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,38 +1,38 @@ - - - - - - -Saving the Breakpoints View - - - -

    Saving the Contents of Breakpoints View

    -

    You can save the contents of the Breakpoints view. This feature is useful for saving sets of breakpoint data, then later re-opening those sets.

    -
    -

    To save contents of the Breakpoints view

    -
      -
    • Click File > Save or File > Save As
    • -

      Clicking File > Save As lets you specify the name and path to save the file that stores the contents.
      -

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Saving the Breakpoints View + + + +

    Saving the Contents of Breakpoints View

    +

    You can save the contents of the Breakpoints view. This feature is useful for saving sets of breakpoint data, then later re-opening those sets.

    +
    +

    To save contents of the Breakpoints view

    +
      +
    • Click File > Save or File > Save As
    • +

      Clicking File > Save As lets you specify the name and path to save the file that stores the contents.
      +

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/show_breakpoints_view.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/show_breakpoints_view.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/breakpoints/show_breakpoints_view.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,36 +1,36 @@ - - - - - - -Opening the Breakpoints View - - - -

    Opening a Breakpoints View

    -

    Use the Breakpoints view to show a list of breakpoints currently set in your project.

    -

    -

    Figure 1 - Breakpoints view

    -
    -

    To open a Breakpoints view

    -
      -
    • Click Window > Show View > Breakpoints (Alt+Shift+Q, B)
    • -

      The Breakpoints view opens in the current perspective.

      -

      NOTE Double-click a breakpoint in the Breakpoints view to display its associated source-code line in an editor view.

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - - - - - + + + + + + +Opening the Breakpoints View + + + +

    Opening a Breakpoints View

    +

    Use the Breakpoints view to show a list of breakpoints currently set in your project.

    +

    +

    Figure 1 - Breakpoints view

    +
    +

    To open a Breakpoints view

    +
      +
    • Click Window > Show View > Breakpoints (Alt+Shift+Q, B)
    • +

      The Breakpoints view opens in the current perspective.

      +

      NOTE Double-click a breakpoint in the Breakpoints view to display its associated source-code line in an editor view.

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/carbide_tools.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/carbide_tools.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/carbide_tools.htm Fri Apr 16 11:18:22 2010 -0500 @@ -40,6 +40,6 @@
    • Carbide.c++ Plug-in Developer Guide
    - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/code_style_reformatting_sources.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/code_style_reformatting_sources.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/code_style_reformatting_sources.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,29 +1,29 @@ - -Reformatting a Source File - - - -

    Reformatting a Source File

    - - -

    You can reformat a source file to use any of the preset code styles in the Code Style preference panel.

    -
    -

    To reformat a source file

    -
      -
    1. Verify the correct code style is set in the Code Style preference panel
    2. -
    3. Open an editor view with the source file you want to reformat
    4. -
    5. Right-click and choose Source > Format (CTRL+SHIFT+F)
    6. -
    -

    -

    Figure 1 -Selecting Source > Format from an editor view

    -
    -
    Related references
    - - - - - + +Reformatting a Source File + + + +

    Reformatting a Source File

    + + +

    You can reformat a source file to use any of the preset code styles in the Code Style preference panel.

    +
    +

    To reformat a source file

    +
      +
    1. Verify the correct code style is set in the Code Style preference panel
    2. +
    3. Open an editor view with the source file you want to reformat
    4. +
    5. Right-click and choose Source > Format (CTRL+SHIFT+F)
    6. +
    +

    +

    Figure 1 -Selecting Source > Format from an editor view

    +
    +
    Related references
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/code_style_workspace.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/code_style_workspace.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/code_style_workspace.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,30 +1,30 @@ - -Code Styles preferences - - - -

    Setting the Workspace Code Style

    - - -

    You can set the default code style for a workspace using the Code Style preference panel. Once set, the specified code style is applied to all new files and projects created in the workspace. To update a source file already in the workspace, see Reformatting a Source File.

    -

    -

    Figure 1 -Select a profile from the Select a profile list

    -

    You can also create your own profiles based on the one's included with Carbide. Simply click Edit and change the options presented in the Profile <profile_name> window that appears.

    -
    -

    To set the workspace code style

    -
      -
    1. Open the Code Style preference panel
    2. -
    3. Choose a profile from the Select a profile dropdown list
    4. -
    5. Click OK
    6. -
    -
    -
    Related references
    - - - - - + +Code Styles preferences + + + +

    Setting the Workspace Code Style

    + + +

    You can set the default code style for a workspace using the Code Style preference panel. Once set, the specified code style is applied to all new files and projects created in the workspace. To update a source file already in the workspace, see Reformatting a Source File.

    +

    +

    Figure 1 -Select a profile from the Select a profile list

    +

    You can also create your own profiles based on the one's included with Carbide. Simply click Edit and change the options presented in the Profile <profile_name> window that appears.

    +
    +

    To set the workspace code style

    +
      +
    1. Open the Code Style preference panel
    2. +
    3. Choose a profile from the Select a profile dropdown list
    4. +
    5. Click OK
    6. +
    +
    +
    Related references
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/soft_attach_debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/soft_attach_debug.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/soft_attach_debug.htm Fri Apr 16 11:18:22 2010 -0500 @@ -111,7 +111,7 @@
  • Registers view
  • Breakpoint view
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/view_symbian_kernel_set.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/view_symbian_kernel_set.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/view_symbian_kernel_set.htm Fri Apr 16 11:18:22 2010 -0500 @@ -31,7 +31,7 @@
  • Debug View
  • Symbian OS View Window
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/work_debug_act_debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/work_debug_act_debug.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/work_debug_act_debug.htm Fri Apr 16 11:18:22 2010 -0500 @@ -30,7 +30,7 @@
  • Working with the Debugger
  • Debug View
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_disabling.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_disabling.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_disabling.htm Fri Apr 16 11:18:22 2010 -0500 @@ -22,7 +22,7 @@

    - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_enabling.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_enabling.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_enabling.htm Fri Apr 16 11:18:22 2010 -0500 @@ -21,7 +21,7 @@
  • The disabled eventpoint icon changes to its original eventpoint icon. The enabled eventpoint icon indicates that the eventpoint will perform its specified action.
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_viewing.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_viewing.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/eventpoints_viewing.htm Fri Apr 16 11:18:22 2010 -0500 @@ -18,7 +18,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/log_point_clear.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/log_point_clear.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/log_point_clear.htm Fri Apr 16 11:18:22 2010 -0500 @@ -24,7 +24,7 @@
  • Click Debug > Clear Eventpoint > Clear Log Point.
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/log_point_set.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/log_point_set.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/log_point_set.htm Fri Apr 16 11:18:22 2010 -0500 @@ -34,7 +34,7 @@

    Example use: If you want to display the value of a variable each time some code is executed, set a log point, check the Log Message and Treat as expression boxes and enter the variable name in the edit box, then click OK.

    - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/pause_point_clear.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/pause_point_clear.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/pause_point_clear.htm Fri Apr 16 11:18:22 2010 -0500 @@ -28,7 +28,7 @@

    - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/pause_point_set.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/pause_point_set.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/pause_point_set.htm Fri Apr 16 11:18:22 2010 -0500 @@ -26,7 +26,7 @@

    - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_clear.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_clear.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_clear.htm Fri Apr 16 11:18:22 2010 -0500 @@ -19,7 +19,7 @@
  • Click Debug > Clear Eventpoint > Clear Trace Collection On
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_off.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_off.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_off.htm Fri Apr 16 11:18:22 2010 -0500 @@ -18,7 +18,7 @@
  • Click Debug > Set Eventpoint > Set Trace Collection Off
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_on.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_on.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/eventpoints/trace_collection_on.htm Fri Apr 16 11:18:22 2010 -0500 @@ -18,7 +18,7 @@
  • Click Debug > Set Eventpoint > Set Trace Collection On
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/index.html --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/index.html Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/index.html Fri Apr 16 11:18:22 2010 -0500 @@ -52,7 +52,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_monitor_adding.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_monitor_adding.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_monitor_adding.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,57 +1,57 @@ - - - - - - -Adding a Memory Monitor - - - -

    Adding a Memory Monitor

    -

    You can add one or more memory monitors to the Memory view. A memory monitor shows the contents of a different address or expression.

    -

    NOTE When using an emulator, the memory addresses are actually based on their location and formats dependent upon the host machine.

    -
    -

    To add a Memory Monitor

    -
      -
    1. Open a new memory monitor by: -
        -
      • Click the Add Memory Monitor () icon in the Monitors pane
      • -
      • Right-click in the Monitors pane, then select Add Memory Monitor
      • -
      • Right-click a variable in the Variables view, then select View Memory
      • -
      -
    2. -

      The Add Memory Monitor window appears (Figure 1).

      -

      -

      Figure 1 - Memory Monitor window

      -
    3. Enter the address or expression to monitor
    4. -

      Type the address or expression that specifies the memory section to monitor. Acceptable formats include:

      -
        -
      • Address -- *ptr
      • -
      • Expression -- (&y)+1024
      • -
      • Functions -- FNname
      • -
      • Hexadecimal -- 0x0847d3c
      • -
      • Variables -- &VarName
      • -
      -
    5. Click OK
    6. -

      The monitor appears in the monitor list and the Memory Renderings pane displays the contents of memory locations beginning at the specified address.

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related References
    - - - - - + + + + + + +Adding a Memory Monitor + + + +

    Adding a Memory Monitor

    +

    You can add one or more memory monitors to the Memory view. A memory monitor shows the contents of a different address or expression.

    +

    NOTE When using an emulator, the memory addresses are actually based on their location and formats dependent upon the host machine.

    +
    +

    To add a Memory Monitor

    +
      +
    1. Open a new memory monitor by: +
        +
      • Click the Add Memory Monitor () icon in the Monitors pane
      • +
      • Right-click in the Monitors pane, then select Add Memory Monitor
      • +
      • Right-click a variable in the Variables view, then select View Memory
      • +
      +
    2. +

      The Add Memory Monitor window appears (Figure 1).

      +

      +

      Figure 1 - Memory Monitor window

      +
    3. Enter the address or expression to monitor
    4. +

      Type the address or expression that specifies the memory section to monitor. Acceptable formats include:

      +
        +
      • Address -- *ptr
      • +
      • Expression -- (&y)+1024
      • +
      • Functions -- FNname
      • +
      • Hexadecimal -- 0x0847d3c
      • +
      • Variables -- &VarName
      • +
      +
    5. Click OK
    6. +

      The monitor appears in the monitor list and the Memory Renderings pane displays the contents of memory locations beginning at the specified address.

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related References
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_monitor_removing.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_monitor_removing.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_monitor_removing.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,59 +1,59 @@ - - - - - - -Removing a Memory Monitor or Rendering - - - - -

    Removing a Memory Monitor or Rendering

    -

    Remove a memory monitor or rendering when you have finished working with it.

    -
    -
    -

    To remove a Memory Monitor

    -
      -
    • Right-click the memory monitor and select Remove Memory Monitor
    • -
    -
    -

    OR

    -
    -
      -
    • Select the memory monitor to remove, click the Remove Rendering Monitor () button -

      The Memory Monitor item is removed.

    • -
    -
    -
    -

    To remove a Memory Rendering

    -
      -
    1. Select the memory rendering to remove
    2. -
    3. Click the Remove Memory Rendering () button
    4. -
    -

    The Memory Rendering pane is removed.

    -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related References
    - - - - - + + + + + + +Removing a Memory Monitor or Rendering + + + + +

    Removing a Memory Monitor or Rendering

    +

    Remove a memory monitor or rendering when you have finished working with it.

    +
    +
    +

    To remove a Memory Monitor

    +
      +
    • Right-click the memory monitor and select Remove Memory Monitor
    • +
    +
    +

    OR

    +
    +
      +
    • Select the memory monitor to remove, click the Remove Rendering Monitor () button +

      The Memory Monitor item is removed.

    • +
    +
    +
    +

    To remove a Memory Rendering

    +
      +
    1. Select the memory rendering to remove
    2. +
    3. Click the Remove Memory Rendering () button
    4. +
    +

    The Memory Rendering pane is removed.

    +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related References
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_rendering_adding.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_rendering_adding.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/memory_rendering_adding.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,50 +1,50 @@ - - - - - - -Adding a Memory Monitor - - - -

    Adding a Memory Rendering

    -

    Add a memory rendering pane to display the memory monitor item in different formats. The formats available include:

    -
      -
    • Traditional
    • -
    • Hex
    • -
    • ASCII
    • -
    • Signed Integer
    • -
    • Unsigned Integer
    • -
    -

    Use the Add New button to choose a different memory monitor item.

    -
    -

    To add a Memory Rendering

    -
      -
    1. Right-click the Memory Renderings pane and select Add Rendering or click the Add Rendering(s) () button
    2. -

      The Add Memory Rendering dialog appears (Figure 1).

      -

      -

      Figure 1 - Add Memory Rendering dialog

      -
    3. Select the type of memory rendering to display in the memory monitor
    4. -
    5. Click OK
    6. -

      The Memory Renderings pane displays a new tab of the memory monitor item using the specified format.

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related References
    - - - - - + + + + + + +Adding a Memory Monitor + + + +

    Adding a Memory Rendering

    +

    Add a memory rendering pane to display the memory monitor item in different formats. The formats available include:

    +
      +
    • Traditional
    • +
    • Hex
    • +
    • ASCII
    • +
    • Signed Integer
    • +
    • Unsigned Integer
    • +
    +

    Use the Add New button to choose a different memory monitor item.

    +
    +

    To add a Memory Rendering

    +
      +
    1. Right-click the Memory Renderings pane and select Add Rendering or click the Add Rendering(s) () button
    2. +

      The Add Memory Rendering dialog appears (Figure 1).

      +

      +

      Figure 1 - Add Memory Rendering dialog

      +
    3. Select the type of memory rendering to display in the memory monitor
    4. +
    5. Click OK
    6. +

      The Memory Renderings pane displays a new tab of the memory monitor item using the specified format.

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related References
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/view_memory_show.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/view_memory_show.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/memory/view_memory_show.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,38 +1,38 @@ - - - - - - -Opening the Memory View - - - -

    Opening a Memory View

    -

    Use the Memory view to examine a portion of memory starting at a specific address on the host machine.

    -

    NOTE When using an emulator, the memory addresses are actually based on their location and formats dependent upon the host machine.

    -
    -

    To open a Memory view

    -
      -
    • Click Window > Show View > Memory
    • -

      The Memory view appears.

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related References
    - - - - - + + + + + + +Opening the Memory View + + + +

    Opening a Memory View

    +

    Use the Memory view to examine a portion of memory starting at a specific address on the host machine.

    +

    NOTE When using an emulator, the memory addresses are actually based on their location and formats dependent upon the host machine.

    +
    +

    To open a Memory view

    +
      +
    • Click Window > Show View > Memory
    • +

      The Memory view appears.

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related References
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/processes/attach_debugger_to_process.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/processes/attach_debugger_to_process.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/processes/attach_debugger_to_process.htm Fri Apr 16 11:18:22 2010 -0500 @@ -40,7 +40,7 @@
  • Debug Window
  • Symbian OS View
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/processes/opening_system_browser.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/processes/opening_system_browser.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/processes/opening_system_browser.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,33 +1,33 @@ - - - - - - -Opening the System Browser View - - - -

    Opening the System Browser View

    -

    Use the System Views or System menu command to view and manipulate active processes on a selected machine. If multiple machines are available, select each machine from the System Views submenu to display multiple System Browser windows. If you choose a machine that is already open, the existing window will be brought to the front.

    -

    NOTE The System Browser view appears on platforms that support it.

    -Table 1 explains how to open the System Browser view. -
    Table 1 Opening the System Browser view
    - - - - - - - - - - - - - -
    Menu Bar LayoutDo this…
    ViewsSelect View > System
    Macintosh (also applies to Linux/Solaris)Select View > System Views
    - - - + + + + + + +Opening the System Browser View + + + +

    Opening the System Browser View

    +

    Use the System Views or System menu command to view and manipulate active processes on a selected machine. If multiple machines are available, select each machine from the System Views submenu to display multiple System Browser windows. If you choose a machine that is already open, the existing window will be brought to the front.

    +

    NOTE The System Browser view appears on platforms that support it.

    +Table 1 explains how to open the System Browser view. +
    Table 1 Opening the System Browser view
    + + + + + + + + + + + + + +
    Menu Bar LayoutDo this…
    ViewsSelect View > System
    Macintosh (also applies to Linux/Solaris)Select View > System Views
    + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_adding_symbian_class.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_adding_symbian_class.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_adding_symbian_class.htm Fri Apr 16 11:18:22 2010 -0500 @@ -40,7 +40,7 @@
  • Adding Classes
  • New C++ Classs Wizard
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_build_cmd_line.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_build_cmd_line.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_build_cmd_line.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,48 +1,48 @@ - - - - - - -Setting Environment for x86 Compiler - - - - -

    Setting Environment for x86 Compiler

    -

    You can build files and projects using the Carbide.c++ command-line tools.

    -

    The command-line tools are located in the plugins\x86Build folder and include:

    -
      -
    • \env_switch - contains the env_update.exe program which installs the environment variables used by the command-line tools. You must run the env_update.exe program before any of the command-line tools can operate. It is not required to run if building from Carbide.
    • -
    • \Symbian_Support - contains the libraries, headers, and other support files necessary to use the command-line toosl
    • -
    • \Symbian_Tools - contains the command-line tools compile (mwccsym2.exe), assembler (mwc++filt.exe), and linker (mwldsym2.exe) project files
    • -
    -
    -

    Running a Command-Line Tool

    -
      -
    1. Locate and launch env_update.exe to install the environment variables required by the command-line tools
    2. -

      Follow the onscreen instructions to install the correct environment variables.

      -
    3. In the Command Prompt window, enter the tool name and options to invoke the command-line tool
    4. -
    -
    -
    Concepts
    - -
    Tasks
    - - - - + + + + + + +Setting Environment for x86 Compiler + + + + +

    Setting Environment for x86 Compiler

    +

    You can build files and projects using the Carbide.c++ command-line tools.

    +

    The command-line tools are located in the plugins\x86Build folder and include:

    +
      +
    • \env_switch - contains the env_update.exe program which installs the environment variables used by the command-line tools. You must run the env_update.exe program before any of the command-line tools can operate. It is not required to run if building from Carbide.
    • +
    • \Symbian_Support - contains the libraries, headers, and other support files necessary to use the command-line toosl
    • +
    • \Symbian_Tools - contains the command-line tools compile (mwccsym2.exe), assembler (mwc++filt.exe), and linker (mwldsym2.exe) project files
    • +
    +
    +

    Running a Command-Line Tool

    +
      +
    1. Locate and launch env_update.exe to install the environment variables required by the command-line tools
    2. +

      Follow the onscreen instructions to install the correct environment variables.

      +
    3. In the Command Prompt window, enter the tool name and options to invoke the command-line tool
    4. +
    +
    +
    Concepts
    + +
    Tasks
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_build_multi_projects.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_build_multi_projects.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_build_multi_projects.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,38 +1,38 @@ - - - - - - - Building Multiple Projects - - - -

    Importing Projects With Inter-Dependencies

    -If you are building a project that had external project dependencies, -such as an import library from a DLL you must make sure the projects -are built in the correct order to avoid missing dependencies.
    -
    -The best way to do this is to import projects with a bld.inf file. For -example, if you are building an executable that relies on a static -DLL's import library you need to build the project that generates -the import library first.  If a project contains a bld.inf file -that contains all the required project MMP files you should import via -the INF file. Building projects after importing with INF files will -insure that other project dependencies get built properly.
    -
    Concepts
    - -
    Tasks
    - -
    - - - + + + + + + + Building Multiple Projects + + + +

    Importing Projects With Inter-Dependencies

    +If you are building a project that had external project dependencies, +such as an import library from a DLL you must make sure the projects +are built in the correct order to avoid missing dependencies.
    +
    +The best way to do this is to import projects with a bld.inf file. For +example, if you are building an executable that relies on a static +DLL's import library you need to build the project that generates +the import library first.  If a project contains a bld.inf file +that contains all the required project MMP files you should import via +the INF file. Building projects after importing with INF files will +insure that other project dependencies get built properly.
    +
    Concepts
    + +
    Tasks
    + +
    + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_clean.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_clean.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_clean.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,32 +1,32 @@ - - - - - - -Building Projects - - - -

    Cleaning Projects

    -

    In the Project Explorer, C/C++ Projects, or Symbian Project Navigator views you can select a project, right-click and select Clean Project (CTRL+SHIFT+-) to remove the object and make files, and output files. The files that are removed by this command include all the intermediate files created during compilation and all the executables and import libraries created by the linker.

    -

    If you select a project and select the menu option Project > Clean... a Clean dialog will appear (Figure 1). You can clean all projects or select individual projects to clean. This method of cleaning projects performs the same operations as the Clean Project context menu option. If the Start a build immediately option is selected, then the selected project(s) are rebuilt after the clean operation.

    -

    -

    Figure 1 - Clean Project Dialog

    -

    By default, performing a Clean Project complies with the global Clean level settings in the Build preference panel and inherited by the project on creation. You can also assign project specific clean settings in the Carbide Project Settings panel in the Properties for <project> dialog.

    -
    Concepts
    - -
    Tasks
    - - - - + + + + + + +Building Projects + + + +

    Cleaning Projects

    +

    In the Project Explorer, C/C++ Projects, or Symbian Project Navigator views you can select a project, right-click and select Clean Project (CTRL+SHIFT+-) to remove the object and make files, and output files. The files that are removed by this command include all the intermediate files created during compilation and all the executables and import libraries created by the linker.

    +

    If you select a project and select the menu option Project > Clean... a Clean dialog will appear (Figure 1). You can clean all projects or select individual projects to clean. This method of cleaning projects performs the same operations as the Clean Project context menu option. If the Start a build immediately option is selected, then the selected project(s) are rebuilt after the clean operation.

    +

    +

    Figure 1 - Clean Project Dialog

    +

    By default, performing a Clean Project complies with the global Clean level settings in the Build preference panel and inherited by the project on creation. You can also assign project specific clean settings in the Carbide Project Settings panel in the Properties for <project> dialog.

    +
    Concepts
    + +
    Tasks
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_dlls.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_dlls.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_dlls.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,32 +1,32 @@ - - - - - - -Importing Executables for Debugging - - - -

    Debugging DLLs

    -

    A binary that you want to debug must be built with symbolic information (a .sym file). You can debug a DLL just as you would any other executable with full support of the Carbide debugger. Basically, the following situations can occur:

    -
      -
    • If the DLL appears in the Executables view it can be debugged. Just set breakpoints inside the DLL sources before you start the debug session. The next time the project is debugged, the DLL is loaded and made available for debugging.
    • -
    -
    -

    NOTE Breakpoints inside a DLL will not be resolved until the DLL is loaded into memory by the calling binary.

    -
    -
      -
    • If the DLL is not built by the project you can import the DLL by clicking the Import an executable file icon () in the Executables view. Then, set your breakpoints and start the debug session.
    • -
    -

    You can use the Modules view to determine if a particular DLL or binary is loaded and available for debugging.

    -
    Other references
    - - - - + + + + + + +Importing Executables for Debugging + + + +

    Debugging DLLs

    +

    A binary that you want to debug must be built with symbolic information (a .sym file). You can debug a DLL just as you would any other executable with full support of the Carbide debugger. Basically, the following situations can occur:

    +
      +
    • If the DLL appears in the Executables view it can be debugged. Just set breakpoints inside the DLL sources before you start the debug session. The next time the project is debugged, the DLL is loaded and made available for debugging.
    • +
    +
    +

    NOTE Breakpoints inside a DLL will not be resolved until the DLL is loaded into memory by the calling binary.

    +
    +
      +
    • If the DLL is not built by the project you can import the DLL by clicking the Import an executable file icon () in the Executables view. Then, set your breakpoints and start the debug session.
    • +
    +

    You can use the Modules view to determine if a particular DLL or binary is loaded and available for debugging.

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_multiple_projects.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_multiple_projects.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_multiple_projects.htm Fri Apr 16 11:18:22 2010 -0500 @@ -25,7 +25,7 @@
  • Importing Executables for Debugging
  • Working with SDKs
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_freeze_def_file.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_freeze_def_file.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_freeze_def_file.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,32 +1,32 @@ - - - - - - -Freezing DLL Projects - - - -

    Freezing DLL Projects

    -

    Use the Project > Freeze Exports menu command to freeze a entire project, normally a DLL, to ensure backward compatibility of a new release. The result is a .def file that can be imported into other projects. You cannot freeze a single file of the project, only the entire project. Also, once a project is frozen, only new exports can be added.

    -

    NOTE A .def file must be included in the project target to export a project. The IDE will not create one if it is missing.

    -
    -

    Freezing an Active Project

    -
      -
    1. Select the Project > Freeze Exports menu item or Right-click and select Freeze Exports from the context menu
    2. -

      The appropriate abld command is called in the background and a .def file is generated that can be imported into other projects.

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - - - - + + + + + + +Freezing DLL Projects + + + +

    Freezing DLL Projects

    +

    Use the Project > Freeze Exports menu command to freeze a entire project, normally a DLL, to ensure backward compatibility of a new release. The result is a .def file that can be imported into other projects. You cannot freeze a single file of the project, only the entire project. Also, once a project is frozen, only new exports can be added.

    +

    NOTE A .def file must be included in the project target to export a project. The IDE will not create one if it is missing.

    +
    +

    Freezing an Active Project

    +
      +
    1. Select the Project > Freeze Exports menu item or Right-click and select Freeze Exports from the context menu
    2. +

      The appropriate abld command is called in the background and a .def file is generated that can be imported into other projects.

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_import_exe.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_import_exe.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_import_exe.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,56 +1,56 @@ - - - - - - -Importing a Symbian Executable - - - -

    Importing a Symbian Executable

    -

    Use the File > Import > Symbian OS Executable feature to import an executable into the Executables view and debug it. This is useful when the binary is not part of any project in the workspace. An example of this may be a library that is called from an mmp file. The binary must be built with the same build configuration as the current build configuration that is being used (compiler must be the same).

    -

    NOTE You also need the symbolics (.sym) file for debugging ARM build configurations.

    -

    NOTE Binaries built by the project can be debugged by selecting executables to debug in the Executable tab of the launch configuration Debug window.

    -
    -

    To import a Symbian Executable

    -
      -
    1. Select the File > Import... menu item
    2. -

      The Import window appears (Figure 1).

      -

      -

      Figure 1 - Import window

      -
    3. Expand Symbian OS and select Symbian OS Executable in the list, then click Next
    4. -

      The Import Executable window appears (Figure 2).

      -
    5. Enter the executable name in the Select Executable field or click Browse to locate the executable
    6. -

      Use the Select executable field to choose a single executable or Search directory field to select one or more Symbian executables to import from the specified directory.

      -

      -

      Figure 2 - Import Executable window

      -
    7. Click Finish
    8. -

      The IDE imports the Symbian executable and displays it in the Executables view (figure 3).

      -

      -

      Figure 3 - Executables view showing executable and source files

      -

      The new project is listed under the Project Explorer view, as shown in Figure 4.

      -

      -

      Figure 4 - New executable listed

      -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Importing a Symbian Executable + + + +

    Importing a Symbian Executable

    +

    Use the File > Import > Symbian OS Executable feature to import an executable into the Executables view and debug it. This is useful when the binary is not part of any project in the workspace. An example of this may be a library that is called from an mmp file. The binary must be built with the same build configuration as the current build configuration that is being used (compiler must be the same).

    +

    NOTE You also need the symbolics (.sym) file for debugging ARM build configurations.

    +

    NOTE Binaries built by the project can be debugged by selecting executables to debug in the Executable tab of the launch configuration Debug window.

    +
    +

    To import a Symbian Executable

    +
      +
    1. Select the File > Import... menu item
    2. +

      The Import window appears (Figure 1).

      +

      +

      Figure 1 - Import window

      +
    3. Expand Symbian OS and select Symbian OS Executable in the list, then click Next
    4. +

      The Import Executable window appears (Figure 2).

      +
    5. Enter the executable name in the Select Executable field or click Browse to locate the executable
    6. +

      Use the Select executable field to choose a single executable or Search directory field to select one or more Symbian executables to import from the specified directory.

      +

      +

      Figure 2 - Import Executable window

      +
    7. Click Finish
    8. +

      The IDE imports the Symbian executable and displays it in the Executables view (figure 3).

      +

      +

      Figure 3 - Executables view showing executable and source files

      +

      The new project is listed under the Project Explorer view, as shown in Figure 4.

      +

      +

      Figure 4 - New executable listed

      +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_new_build_config.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_new_build_config.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_new_build_config.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,40 +1,40 @@ - - - - - - -Adding/Removing Build Configurations - - - -

    Adding/Removing Build Configurations

    -

    Use the Properties for <project_name> window to manage the active or build configurations associated with a project. In the Active Configuration group you can select which build configuration is current active as well as choose which build configurations appear in the Build Configurations sub-menu as choices.

    -
    -

    Adding/Removing a Build Configuration

    -
      -
    1. Open Carbide Build Configuration panel in the project's Properties window -

      Select the Project > Properties menu item or right-click the project name in the Project Explorer view, then select Properties. The project Properties for <project_name> window appears. Then select Carbide Build Configurations.

      -

      -

      Figure 1 - Active Configuration group in project Properties window

    2. -
    3. Click Manage... in the Active Configuration group (Figure 1) -

      The Add/Remove Carbide Build Configuration window appears (Figure 2). Use the Add/Remove Carbide Build Configuration window to manage the build configurations that appear on the Build Configurations sub-menu for the current project. You can also click the Manage configurations for the current project icon () on the toolbar to open this dialog.

      -
    4. -
    5. -

      -

      Figure 2 - Window for managing build configurations

      -
    6. -
    -
    -
    Related concepts
    - -
    Related tasks
    - - - - - + + + + + + +Adding/Removing Build Configurations + + + +

    Adding/Removing Build Configurations

    +

    Use the Properties for <project_name> window to manage the active or build configurations associated with a project. In the Active Configuration group you can select which build configuration is current active as well as choose which build configurations appear in the Build Configurations sub-menu as choices.

    +
    +

    Adding/Removing a Build Configuration

    +
      +
    1. Open Carbide Build Configuration panel in the project's Properties window +

      Select the Project > Properties menu item or right-click the project name in the Project Explorer view, then select Properties. The project Properties for <project_name> window appears. Then select Carbide Build Configurations.

      +

      +

      Figure 1 - Active Configuration group in project Properties window

    2. +
    3. Click Manage... in the Active Configuration group (Figure 1) +

      The Add/Remove Carbide Build Configuration window appears (Figure 2). Use the Add/Remove Carbide Build Configuration window to manage the build configurations that appear on the Build Configurations sub-menu for the current project. You can also click the Manage configurations for the current project icon () on the toolbar to open this dialog.

      +
    4. +
    5. +

      +

      Figure 2 - Window for managing build configurations

      +
    6. +
    +
    +
    Related concepts
    + +
    Related tasks
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_preprocess.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_preprocess.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_preprocess.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - - - - - - -Preprocessing Files - - - -

    Preprocessing Files

    -

    In the Project Explorer or Symbian Project Navigator views you can preprocess source files (.c, .cpp, .cia), header files (.h), and resource files (.rss) by right-clicking the source file and then selecting the Preprocess command. Use the Preprocess preference panel to specify the preprocessor settings.

    -

    When preprocessing resource files that use more than one language, the Select Language dialog appears asking you to select the language to preprocess.

    -

    -

    Figure 1 - Selecting a source file to preprocess

    -
    Other references
    - - - - + + + + + + +Preprocessing Files + + + +

    Preprocessing Files

    +

    In the Project Explorer or Symbian Project Navigator views you can preprocess source files (.c, .cpp, .cia), header files (.h), and resource files (.rss) by right-clicking the source file and then selecting the Preprocess command. Use the Preprocess preference panel to specify the preprocessor settings.

    +

    When preprocessing resource files that use more than one language, the Select Language dialog appears asking you to select the language to preprocess.

    +

    +

    Figure 1 - Selecting a source file to preprocess

    +
    Other references
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_set_build_tgt.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_set_build_tgt.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_set_build_tgt.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,64 +1,64 @@ - - - - - - -Setting an Active Configuration - - - -

    Setting an Active Configuration

    -

    If you have more than one build configuration in a project, use the Manage configurations icon on the toolbar or the Build Configuration menu item to select the build target used to create executables. The active build target is indicated by a check mark.

    -
    -

    Setting the Active Configuration

    -
      -
    • From the - toolbar -
        -
      1. Select the project in the Project Explorer or C/C++ Projects view
      2. -
      3. In the toolbar click Manage configurations for the current project control () > configuration_name
      4. -
      -
        -
        -

        Figure 2 - Build Configuration menu

        -
        -
      -
    • -
    • From the Project menu -
        -
      • Click Project > Build Configurations > Set Active > configuration_name
      • -
      -
    • -
      -


      - Figure 2 - Build Configuration menu

      -
      -
    • From the project's context menu -
        -
      • Right-click the project name, click Build Configurations > Set Active > configuration_name
      • -
      -
    • -
    • From the Properties for <project_name> window -
        -
      1. Right-click the project name, select Properties
      2. -
      3. Select Carbide.c++ > Carbide Build Configurations panel
      4. -
      5. Select the active build configuration from the Active Configuration dropdown list
      6. -
      7. Click Apply
      8. -
      -
    • -
    -

    The IDE uses the chosen build configuration as its build target.

    -
    -
    Related concepts
    - -
    Related tasks
    - - - - + + + + + + +Setting an Active Configuration + + + +

    Setting an Active Configuration

    +

    If you have more than one build configuration in a project, use the Manage configurations icon on the toolbar or the Build Configuration menu item to select the build target used to create executables. The active build target is indicated by a check mark.

    +
    +

    Setting the Active Configuration

    +
      +
    • From the + toolbar +
        +
      1. Select the project in the Project Explorer or C/C++ Projects view
      2. +
      3. In the toolbar click Manage configurations for the current project control () > configuration_name
      4. +
      +
        +
        +

        Figure 2 - Build Configuration menu

        +
        +
      +
    • +
    • From the Project menu +
        +
      • Click Project > Build Configurations > Set Active > configuration_name
      • +
      +
    • +
      +


      + Figure 2 - Build Configuration menu

      +
      +
    • From the project's context menu +
        +
      • Right-click the project name, click Build Configurations > Set Active > configuration_name
      • +
      +
    • +
    • From the Properties for <project_name> window +
        +
      1. Right-click the project name, select Properties
      2. +
      3. Select Carbide.c++ > Carbide Build Configurations panel
      4. +
      5. Select the active build configuration from the Active Configuration dropdown list
      6. +
      7. Click Apply
      8. +
      +
    • +
    +

    The IDE uses the chosen build configuration as its build target.

    +
    +
    Related concepts
    + +
    Related tasks
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/working_with_sis_pkg_files.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/working_with_sis_pkg_files.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/working_with_sis_pkg_files.htm Fri Apr 16 11:18:22 2010 -0500 @@ -47,7 +47,7 @@
  • SIS Builder pane
  • SIS Properties
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_changing.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_changing.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_changing.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,41 +1,41 @@ - - - - - - -Changing Register Values - - - -

    Changing Register Values

    -

    You can change register values in the Registers view during program execution in order to examine program behavior.

    -

    NOTE Changing a register value can cause unpredictable behavior in the running program.

    -
    -

    Changing a Register Value

    -
      -
    1. Right-click the value in the Registers view and select Change Value -

      -

      Figure 1 - Right-click register value to change

      -

      The Set Value window appears (Figure 2).

      -

      -

      Figure 2 - Set Value window

      -
    2. -
    3. -

      Enter a new register value

      -
    4. -
    5. Press OK
    6. -

      The register value changes in the Register view

      -
    -
    -
    Other references
    - - - - - + + + + + + +Changing Register Values + + + +

    Changing Register Values

    +

    You can change register values in the Registers view during program execution in order to examine program behavior.

    +

    NOTE Changing a register value can cause unpredictable behavior in the running program.

    +
    +

    Changing a Register Value

    +
      +
    1. Right-click the value in the Registers view and select Change Value +

      +

      Figure 1 - Right-click register value to change

      +

      The Set Value window appears (Figure 2).

      +

      +

      Figure 2 - Set Value window

      +
    2. +
    3. +

      Enter a new register value

      +
    4. +
    5. Press OK
    6. +

      The register value changes in the Register view

      +
    +
    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_data_views.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_data_views.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_data_views.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,42 +1,42 @@ - - - - - - -Changing Register Data Views - - - -

    Changing Register Data Views

    -

    You can change the register data in the Registers view to see register contents in a different format. For example, you can change the view of a register from binary to hexadecimal format.

    -
    -

    To change register data views

    -
      -
    1. Open a Registers view
    2. -
    3. Expand the hierarchical list to view the names and corresponding values of the register
    4. -
    5. Select the register value that you want to view in a different format
    6. -

      The value highlights.

      -
    7. Select Data > View as format, where format is the data format in which you want to view the register value. The register value changes format
    8. -

      Available formats depend on the selected register value.

      -
    9. Select Data > View as Default to restore the original data format
    10. -
    -
    -
    Related concepts
    - -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Changing Register Data Views + + + +

    Changing Register Data Views

    +

    You can change the register data in the Registers view to see register contents in a different format. For example, you can change the view of a register from binary to hexadecimal format.

    +
    +

    To change register data views

    +
      +
    1. Open a Registers view
    2. +
    3. Expand the hierarchical list to view the names and corresponding values of the register
    4. +
    5. Select the register value that you want to view in a different format
    6. +

      The value highlights.

      +
    7. Select Data > View as format, where format is the data format in which you want to view the register value. The register value changes format
    8. +

      Available formats depend on the selected register value.

      +
    9. Select Data > View as Default to restore the original data format
    10. +
    +
    +
    Related concepts
    + +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_open_wnd.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_open_wnd.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_open_wnd.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,33 +1,33 @@ - - - - - - -Opening a Registers View - - - -

    Opening a Registers View

    -

    Open the Registers view to inspect and modify various register contents.

    -

    NOTE When using an emulator, the registers shown are those of the x86 processor on the host machine, not that of the target device.

    -
    -

    To open a Registers view

    -
      -
    • Click Window > Show View > Registers
    • -

      Registers view appears in the current perspective.

      -

      -

      Figure 1 - Registers view

      -
    -
    -
    Other references
    - - - - - + + + + + + +Opening a Registers View + + + +

    Opening a Registers View

    +

    Open the Registers view to inspect and modify various register contents.

    +

    NOTE When using an emulator, the registers shown are those of the x86 processor on the host machine, not that of the target device.

    +
    +

    To open a Registers view

    +
      +
    • Click Window > Show View > Registers
    • +

      Registers view appears in the current perspective.

      +

      +

      Figure 1 - Registers view

      +
    +
    +
    Other references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_viewing.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_viewing.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/registers/mem_reg_viewing.htm Fri Apr 16 11:18:22 2010 -0500 @@ -28,7 +28,7 @@
  • Changing Register Values
  • Registers View
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_add.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_add.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_add.htm Fri Apr 16 11:18:22 2010 -0500 @@ -67,7 +67,7 @@ - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_add_custkits.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_add_custkits.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_add_custkits.htm Fri Apr 16 11:18:22 2010 -0500 @@ -36,7 +36,7 @@
  • Working with SDKs
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_platform_filter.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_platform_filter.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_platform_filter.htm Fri Apr 16 11:18:22 2010 -0500 @@ -103,7 +103,7 @@
  • Working with SDKs
  • SDK Preferences Panel
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_search.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_search.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_search.htm Fri Apr 16 11:18:22 2010 -0500 @@ -30,7 +30,7 @@
  • View SDK Properties
  • SDK Preferences Panel
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_view_properties.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_view_properties.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/sdks/sdk_view_properties.htm Fri Apr 16 11:18:22 2010 -0500 @@ -31,7 +31,7 @@
  • Searching SDKs
  • SDK Preferences Panel
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_deploying.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_deploying.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_deploying.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,47 +1,47 @@ - - - - - - -Deploying Programs - - - -

    Deploying Programs to Devices

    -

    Once you have completed the program and tested it with the emulator, it’s possible to create a new build configuration for your device, build it, then create a .sis file and deploy it to a device.

    -

    To upload a valid .sis file to the target device you need software that communicates with the target device from your PC. Every Symbian phone ships with this connectivity software, which we will refer to generically as Symbian Connect. The actual name for the software is vendor dependent, so refer to your phone’s documentation for the name.

    -

    For example, most phones from Nokia that use Symbian OS come with Nokia PC Suite, which allows you to synchronize and transfer data between your compatible phone and a compatible PC via a compatible data cable or a wireless connection.

    -

    Essentially, the Symbian Connect program provides a method of connecting a PC to the target device via USB, IrDA, Bluetooth, or other serial connection. Once you make a connection, you can upload your .sis file to the target device and install the program.

    -

    NOTE A simple guide is provided to show the basic steps necessary to upload a .sis file to a target device. The actual steps required by the specific Symbian Connect program that ships with the SDK you are using may differ, so always refer to that phone ’s documentation for details.

    -
    -

    Deploying .sis Files

    -
      -
    1. Launch the phone’s Symbian Connect program
    2. -
    3. Select the method of connection
    4. -

      In this step you select the form of the serial connection to use, USB, Irda, Bluetooth, etc.

      -
    5. Select the .sis file to upload
    6. -

      NOTE Double-clicking the .sis file should launch the phone's Symbian Connect software.

      -
    7. Upload the .sis file using the Symbian Connect software
    8. -
    9. Install the program on the target device
    10. -

      To make the program available on the target device, you must install the program - stored in the.sis file. Try double-clicking the .sis file on the phone to install it. If that doesn't work try selecting Install from the phone's menu, - selecting the program name, then clicking Install.

      -
    -
    -

    Congratulations, you’ve now successfully uploaded a .sis file to your -target device.

    -
    Concepts
    - -
    Tasks
    - - - - + + + + + + +Deploying Programs + + + +

    Deploying Programs to Devices

    +

    Once you have completed the program and tested it with the emulator, it’s possible to create a new build configuration for your device, build it, then create a .sis file and deploy it to a device.

    +

    To upload a valid .sis file to the target device you need software that communicates with the target device from your PC. Every Symbian phone ships with this connectivity software, which we will refer to generically as Symbian Connect. The actual name for the software is vendor dependent, so refer to your phone’s documentation for the name.

    +

    For example, most phones from Nokia that use Symbian OS come with Nokia PC Suite, which allows you to synchronize and transfer data between your compatible phone and a compatible PC via a compatible data cable or a wireless connection.

    +

    Essentially, the Symbian Connect program provides a method of connecting a PC to the target device via USB, IrDA, Bluetooth, or other serial connection. Once you make a connection, you can upload your .sis file to the target device and install the program.

    +

    NOTE A simple guide is provided to show the basic steps necessary to upload a .sis file to a target device. The actual steps required by the specific Symbian Connect program that ships with the SDK you are using may differ, so always refer to that phone ’s documentation for details.

    +
    +

    Deploying .sis Files

    +
      +
    1. Launch the phone’s Symbian Connect program
    2. +
    3. Select the method of connection
    4. +

      In this step you select the form of the serial connection to use, USB, Irda, Bluetooth, etc.

      +
    5. Select the .sis file to upload
    6. +

      NOTE Double-clicking the .sis file should launch the phone's Symbian Connect software.

      +
    7. Upload the .sis file using the Symbian Connect software
    8. +
    9. Install the program on the target device
    10. +

      To make the program available on the target device, you must install the program + stored in the.sis file. Try double-clicking the .sis file on the phone to install it. If that doesn't work try selecting Install from the phone's menu, + selecting the program name, then clicking Install.

      +
    +
    +

    Congratulations, you’ve now successfully uploaded a .sis file to your +target device.

    +
    Concepts
    + +
    Tasks
    + + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_example.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_example.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_example.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,24 +1,24 @@ - - - - - - -Application Emulator Debug Example using Templates - - - -

    Application Emulator Debug Example using Templates

    -

    This example shows how to create, build, and debug a program for the emulator called HelloCarbide using Carbide project templates. Once debugged, you can create a new build compiled to run on a target device. If the Carbide.c++ edition you are using supports on-device debugging, then Carbide.c++ deploys the program to the target device automatically. The steps include:

    - -

    Follow the steps to successfully create the HelloCarbide program and debug it on the S60 Emulator.

    -

    NOTE There must be at least one recognized SDK installed before you can create a project. See the SDK Preferences panel to determine if the installed SDKs are recognized by Carbide.c++ IDE. If the SDK you have installed is not recognized, you may still be able to add it to the Discovered Symbian OS SDK list.

    - - - + + + + + + +Application Emulator Debug Example using Templates + + + +

    Application Emulator Debug Example using Templates

    +

    This example shows how to create, build, and debug a program for the emulator called HelloCarbide using Carbide project templates. Once debugged, you can create a new build compiled to run on a target device. If the Carbide.c++ edition you are using supports on-device debugging, then Carbide.c++ deploys the program to the target device automatically. The steps include:

    + +

    Follow the steps to successfully create the HelloCarbide program and debug it on the S60 Emulator.

    +

    NOTE There must be at least one recognized SDK installed before you can create a project. See the SDK Preferences panel to determine if the installed SDKs are recognized by Carbide.c++ IDE. If the SDK you have installed is not recognized, you may still be able to add it to the Discovered Symbian OS SDK list.

    + + + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_example_trk.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_example_trk.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_example_trk.htm Fri Apr 16 11:18:22 2010 -0500 @@ -66,7 +66,7 @@
  • On-device Debugging Troubleshooting
  • Symbian OS View
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_help.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_help.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_help.htm Fri Apr 16 11:18:22 2010 -0500 @@ -25,7 +25,7 @@ - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_overview.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_overview.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_overview.htm Fri Apr 16 11:18:22 2010 -0500 @@ -17,7 +17,7 @@
  • Carbide Help
  • Updating Carbide
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_overview_trk.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_overview_trk.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_overview_trk.htm Fri Apr 16 11:18:22 2010 -0500 @@ -1,45 +1,45 @@ - - - - - - -Run Mode Overview - - - - -

    Run Mode Overview

    -

    This example shows how to create and build an application and debug it on a device using the Application TRK on-device debug agent. Click this link to the HelloCarbide cheatsheet that provides links to detailed steps. The majority of steps are identical to the ones used to create a program and debug in an emulator, with some minor variations.

    -

    See the Run Mode Debug Example for a walkthrough of the following steps which include:

    -
      -
    1. Verify that your SDK or customer kit is recognized in the SDK preferences panel.
    2. -
    3. Create a project by importing a Bld.inf
    4. -
    5. Verify that all the symbolics for the binaries are visible in the Executables view
    6. -
    7. Manage the project's PKG file, being sure to: -
        -
      • Create a PKG file for the application (if using Application TRK)
      • -
      • Include the PKG file as part of the project in the SIS Builder pane of your project Properties
      • -
      • Specify application keys (if not a self-signing application) in the SIS Properties dialog
      • -
      -
    8. -
    9. Build the project using a target for on-device build configuration (GCCE or ARM)
    10. -
    11. Start the TRK on-device debug agent on the device
    12. -
    13. Create a Symbian OS Application TRK launch configuration to provide additional information to the debugger
    14. -
    15. Launch the debugger to interactively control the program on the device
    16. -
    -

    NOTE Carbide will install the SISX file on the device prior to launching the debugger.

    -

    At this point you can open sources files from the Executables view or project view in order to set breakpoints.

    -
    Related tasks
    - -
    Related references
    - - - - - + + + + + + +Run Mode Overview + + + + +

    Run Mode Overview

    +

    This example shows how to create and build an application and debug it on a device using the Application TRK on-device debug agent. Click this link to the HelloCarbide cheatsheet that provides links to detailed steps. The majority of steps are identical to the ones used to create a program and debug in an emulator, with some minor variations.

    +

    See the Run Mode Debug Example for a walkthrough of the following steps which include:

    +
      +
    1. Verify that your SDK or customer kit is recognized in the SDK preferences panel.
    2. +
    3. Create a project by importing a Bld.inf
    4. +
    5. Verify that all the symbolics for the binaries are visible in the Executables view
    6. +
    7. Manage the project's PKG file, being sure to: +
        +
      • Create a PKG file for the application (if using Application TRK)
      • +
      • Include the PKG file as part of the project in the SIS Builder pane of your project Properties
      • +
      • Specify application keys (if not a self-signing application) in the SIS Properties dialog
      • +
      +
    8. +
    9. Build the project using a target for on-device build configuration (GCCE or ARM)
    10. +
    11. Start the TRK on-device debug agent on the device
    12. +
    13. Create a Symbian OS Application TRK launch configuration to provide additional information to the debugger
    14. +
    15. Launch the debugger to interactively control the program on the device
    16. +
    +

    NOTE Carbide will install the SISX file on the device prior to launching the debugger.

    +

    At this point you can open sources files from the Executables view or project view in order to set breakpoints.

    +
    Related tasks
    + +
    Related references
    + + + + + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_updating.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_updating.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/start/carbide_updating.htm Fri Apr 16 11:18:22 2010 -0500 @@ -50,7 +50,7 @@ - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_carbide_setup.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_carbide_setup.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_carbide_setup.htm Fri Apr 16 11:18:22 2010 -0500 @@ -47,6 +47,6 @@
  • Debug Window (On-device Debugging) Overview
  • Creating a Launch Configuration
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_install_bluetooth.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_install_bluetooth.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_install_bluetooth.htm Fri Apr 16 11:18:22 2010 -0500 @@ -47,7 +47,7 @@
  • Connecting via Bluetooth
  • Connecting via USB
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_install_usb.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_install_usb.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_install_usb.htm Fri Apr 16 11:18:22 2010 -0500 @@ -49,7 +49,7 @@
  • Connecting via Bluetooth
  • Connecting via USB
  • - + \ No newline at end of file diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_troubleshooting.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_troubleshooting.htm Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/trk/trk_troubleshooting.htm Fri Apr 16 11:18:22 2010 -0500 @@ -119,7 +119,7 @@
  • In the Carbide tools, open the launch configuration associated with the target device. In the Connections tab make sure you specify the same COM port number as in the device manager. For Bluetooth, if two ports are listed in the device manager, then you need to try to both, to see which one works. For USB, don't select the COM port assigned to the serial port. Always select the COM port assigned to the virtual COM port ID for the phone that is specified in the Device Manager.
  • Make sure the settings in these two dialogs are the same and that the launch configuration settings refer to the right COM port. You shouldn't have to touch the other settings, but they're Data Bits: 8; Parity: None; Stop Bits: 1; Flow Control: None.
  • - + diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SBSv2Utils.java --- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SBSv2Utils.java Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SBSv2Utils.java Fri Apr 16 11:18:22 2010 -0500 @@ -410,4 +410,30 @@ return contexts; } + /** + * If a variant is defined and it changes the output directory, return the directory name. + * For example, armv5_udeb.phone1 would return '.phone1'. If not variant that changes the release tree, then null + * NOTE: This method deals with variant text applied to the end of a build alias, specifically testing for + * variant text defined in the SBSv2 Build Configuration tab. + * @return null if not a variant or the value to append to the platform release tree directory + * @see com.nokia.carbide.cdt.internal.builder.ui#SBSv2BuildConfigTab + */ + public static String getVariantOutputDirModifier(String variantText) { + + String[] ignoredVariants = { "generic", "tracecompiler", "trace", "test", "savespace", + "bfc", "smp", "rvct2_2", "rvct4_0", "rvct3_1", "gcce4_3_2", "remove_freeze" }; + + String newOutputDir = null; + if (variantText != null && variantText.length() > 1){ + String[] variantTok = variantText.split("\\."); + if (variantTok.length > 1){ + for (String ignore : ignoredVariants){ + if (variantTok[1].toLowerCase().equals(ignore)) + return null; + } + newOutputDir = "." + variantTok[1]; + } + } + return newOutputDir; + } } diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContext.java --- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContext.java Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContext.java Fri Apr 16 11:18:22 2010 -0500 @@ -626,12 +626,4 @@ public String getSBSv2Alias() { return sbsv2Alias; } - - public void setSBSv2Alias(String sbsv2Alias) { - this.sbsv2Alias = sbsv2Alias; - } - - public void setDisplayString(String newDisplayName) { - this.displayString = newDisplayName; - } } diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java --- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java Fri Apr 16 11:16:33 2010 -0500 +++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java Fri Apr 16 11:18:22 2010 -0500 @@ -151,7 +151,4 @@ */ public String getSBSv2Alias(); - public void setSBSv2Alias(String newAlias); - - public void setDisplayString(String newDisplayName); } diff -r 2304d1963470 -r a21830a6413e core/com.nokia.carbide.cpp/plugin_customization.ini --- a/core/com.nokia.carbide.cpp/plugin_customization.ini Fri Apr 16 11:16:33 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,269 +0,0 @@ -# WARNING: A VERSION OF THIS FILE FOR S60 DEVELOPMENT EXISTS UNDER internal\core\com.nokia.carbide.cpp\plugin_customization.ini -# IF YOU MAKE CHANGES HERE, THINK ABOUT IF YOU NEED TO MAKE CHANGES THERE TOO (LIKELY YOU WILL) - -# plugin_customization.ini -# sets default values for plug-in-specific preferences -# keys are qualified by plug-in id -# e.g., com.example.acmeplugin/myproperty=myvalue -# java.io.Properties file (ISO 8859-1 with "\" escapes) -# "%key" are externalized strings defined in plugin_customization.properties -# This file does not need to be translated. - -# Property "org.eclipse.ui/defaultPerspectiveId" controls the -# perspective that the workbench opens initially -org.eclipse.ui/defaultPerspectiveId=com.nokia.carbide.cpp.CarbideCppPerspective - -org.eclipse.ui/KEY_CONFIGURATION_ID=com.nokia.carbide.cpp.carbidedefault - -# new-style tabs by default -org.eclipse.ui/SHOW_TRADITIONAL_STYLE_TABS=false - -# put the perspective switcher on the top right -org.eclipse.ui/DOCK_PERSPECTIVE_BAR=topRight - -# show progress on startup -org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP=true - -org.eclipse.debug.ui/org.eclipse.debug.ui.switch_to_perspective=always - -#from org.eclipse.core.resource.ResourcesPlugin -org.eclipse.core.resources/description.autobuilding=false -org.eclipse.core.resources/refresh.enabled=true - -# set the default perspective to crash debugger for crash debugger launch -org.eclipse.debug.ui/org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n\r\n\r\n - -# Carbide Help system customizations -# reset order of Carbide manuals as they should appear in help system -# replaces the org.eclipse.help/baseTOCS setting -org.eclipse.help/HELP_DATA = /com.nokia.carbide.cpp/html/helpDATA.xml - - -# reset base page of help system to our own -org.eclipse.help.base/help_home = /com.nokia.carbide.cpp/html/help_home.html -# org.eclipse.help.base/help_home = http://domino.americas.nokia.com/tp/austin/idesolutions.nsf/document/DA02M6JNMTL - -# enable editor folding but don't fold anything by default -org.eclipse.cdt.ui/editor_folding_enabled=true -org.eclipse.cdt.ui/editor_folding_default_structures=false -org.eclipse.cdt.ui/editor_folding_default_functions=false -org.eclipse.cdt.ui/editor_folding_default_methods=false -org.eclipse.cdt.ui/editor_folding_default_macros=false -org.eclipse.cdt.ui/editor_folding_default_headers=false - -# default class/structs/unions/typedef syntax color (see bug #3527 and #2920) -org.eclipse.cdt.ui/semanticHighlighting.class.color=16,105,239 -org.eclipse.cdt.ui/semanticHighlighting.typedef.color=16,105,239 - -# enable macro reference highlighting like it was in Carbide 1.3.0 (see bug #7776) -org.eclipse.cdt.ui/semanticHighlighting.macroSubstitution.enabled=true -org.eclipse.cdt.ui/semanticHighlighting.macroSubstitution.bold=true -org.eclipse.cdt.ui/semanticHighlighting.macroSubstitution.color=127,0,85 - -# In CDT 5.0 this setting is enabled by default, so we have to disable -# it here. We want it disabled so indexer problem markers are not created. -# We do want some visual indication of indexer issues though so we enable -# syntax coloring for indexer problems. See bug #3314 for more details. -org.eclipse.cdt.ui/handleTemporaryProblems=false -org.eclipse.cdt.ui/semanticHighlighting.problem.enabled=true -org.eclipse.cdt.ui/semanticHighlighting.problem.color=100,100,100 - -# this is a copy of whitesmiths code style with tab length changed from 8 to 4 (bug #3368) -org.eclipse.cdt.ui/formatter_profile=Symbian OS -org.eclipse.cdt.ui/org.eclipse.cdt.ui.formatterprofiles=\r\n\ -\r\n\ -\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\ -\r\n\ -\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\ -\r\n\ -\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\ -\r\n\ -\r\n - -# apply code formatting to C/C++ templates -org.eclipse.cdt.ui/org.eclipse.cdt.ui.text.templates.format=true - -# yuck. the line above sets values for a new formatter profile. this itself is an org.eclipse.cdt.ui pref. but the values -# themselves, e.g. insert_space_before_closing_paren_in_if, are org.eclipse.cdt.core prefs. they are not loaded by CDT at all -# until you open and ok on the code style pref page (see bug #3580). so the only way i can figure out how to fix -# this bug is to set the org.eclipse.cdt.core settings here. note, these values must match the ones from the line above!!! -# there is probably a much cleaner fix in CDT somewhere but I couldn't figure it out. -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_in_empty_block=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.lineSplit=80 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_base_types=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.keep_else_statement_on_same_line=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_switchstatements_compare_to_switch=true -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_base_types=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_body_declarations_compare_to_access_specifier=true -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_template_arguments=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_block=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.use_tabs_only_for_leading_indentations=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_colon_in_case=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_array_initializer=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_expressions_in_array_initializer=48 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_declarator_list=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_bracket=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_prefix_operator=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.tabulation.size=4 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_before_else_in_if_statement=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_enumerator_list=48 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_declarator_list=16 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_empty_lines=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_switchstatements_compare_to_cases=true -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.keep_empty_array_initializer_on_one_line=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.put_empty_statement_on_new_line=true -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_switch=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.brace_position_for_method_declaration=next_line_shifted -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_question_in_conditional=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_semicolon=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_closing_angle_bracket_in_template_arguments=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_colon_in_base_clause=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_breaks_compare_to_cases=true -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_unary_operator=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_declarator_list=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_arguments_in_method_invocation=16 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_while=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_between_empty_brackets=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_bracket=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_parameters_in_method_declaration=16 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.number_of_empty_lines_to_preserve=1 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_semicolon_in_for=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.brace_position_for_block=next_line_shifted -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_colon_in_conditional=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.brace_position_for_type_declaration=next_line_shifted -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_assignment_operator=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_angle_bracket_in_template_arguments=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_expression_list=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_angle_bracket_in_template_parameters=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.continuation_indentation=2 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_expression_list=0 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_template_parameters=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_binary_operator=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_colon_in_default=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_conditional_expression=80 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.format_guardian_clause_on_one_line=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_access_specifier_compare_to_type_header=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.continuation_indentation_for_array_initializer=2 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_semicolon_in_for=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_body_declarations_compare_to_namespace_header=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_closing_brace_in_block=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_assignment_operator=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_compact_if=0 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_template_parameters=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_expression_list=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_question_in_conditional=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_binary_operator=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_before_identifier_in_function_declaration=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_base_clause_in_type_declaration=80 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_declaration_compare_to_template_header=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_unary_operator=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_switch=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_statements_compare_to_body=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indent_statements_compare_to_block=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_template_arguments=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_closing_paren_in_cast=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_angle_bracket_in_template_parameters=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.tabulation.char=mixed -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_angle_bracket_in_template_parameters=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.brace_position_for_block_in_case=next_line_shifted -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.compact_else_if=true -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_postfix_operator=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_colon_in_base_clause=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_after_template_declaration=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.keep_then_statement_on_same_line=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.brace_position_for_switch=next_line_shifted -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_if=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.keep_imple_if_on_one_line=false -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.indentation.size=4 -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.brace_position_for_namespace_declaration=next_line_shifted -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_colon_in_conditional=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_prefix_operator=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_angle_bracket_in_template_arguments=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.brace_position_for_array_initializer=next_line_shifted -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_colon_in_case=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_catch=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_namespace_declaration=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_postfix_operator=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_closing_bracket=do not insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_new_line_before_while_in_do_statement=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_for=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_closing_angle_bracket_in_template_parameters=insert -org.eclipse.cdt.core/org.eclipse.cdt.core.formatter.insert_space_after_opening_angle_bracket_in_template_arguments=do not insert - - -# save before build on by default -org.eclipse.ui.ide/SAVE_ALL_BEFORE_BUILD=true - -# refresh workspace on startup - see bug #4083 -org.eclipse.ui.ide/REFRESH_WORKSPACE_ON_STARTUP=true - -# indexer files to parse up front (comma separated list) -org.eclipse.cdt.core/indexer/filesToParseUpFront=e32base.h - -# universal intro definitions -org.eclipse.ui.intro.universal/INTRO_ROOT_PAGES = overview, whatsnew, tutorials, webresources, migrate -org.eclipse.ui.intro.universal/INTRO_DATA = product:introDATA.xml -org.eclipse.ui.intro/INTRO_THEME = com.nokia.carbide.cpp.carbide - -# can be used for preprocess so we need to make it big! -org.eclipse.cdt.ui/buildConsoleLines=500000 - -# turn off showing source files from binaries, maybe not be needed in CDT 5.0 -org.eclipse.cdt.core/org.eclipse.cdt.core.showSourceFilesInBinaries=false - -# turn off showing source roots at top level of projects -org.eclipse.cdt.core/org.eclipse.cdt.core.showSourceRootsAtTopLevelOfProject=false - -# map C sources and headers to C++ -org.eclipse.cdt.core/org.eclipse.cdt.core.workspaceLanguageMappings= - -# fix bug #7537 -org.eclipse.cdt.ui/removeTrailingWhitespace=false - -# 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 diff -r 2304d1963470 -r a21830a6413e templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/main.cpp --- a/templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/main.cpp Fri Apr 16 11:16:33 2010 -0500 +++ b/templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/main.cpp Fri Apr 16 11:18:22 2010 -0500 @@ -1,32 +1,11 @@ -/**************************************************************************** -** -** Trolltech hereby grants a license to use the Qt/Eclipse Integration -** plug-in (the software contained herein), in binary form, solely for the -** purpose of creating code to be used with Trolltech's Qt software. -** -** Qt Designer is licensed under the terms of the GNU General Public -** License versions 2.0 and 3.0 ("GPL License"). Trolltech offers users the -** right to use certain no GPL licensed software under the terms of its GPL -** Exception version 1.2 (http://trolltech.com/products/qt/gplexception). -** -** THIS SOFTWARE IS PROVIDED BY TROLLTECH AND ITS CONTRIBUTORS (IF ANY) "AS -** IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -** TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -** PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER -** OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -** EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -** PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -** PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -** LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -** NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** Since we now have the GPL exception I think that the "special exception -** is no longer needed. The license text proposed above (other than the -** special exception portion of it) is the BSD license and we have added -** the BSD license as a permissible license under the exception. -** -****************************************************************************/ +/* +============================================================================ + Name : $(baseName).cpp + Author : $(author) + Copyright : $(copyright) + Description : Main Console Application +============================================================================ +*/ #include #include diff -r 2304d1963470 -r a21830a6413e templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/template.properties --- a/templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/template.properties Fri Apr 16 11:16:33 2010 -0500 +++ b/templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/template.properties Fri Apr 16 11:18:22 2010 -0500 @@ -11,3 +11,7 @@ Release UIDs are provided by Symbian. basics.label=Basic Settings basics.desc=Basic properties of a project +basics.author.label=Author: +basics.author.desc=Name of the author +basics.copyright.label=Copyright notice: +basics.copyright.desc=Your copyright notice diff -r 2304d1963470 -r a21830a6413e templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/template.xml --- a/templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/template.xml Fri Apr 16 11:16:33 2010 -0500 +++ b/templates/com.nokia.carbide.cpp.qt.templates/templates/Qt-Console/template.xml Fri Apr 16 11:18:22 2010 -0500 @@ -13,9 +13,24 @@ label="%uid3.label" min="0xe0000000" max="0xefffffff" - mandatory="true"> + mandatory="true" + persist="true"> %uid3.desc + + %basics.author.desc + + + %basics.copyright.desc + + mandatory="true" + persist="true"> %uid3.desc + + %basics.author.desc + + + %basics.copyright.desc + + mandatory="true" + persist="true"> %uid3.desc + + %basics.author.desc + + + %basics.copyright.desc + + mandatory="true" + persist="true"> %uid3.desc + + %basics.author.desc + + + %basics.copyright.desc +